swagger: '2.0'
info:
  title: Cosmos SDK - gRPC Gateway docs
  description: A REST interface for state queries
  version: 1.0.0
paths:
  /cosmos/auth/v1beta1/accounts:
    get:
      summary: Accounts returns all the existing accounts
      description: 'Since: cosmos-sdk 0.43'
      operationId: Accounts
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              accounts:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
                title: accounts are the existing accounts
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QueryAccountsResponse is the response type for the Query/Accounts
              RPC method.


              Since: cosmos-sdk 0.43
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/auth/v1beta1/accounts/{address}:
    get:
      summary: Account returns account details based on address.
      operationId: Account
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              account:
                type: object
                properties:
                  type_url:
                    type: string
                    description: >-
                      A URL/resource name that uniquely identifies the type of
                      the serialized

                      protocol buffer message. This string must contain at least

                      one "/" character. The last segment of the URL's path must
                      represent

                      the fully qualified name of the type (as in

                      `path/google.protobuf.Duration`). The name should be in a
                      canonical form

                      (e.g., leading "." is not accepted).


                      In practice, teams usually precompile into the binary all
                      types that they

                      expect it to use in the context of Any. However, for URLs
                      which use the

                      scheme `http`, `https`, or no scheme, one can optionally
                      set up a type

                      server that maps type URLs to message definitions as
                      follows:


                      * If no scheme is provided, `https` is assumed.

                      * An HTTP GET on the URL must yield a
                      [google.protobuf.Type][]
                        value in binary format, or produce an error.
                      * Applications are allowed to cache lookup results based
                      on the
                        URL, or have them precompiled into a binary to avoid any
                        lookup. Therefore, binary compatibility needs to be preserved
                        on changes to types. (Use versioned type names to manage
                        breaking changes.)

                      Note: this functionality is not currently available in the
                      official

                      protobuf release, and it is not used for type URLs
                      beginning with

                      type.googleapis.com.


                      Schemes other than `http`, `https` (or the empty scheme)
                      might be

                      used with implementation specific semantics.
                  value:
                    type: string
                    format: byte
                    description: >-
                      Must be a valid serialized protocol buffer of the above
                      specified type.
                description: >-
                  `Any` contains an arbitrary serialized protocol buffer message
                  along with a

                  URL that describes the type of the serialized message.


                  Protobuf library provides support to pack/unpack Any values in
                  the form

                  of utility functions or additional generated methods of the
                  Any type.


                  Example 1: Pack and unpack a message in C++.

                      Foo foo = ...;
                      Any any;
                      any.PackFrom(foo);
                      ...
                      if (any.UnpackTo(&foo)) {
                        ...
                      }

                  Example 2: Pack and unpack a message in Java.

                      Foo foo = ...;
                      Any any = Any.pack(foo);
                      ...
                      if (any.is(Foo.class)) {
                        foo = any.unpack(Foo.class);
                      }

                   Example 3: Pack and unpack a message in Python.

                      foo = Foo(...)
                      any = Any()
                      any.Pack(foo)
                      ...
                      if any.Is(Foo.DESCRIPTOR):
                        any.Unpack(foo)
                        ...

                   Example 4: Pack and unpack a message in Go

                       foo := &pb.Foo{...}
                       any, err := ptypes.MarshalAny(foo)
                       ...
                       foo := &pb.Foo{}
                       if err := ptypes.UnmarshalAny(any, foo); err != nil {
                         ...
                       }

                  The pack methods provided by protobuf library will by default
                  use

                  'type.googleapis.com/full.type.name' as the type URL and the
                  unpack

                  methods only use the fully qualified type name after the last
                  '/'

                  in the type URL, for example "foo.bar.com/x/y.z" will yield
                  type

                  name "y.z".



                  JSON

                  ====

                  The JSON representation of an `Any` value uses the regular

                  representation of the deserialized, embedded message, with an

                  additional field `@type` which contains the type URL. Example:

                      package google.profile;
                      message Person {
                        string first_name = 1;
                        string last_name = 2;
                      }

                      {
                        "@type": "type.googleapis.com/google.profile.Person",
                        "firstName": <string>,
                        "lastName": <string>
                      }

                  If the embedded message type is well-known and has a custom
                  JSON

                  representation, that representation will be embedded adding a
                  field

                  `value` which holds the custom JSON in addition to the `@type`

                  field. Example (for message [google.protobuf.Duration][]):

                      {
                        "@type": "type.googleapis.com/google.protobuf.Duration",
                        "value": "1.212s"
                      }
            description: >-
              QueryAccountResponse is the response type for the Query/Account
              RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: address
          description: address defines the address to query for.
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/auth/v1beta1/address_by_id/{id}:
    get:
      summary: AccountAddressByID returns account address based on account number.
      description: 'Since: cosmos-sdk 0.46.2'
      operationId: AccountAddressByID
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              account_address:
                type: string
            description: 'Since: cosmos-sdk 0.46.2'
            title: >-
              QueryAccountAddressByIDResponse is the response type for
              AccountAddressByID rpc method
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: id
          description: |-
            id is the account number of the address to be queried. This field
            should have been an uint64 (like all account numbers), and will be
            updated to uint64 in a future version of the auth query.
          in: path
          required: true
          type: string
          format: int64
      tags:
        - Query
  /cosmos/auth/v1beta1/bech32:
    get:
      summary: Bech32Prefix queries bech32Prefix
      description: 'Since: cosmos-sdk 0.46'
      operationId: Bech32Prefix
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              bech32_prefix:
                type: string
            description: >-
              Bech32PrefixResponse is the response type for Bech32Prefix rpc
              method.


              Since: cosmos-sdk 0.46
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      tags:
        - Query
  /cosmos/auth/v1beta1/bech32/{address_bytes}:
    get:
      summary: AddressBytesToString converts Account Address bytes to string
      description: 'Since: cosmos-sdk 0.46'
      operationId: AddressBytesToString
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              address_string:
                type: string
            description: >-
              AddressBytesToStringResponse is the response type for
              AddressString rpc method.


              Since: cosmos-sdk 0.46
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: address_bytes
          in: path
          required: true
          type: string
          format: byte
      tags:
        - Query
  /cosmos/auth/v1beta1/bech32/{address_string}:
    get:
      summary: AddressStringToBytes converts Address string to bytes
      description: 'Since: cosmos-sdk 0.46'
      operationId: AddressStringToBytes
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              address_bytes:
                type: string
                format: byte
            description: >-
              AddressStringToBytesResponse is the response type for AddressBytes
              rpc method.


              Since: cosmos-sdk 0.46
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: address_string
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/auth/v1beta1/module_accounts:
    get:
      summary: ModuleAccounts returns all the existing module accounts.
      description: 'Since: cosmos-sdk 0.46'
      operationId: ModuleAccounts
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              accounts:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
            description: >-
              QueryModuleAccountsResponse is the response type for the
              Query/ModuleAccounts RPC method.


              Since: cosmos-sdk 0.46
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      tags:
        - Query
  /cosmos/auth/v1beta1/module_accounts/{name}:
    get:
      summary: ModuleAccountByName returns the module account info by module name
      operationId: ModuleAccountByName
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              account:
                type: object
                properties:
                  type_url:
                    type: string
                    description: >-
                      A URL/resource name that uniquely identifies the type of
                      the serialized

                      protocol buffer message. This string must contain at least

                      one "/" character. The last segment of the URL's path must
                      represent

                      the fully qualified name of the type (as in

                      `path/google.protobuf.Duration`). The name should be in a
                      canonical form

                      (e.g., leading "." is not accepted).


                      In practice, teams usually precompile into the binary all
                      types that they

                      expect it to use in the context of Any. However, for URLs
                      which use the

                      scheme `http`, `https`, or no scheme, one can optionally
                      set up a type

                      server that maps type URLs to message definitions as
                      follows:


                      * If no scheme is provided, `https` is assumed.

                      * An HTTP GET on the URL must yield a
                      [google.protobuf.Type][]
                        value in binary format, or produce an error.
                      * Applications are allowed to cache lookup results based
                      on the
                        URL, or have them precompiled into a binary to avoid any
                        lookup. Therefore, binary compatibility needs to be preserved
                        on changes to types. (Use versioned type names to manage
                        breaking changes.)

                      Note: this functionality is not currently available in the
                      official

                      protobuf release, and it is not used for type URLs
                      beginning with

                      type.googleapis.com.


                      Schemes other than `http`, `https` (or the empty scheme)
                      might be

                      used with implementation specific semantics.
                  value:
                    type: string
                    format: byte
                    description: >-
                      Must be a valid serialized protocol buffer of the above
                      specified type.
                description: >-
                  `Any` contains an arbitrary serialized protocol buffer message
                  along with a

                  URL that describes the type of the serialized message.


                  Protobuf library provides support to pack/unpack Any values in
                  the form

                  of utility functions or additional generated methods of the
                  Any type.


                  Example 1: Pack and unpack a message in C++.

                      Foo foo = ...;
                      Any any;
                      any.PackFrom(foo);
                      ...
                      if (any.UnpackTo(&foo)) {
                        ...
                      }

                  Example 2: Pack and unpack a message in Java.

                      Foo foo = ...;
                      Any any = Any.pack(foo);
                      ...
                      if (any.is(Foo.class)) {
                        foo = any.unpack(Foo.class);
                      }

                   Example 3: Pack and unpack a message in Python.

                      foo = Foo(...)
                      any = Any()
                      any.Pack(foo)
                      ...
                      if any.Is(Foo.DESCRIPTOR):
                        any.Unpack(foo)
                        ...

                   Example 4: Pack and unpack a message in Go

                       foo := &pb.Foo{...}
                       any, err := ptypes.MarshalAny(foo)
                       ...
                       foo := &pb.Foo{}
                       if err := ptypes.UnmarshalAny(any, foo); err != nil {
                         ...
                       }

                  The pack methods provided by protobuf library will by default
                  use

                  'type.googleapis.com/full.type.name' as the type URL and the
                  unpack

                  methods only use the fully qualified type name after the last
                  '/'

                  in the type URL, for example "foo.bar.com/x/y.z" will yield
                  type

                  name "y.z".



                  JSON

                  ====

                  The JSON representation of an `Any` value uses the regular

                  representation of the deserialized, embedded message, with an

                  additional field `@type` which contains the type URL. Example:

                      package google.profile;
                      message Person {
                        string first_name = 1;
                        string last_name = 2;
                      }

                      {
                        "@type": "type.googleapis.com/google.profile.Person",
                        "firstName": <string>,
                        "lastName": <string>
                      }

                  If the embedded message type is well-known and has a custom
                  JSON

                  representation, that representation will be embedded adding a
                  field

                  `value` which holds the custom JSON in addition to the `@type`

                  field. Example (for message [google.protobuf.Duration][]):

                      {
                        "@type": "type.googleapis.com/google.protobuf.Duration",
                        "value": "1.212s"
                      }
            description: >-
              QueryModuleAccountByNameResponse is the response type for the
              Query/ModuleAccountByName RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: name
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/auth/v1beta1/params:
    get:
      summary: Params queries all parameters.
      operationId: AuthParams
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              params:
                description: params defines the parameters of the module.
                type: object
                properties:
                  max_memo_characters:
                    type: string
                    format: uint64
                  tx_sig_limit:
                    type: string
                    format: uint64
                  tx_size_cost_per_byte:
                    type: string
                    format: uint64
                  sig_verify_cost_ed25519:
                    type: string
                    format: uint64
                  sig_verify_cost_secp256k1:
                    type: string
                    format: uint64
            description: >-
              QueryParamsResponse is the response type for the Query/Params RPC
              method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      tags:
        - Query
  /cosmos/bank/v1beta1/balances/{address}:
    get:
      summary: AllBalances queries the balance of all coins for a single account.
      operationId: AllBalances
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              balances:
                type: array
                items:
                  type: object
                  properties:
                    denom:
                      type: string
                    amount:
                      type: string
                  description: >-
                    Coin defines a token with a denomination and an amount.


                    NOTE: The amount field is an Int which implements the custom
                    method

                    signatures required by gogoproto.
                description: balances is the balances of all the coins.
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QueryAllBalancesResponse is the response type for the
              Query/AllBalances RPC

              method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      parameters:
        - name: address
          description: address is the address to query balances for.
          in: path
          required: true
          type: string
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/bank/v1beta1/balances/{address}/by_denom:
    get:
      summary: Balance queries the balance of a single coin for a single account.
      operationId: Balance
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              balance:
                type: object
                properties:
                  denom:
                    type: string
                  amount:
                    type: string
                description: >-
                  Coin defines a token with a denomination and an amount.


                  NOTE: The amount field is an Int which implements the custom
                  method

                  signatures required by gogoproto.
            description: >-
              QueryBalanceResponse is the response type for the Query/Balance
              RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      parameters:
        - name: address
          description: address is the address to query balances for.
          in: path
          required: true
          type: string
        - name: denom
          description: denom is the coin denom to query balances for.
          in: query
          required: false
          type: string
      tags:
        - Query
  /cosmos/bank/v1beta1/denom_owners/{denom}:
    get:
      summary: >-
        DenomOwners queries for all account addresses that own a particular
        token

        denomination.
      description: 'Since: cosmos-sdk 0.46'
      operationId: DenomOwners
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              denom_owners:
                type: array
                items:
                  type: object
                  properties:
                    address:
                      type: string
                      description: >-
                        address defines the address that owns a particular
                        denomination.
                    balance:
                      type: object
                      properties:
                        denom:
                          type: string
                        amount:
                          type: string
                      description: >-
                        Coin defines a token with a denomination and an amount.


                        NOTE: The amount field is an Int which implements the
                        custom method

                        signatures required by gogoproto.
                  description: >-
                    DenomOwner defines structure representing an account that
                    owns or holds a

                    particular denominated token. It contains the account
                    address and account

                    balance of the denominated token.


                    Since: cosmos-sdk 0.46
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QueryDenomOwnersResponse defines the RPC response of a DenomOwners
              RPC query.


              Since: cosmos-sdk 0.46
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      parameters:
        - name: denom
          description: >-
            denom defines the coin denomination to query all account holders
            for.
          in: path
          required: true
          type: string
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/bank/v1beta1/denoms_metadata:
    get:
      summary: |-
        DenomsMetadata queries the client metadata for all registered coin
        denominations.
      operationId: DenomsMetadata
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              metadatas:
                type: array
                items:
                  type: object
                  properties:
                    description:
                      type: string
                    denom_units:
                      type: array
                      items:
                        type: object
                        properties:
                          denom:
                            type: string
                            description: >-
                              denom represents the string name of the given
                              denom unit (e.g uatom).
                          exponent:
                            type: integer
                            format: int64
                            description: >-
                              exponent represents power of 10 exponent that one
                              must

                              raise the base_denom to in order to equal the
                              given DenomUnit's denom

                              1 denom = 10^exponent base_denom

                              (e.g. with a base_denom of uatom, one can create a
                              DenomUnit of 'atom' with

                              exponent = 6, thus: 1 atom = 10^6 uatom).
                          aliases:
                            type: array
                            items:
                              type: string
                            title: >-
                              aliases is a list of string aliases for the given
                              denom
                        description: |-
                          DenomUnit represents a struct that describes a given
                          denomination unit of the basic token.
                      title: >-
                        denom_units represents the list of DenomUnit's for a
                        given coin
                    base:
                      type: string
                      description: >-
                        base represents the base denom (should be the DenomUnit
                        with exponent = 0).
                    display:
                      type: string
                      description: |-
                        display indicates the suggested denom that should be
                        displayed in clients.
                    name:
                      type: string
                      description: 'Since: cosmos-sdk 0.43'
                      title: 'name defines the name of the token (eg: Cosmos Atom)'
                    symbol:
                      type: string
                      description: >-
                        symbol is the token symbol usually shown on exchanges
                        (eg: ATOM). This can

                        be the same as the display.


                        Since: cosmos-sdk 0.43
                    uri:
                      type: string
                      description: >-
                        URI to a document (on or off-chain) that contains
                        additional information. Optional.


                        Since: cosmos-sdk 0.46
                    uri_hash:
                      type: string
                      description: >-
                        URIHash is a sha256 hash of a document pointed by URI.
                        It's used to verify that

                        the document didn't change. Optional.


                        Since: cosmos-sdk 0.46
                  description: |-
                    Metadata represents a struct that describes
                    a basic token.
                description: >-
                  metadata provides the client information for all the
                  registered tokens.
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QueryDenomsMetadataResponse is the response type for the
              Query/DenomsMetadata RPC

              method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      parameters:
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/bank/v1beta1/denoms_metadata/{denom}:
    get:
      summary: DenomsMetadata queries the client metadata of a given coin denomination.
      operationId: DenomMetadata
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              metadata:
                type: object
                properties:
                  description:
                    type: string
                  denom_units:
                    type: array
                    items:
                      type: object
                      properties:
                        denom:
                          type: string
                          description: >-
                            denom represents the string name of the given denom
                            unit (e.g uatom).
                        exponent:
                          type: integer
                          format: int64
                          description: >-
                            exponent represents power of 10 exponent that one
                            must

                            raise the base_denom to in order to equal the given
                            DenomUnit's denom

                            1 denom = 10^exponent base_denom

                            (e.g. with a base_denom of uatom, one can create a
                            DenomUnit of 'atom' with

                            exponent = 6, thus: 1 atom = 10^6 uatom).
                        aliases:
                          type: array
                          items:
                            type: string
                          title: >-
                            aliases is a list of string aliases for the given
                            denom
                      description: |-
                        DenomUnit represents a struct that describes a given
                        denomination unit of the basic token.
                    title: >-
                      denom_units represents the list of DenomUnit's for a given
                      coin
                  base:
                    type: string
                    description: >-
                      base represents the base denom (should be the DenomUnit
                      with exponent = 0).
                  display:
                    type: string
                    description: |-
                      display indicates the suggested denom that should be
                      displayed in clients.
                  name:
                    type: string
                    description: 'Since: cosmos-sdk 0.43'
                    title: 'name defines the name of the token (eg: Cosmos Atom)'
                  symbol:
                    type: string
                    description: >-
                      symbol is the token symbol usually shown on exchanges (eg:
                      ATOM). This can

                      be the same as the display.


                      Since: cosmos-sdk 0.43
                  uri:
                    type: string
                    description: >-
                      URI to a document (on or off-chain) that contains
                      additional information. Optional.


                      Since: cosmos-sdk 0.46
                  uri_hash:
                    type: string
                    description: >-
                      URIHash is a sha256 hash of a document pointed by URI.
                      It's used to verify that

                      the document didn't change. Optional.


                      Since: cosmos-sdk 0.46
                description: |-
                  Metadata represents a struct that describes
                  a basic token.
            description: >-
              QueryDenomMetadataResponse is the response type for the
              Query/DenomMetadata RPC

              method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      parameters:
        - name: denom
          description: denom is the coin denom to query the metadata for.
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/bank/v1beta1/params:
    get:
      summary: Params queries the parameters of x/bank module.
      operationId: BankParams
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              params:
                type: object
                properties:
                  send_enabled:
                    type: array
                    items:
                      type: object
                      properties:
                        denom:
                          type: string
                        enabled:
                          type: boolean
                      description: >-
                        SendEnabled maps coin denom to a send_enabled status
                        (whether a denom is

                        sendable).
                  default_send_enabled:
                    type: boolean
                description: Params defines the parameters for the bank module.
            description: >-
              QueryParamsResponse defines the response type for querying x/bank
              parameters.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      tags:
        - Query
  /cosmos/bank/v1beta1/spendable_balances/{address}:
    get:
      summary: |-
        SpendableBalances queries the spenable balance of all coins for a single
        account.
      description: 'Since: cosmos-sdk 0.46'
      operationId: SpendableBalances
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              balances:
                type: array
                items:
                  type: object
                  properties:
                    denom:
                      type: string
                    amount:
                      type: string
                  description: >-
                    Coin defines a token with a denomination and an amount.


                    NOTE: The amount field is an Int which implements the custom
                    method

                    signatures required by gogoproto.
                description: balances is the spendable balances of all the coins.
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QuerySpendableBalancesResponse defines the gRPC response structure
              for querying

              an account's spendable balances.


              Since: cosmos-sdk 0.46
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      parameters:
        - name: address
          description: address is the address to query spendable balances for.
          in: path
          required: true
          type: string
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/bank/v1beta1/supply:
    get:
      summary: TotalSupply queries the total supply of all coins.
      operationId: TotalSupply
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              supply:
                type: array
                items:
                  type: object
                  properties:
                    denom:
                      type: string
                    amount:
                      type: string
                  description: >-
                    Coin defines a token with a denomination and an amount.


                    NOTE: The amount field is an Int which implements the custom
                    method

                    signatures required by gogoproto.
                title: supply is the supply of the coins
              pagination:
                description: |-
                  pagination defines the pagination in the response.

                  Since: cosmos-sdk 0.43
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            title: >-
              QueryTotalSupplyResponse is the response type for the
              Query/TotalSupply RPC

              method
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      parameters:
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/bank/v1beta1/supply/by_denom:
    get:
      summary: SupplyOf queries the supply of a single coin.
      operationId: SupplyOf
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              amount:
                type: object
                properties:
                  denom:
                    type: string
                  amount:
                    type: string
                description: >-
                  Coin defines a token with a denomination and an amount.


                  NOTE: The amount field is an Int which implements the custom
                  method

                  signatures required by gogoproto.
            description: >-
              QuerySupplyOfResponse is the response type for the Query/SupplyOf
              RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      parameters:
        - name: denom
          description: denom is the coin denom to query balances for.
          in: query
          required: false
          type: string
      tags:
        - Query
  /cosmos/base/tendermint/v1beta1/abci_query:
    get:
      summary: >-
        ABCIQuery defines a query handler that supports ABCI queries directly to

        the application, bypassing Tendermint completely. The ABCI query must

        contain a valid and supported path, including app, custom, p2p, and
        store.
      description: 'Since: cosmos-sdk 0.46'
      operationId: ABCIQuery
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              code:
                type: integer
                format: int64
              log:
                type: string
              info:
                type: string
              index:
                type: string
                format: int64
              key:
                type: string
                format: byte
              value:
                type: string
                format: byte
              proof_ops:
                type: object
                properties:
                  ops:
                    type: array
                    items:
                      type: object
                      properties:
                        type:
                          type: string
                        key:
                          type: string
                          format: byte
                        data:
                          type: string
                          format: byte
                      description: >-
                        ProofOp defines an operation used for calculating Merkle
                        root. The data could

                        be arbitrary format, providing nessecary data for
                        example neighbouring node

                        hash.


                        Note: This type is a duplicate of the ProofOp proto type
                        defined in

                        Tendermint.
                description: >-
                  ProofOps is Merkle proof defined by the list of ProofOps.


                  Note: This type is a duplicate of the ProofOps proto type
                  defined in

                  Tendermint.
              height:
                type: string
                format: int64
              codespace:
                type: string
            description: >-
              ABCIQueryResponse defines the response structure for the ABCIQuery
              gRPC

              query.


              Note: This type is a duplicate of the ResponseQuery proto type
              defined in

              Tendermint.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: data
          in: query
          required: false
          type: string
          format: byte
        - name: path
          in: query
          required: false
          type: string
        - name: height
          in: query
          required: false
          type: string
          format: int64
        - name: prove
          in: query
          required: false
          type: boolean
      tags:
        - Service
  /cosmos/base/tendermint/v1beta1/blocks/latest:
    get:
      summary: GetLatestBlock returns the latest block.
      operationId: GetLatestBlock
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              block_id:
                type: object
                properties:
                  hash:
                    type: string
                    format: byte
                  part_set_header:
                    type: object
                    properties:
                      total:
                        type: integer
                        format: int64
                      hash:
                        type: string
                        format: byte
                    title: PartsetHeader
                title: BlockID
              block:
                title: 'Deprecated: please use `sdk_block` instead'
                type: object
                properties:
                  header:
                    type: object
                    properties:
                      version:
                        title: basic block info
                        type: object
                        properties:
                          block:
                            type: string
                            format: uint64
                          app:
                            type: string
                            format: uint64
                        description: >-
                          Consensus captures the consensus rules for processing
                          a block in the blockchain,

                          including all blockchain data structures and the rules
                          of the application's

                          state transition machine.
                      chain_id:
                        type: string
                      height:
                        type: string
                        format: int64
                      time:
                        type: string
                        format: date-time
                      last_block_id:
                        type: object
                        properties:
                          hash:
                            type: string
                            format: byte
                          part_set_header:
                            type: object
                            properties:
                              total:
                                type: integer
                                format: int64
                              hash:
                                type: string
                                format: byte
                            title: PartsetHeader
                        title: BlockID
                      last_commit_hash:
                        type: string
                        format: byte
                        title: hashes of block data
                      data_hash:
                        type: string
                        format: byte
                      validators_hash:
                        type: string
                        format: byte
                        title: hashes from the app output from the prev block
                      next_validators_hash:
                        type: string
                        format: byte
                      consensus_hash:
                        type: string
                        format: byte
                      app_hash:
                        type: string
                        format: byte
                      last_results_hash:
                        type: string
                        format: byte
                      evidence_hash:
                        type: string
                        format: byte
                        title: consensus info
                      proposer_address:
                        type: string
                        format: byte
                    description: Header defines the structure of a Tendermint block header.
                  data:
                    type: object
                    properties:
                      txs:
                        type: array
                        items:
                          type: string
                          format: byte
                        description: >-
                          Txs that will be applied by state @ block.Height+1.

                          NOTE: not all txs here are valid.  We're just agreeing
                          on the order first.

                          This means that block.AppHash does not include these
                          txs.
                    title: >-
                      Data contains the set of transactions included in the
                      block
                  evidence:
                    type: object
                    properties:
                      evidence:
                        type: array
                        items:
                          type: object
                          properties:
                            duplicate_vote_evidence:
                              type: object
                              properties:
                                vote_a:
                                  type: object
                                  properties:
                                    type:
                                      type: string
                                      enum:
                                        - SIGNED_MSG_TYPE_UNKNOWN
                                        - SIGNED_MSG_TYPE_PREVOTE
                                        - SIGNED_MSG_TYPE_PRECOMMIT
                                        - SIGNED_MSG_TYPE_PROPOSAL
                                      default: SIGNED_MSG_TYPE_UNKNOWN
                                      description: >-
                                        SignedMsgType is a type of signed
                                        message in the consensus.

                                         - SIGNED_MSG_TYPE_PREVOTE: Votes
                                         - SIGNED_MSG_TYPE_PROPOSAL: Proposals
                                    height:
                                      type: string
                                      format: int64
                                    round:
                                      type: integer
                                      format: int32
                                    block_id:
                                      type: object
                                      properties:
                                        hash:
                                          type: string
                                          format: byte
                                        part_set_header:
                                          type: object
                                          properties:
                                            total:
                                              type: integer
                                              format: int64
                                            hash:
                                              type: string
                                              format: byte
                                          title: PartsetHeader
                                      title: BlockID
                                    timestamp:
                                      type: string
                                      format: date-time
                                    validator_address:
                                      type: string
                                      format: byte
                                    validator_index:
                                      type: integer
                                      format: int32
                                    signature:
                                      type: string
                                      format: byte
                                  description: >-
                                    Vote represents a prevote, precommit, or
                                    commit vote from validators for

                                    consensus.
                                vote_b:
                                  type: object
                                  properties:
                                    type:
                                      type: string
                                      enum:
                                        - SIGNED_MSG_TYPE_UNKNOWN
                                        - SIGNED_MSG_TYPE_PREVOTE
                                        - SIGNED_MSG_TYPE_PRECOMMIT
                                        - SIGNED_MSG_TYPE_PROPOSAL
                                      default: SIGNED_MSG_TYPE_UNKNOWN
                                      description: >-
                                        SignedMsgType is a type of signed
                                        message in the consensus.

                                         - SIGNED_MSG_TYPE_PREVOTE: Votes
                                         - SIGNED_MSG_TYPE_PROPOSAL: Proposals
                                    height:
                                      type: string
                                      format: int64
                                    round:
                                      type: integer
                                      format: int32
                                    block_id:
                                      type: object
                                      properties:
                                        hash:
                                          type: string
                                          format: byte
                                        part_set_header:
                                          type: object
                                          properties:
                                            total:
                                              type: integer
                                              format: int64
                                            hash:
                                              type: string
                                              format: byte
                                          title: PartsetHeader
                                      title: BlockID
                                    timestamp:
                                      type: string
                                      format: date-time
                                    validator_address:
                                      type: string
                                      format: byte
                                    validator_index:
                                      type: integer
                                      format: int32
                                    signature:
                                      type: string
                                      format: byte
                                  description: >-
                                    Vote represents a prevote, precommit, or
                                    commit vote from validators for

                                    consensus.
                                total_voting_power:
                                  type: string
                                  format: int64
                                validator_power:
                                  type: string
                                  format: int64
                                timestamp:
                                  type: string
                                  format: date-time
                              description: >-
                                DuplicateVoteEvidence contains evidence of a
                                validator signed two conflicting votes.
                            light_client_attack_evidence:
                              type: object
                              properties:
                                conflicting_block:
                                  type: object
                                  properties:
                                    signed_header:
                                      type: object
                                      properties:
                                        header:
                                          type: object
                                          properties:
                                            version:
                                              title: basic block info
                                              type: object
                                              properties:
                                                block:
                                                  type: string
                                                  format: uint64
                                                app:
                                                  type: string
                                                  format: uint64
                                              description: >-
                                                Consensus captures the consensus rules
                                                for processing a block in the
                                                blockchain,

                                                including all blockchain data structures
                                                and the rules of the application's

                                                state transition machine.
                                            chain_id:
                                              type: string
                                            height:
                                              type: string
                                              format: int64
                                            time:
                                              type: string
                                              format: date-time
                                            last_block_id:
                                              type: object
                                              properties:
                                                hash:
                                                  type: string
                                                  format: byte
                                                part_set_header:
                                                  type: object
                                                  properties:
                                                    total:
                                                      type: integer
                                                      format: int64
                                                    hash:
                                                      type: string
                                                      format: byte
                                                  title: PartsetHeader
                                              title: BlockID
                                            last_commit_hash:
                                              type: string
                                              format: byte
                                              title: hashes of block data
                                            data_hash:
                                              type: string
                                              format: byte
                                            validators_hash:
                                              type: string
                                              format: byte
                                              title: >-
                                                hashes from the app output from the prev
                                                block
                                            next_validators_hash:
                                              type: string
                                              format: byte
                                            consensus_hash:
                                              type: string
                                              format: byte
                                            app_hash:
                                              type: string
                                              format: byte
                                            last_results_hash:
                                              type: string
                                              format: byte
                                            evidence_hash:
                                              type: string
                                              format: byte
                                              title: consensus info
                                            proposer_address:
                                              type: string
                                              format: byte
                                          description: >-
                                            Header defines the structure of a
                                            Tendermint block header.
                                        commit:
                                          type: object
                                          properties:
                                            height:
                                              type: string
                                              format: int64
                                            round:
                                              type: integer
                                              format: int32
                                            block_id:
                                              type: object
                                              properties:
                                                hash:
                                                  type: string
                                                  format: byte
                                                part_set_header:
                                                  type: object
                                                  properties:
                                                    total:
                                                      type: integer
                                                      format: int64
                                                    hash:
                                                      type: string
                                                      format: byte
                                                  title: PartsetHeader
                                              title: BlockID
                                            signatures:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  block_id_flag:
                                                    type: string
                                                    enum:
                                                      - BLOCK_ID_FLAG_UNKNOWN
                                                      - BLOCK_ID_FLAG_ABSENT
                                                      - BLOCK_ID_FLAG_COMMIT
                                                      - BLOCK_ID_FLAG_NIL
                                                    default: BLOCK_ID_FLAG_UNKNOWN
                                                    title: >-
                                                      BlockIdFlag indicates which BlcokID the
                                                      signature is for
                                                  validator_address:
                                                    type: string
                                                    format: byte
                                                  timestamp:
                                                    type: string
                                                    format: date-time
                                                  signature:
                                                    type: string
                                                    format: byte
                                                description: >-
                                                  CommitSig is a part of the Vote included
                                                  in a Commit.
                                          description: >-
                                            Commit contains the evidence that a
                                            block was committed by a set of
                                            validators.
                                    validator_set:
                                      type: object
                                      properties:
                                        validators:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              address:
                                                type: string
                                                format: byte
                                              pub_key:
                                                type: object
                                                properties:
                                                  ed25519:
                                                    type: string
                                                    format: byte
                                                  secp256k1:
                                                    type: string
                                                    format: byte
                                                title: >-
                                                  PublicKey defines the keys available for
                                                  use with Tendermint Validators
                                              voting_power:
                                                type: string
                                                format: int64
                                              proposer_priority:
                                                type: string
                                                format: int64
                                        proposer:
                                          type: object
                                          properties:
                                            address:
                                              type: string
                                              format: byte
                                            pub_key:
                                              type: object
                                              properties:
                                                ed25519:
                                                  type: string
                                                  format: byte
                                                secp256k1:
                                                  type: string
                                                  format: byte
                                              title: >-
                                                PublicKey defines the keys available for
                                                use with Tendermint Validators
                                            voting_power:
                                              type: string
                                              format: int64
                                            proposer_priority:
                                              type: string
                                              format: int64
                                        total_voting_power:
                                          type: string
                                          format: int64
                                common_height:
                                  type: string
                                  format: int64
                                byzantine_validators:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      address:
                                        type: string
                                        format: byte
                                      pub_key:
                                        type: object
                                        properties:
                                          ed25519:
                                            type: string
                                            format: byte
                                          secp256k1:
                                            type: string
                                            format: byte
                                        title: >-
                                          PublicKey defines the keys available for
                                          use with Tendermint Validators
                                      voting_power:
                                        type: string
                                        format: int64
                                      proposer_priority:
                                        type: string
                                        format: int64
                                total_voting_power:
                                  type: string
                                  format: int64
                                timestamp:
                                  type: string
                                  format: date-time
                              description: >-
                                LightClientAttackEvidence contains evidence of a
                                set of validators attempting to mislead a light
                                client.
                  last_commit:
                    type: object
                    properties:
                      height:
                        type: string
                        format: int64
                      round:
                        type: integer
                        format: int32
                      block_id:
                        type: object
                        properties:
                          hash:
                            type: string
                            format: byte
                          part_set_header:
                            type: object
                            properties:
                              total:
                                type: integer
                                format: int64
                              hash:
                                type: string
                                format: byte
                            title: PartsetHeader
                        title: BlockID
                      signatures:
                        type: array
                        items:
                          type: object
                          properties:
                            block_id_flag:
                              type: string
                              enum:
                                - BLOCK_ID_FLAG_UNKNOWN
                                - BLOCK_ID_FLAG_ABSENT
                                - BLOCK_ID_FLAG_COMMIT
                                - BLOCK_ID_FLAG_NIL
                              default: BLOCK_ID_FLAG_UNKNOWN
                              title: >-
                                BlockIdFlag indicates which BlcokID the
                                signature is for
                            validator_address:
                              type: string
                              format: byte
                            timestamp:
                              type: string
                              format: date-time
                            signature:
                              type: string
                              format: byte
                          description: >-
                            CommitSig is a part of the Vote included in a
                            Commit.
                    description: >-
                      Commit contains the evidence that a block was committed by
                      a set of validators.
              sdk_block:
                title: 'Since: cosmos-sdk 0.47'
                type: object
                properties:
                  header:
                    type: object
                    properties:
                      version:
                        title: basic block info
                        type: object
                        properties:
                          block:
                            type: string
                            format: uint64
                          app:
                            type: string
                            format: uint64
                        description: >-
                          Consensus captures the consensus rules for processing
                          a block in the blockchain,

                          including all blockchain data structures and the rules
                          of the application's

                          state transition machine.
                      chain_id:
                        type: string
                      height:
                        type: string
                        format: int64
                      time:
                        type: string
                        format: date-time
                      last_block_id:
                        type: object
                        properties:
                          hash:
                            type: string
                            format: byte
                          part_set_header:
                            type: object
                            properties:
                              total:
                                type: integer
                                format: int64
                              hash:
                                type: string
                                format: byte
                            title: PartsetHeader
                        title: BlockID
                      last_commit_hash:
                        type: string
                        format: byte
                        title: hashes of block data
                      data_hash:
                        type: string
                        format: byte
                      validators_hash:
                        type: string
                        format: byte
                        title: hashes from the app output from the prev block
                      next_validators_hash:
                        type: string
                        format: byte
                      consensus_hash:
                        type: string
                        format: byte
                      app_hash:
                        type: string
                        format: byte
                      last_results_hash:
                        type: string
                        format: byte
                      evidence_hash:
                        type: string
                        format: byte
                        title: consensus info
                      proposer_address:
                        type: string
                        description: >-
                          proposer_address is the original block proposer
                          address, formatted as a Bech32 string.

                          In Tendermint, this type is `bytes`, but in the SDK,
                          we convert it to a Bech32 string

                          for better UX.
                    description: Header defines the structure of a Tendermint block header.
                  data:
                    type: object
                    properties:
                      txs:
                        type: array
                        items:
                          type: string
                          format: byte
                        description: >-
                          Txs that will be applied by state @ block.Height+1.

                          NOTE: not all txs here are valid.  We're just agreeing
                          on the order first.

                          This means that block.AppHash does not include these
                          txs.
                    title: >-
                      Data contains the set of transactions included in the
                      block
                  evidence:
                    type: object
                    properties:
                      evidence:
                        type: array
                        items:
                          type: object
                          properties:
                            duplicate_vote_evidence:
                              type: object
                              properties:
                                vote_a:
                                  type: object
                                  properties:
                                    type:
                                      type: string
                                      enum:
                                        - SIGNED_MSG_TYPE_UNKNOWN
                                        - SIGNED_MSG_TYPE_PREVOTE
                                        - SIGNED_MSG_TYPE_PRECOMMIT
                                        - SIGNED_MSG_TYPE_PROPOSAL
                                      default: SIGNED_MSG_TYPE_UNKNOWN
                                      description: >-
                                        SignedMsgType is a type of signed
                                        message in the consensus.

                                         - SIGNED_MSG_TYPE_PREVOTE: Votes
                                         - SIGNED_MSG_TYPE_PROPOSAL: Proposals
                                    height:
                                      type: string
                                      format: int64
                                    round:
                                      type: integer
                                      format: int32
                                    block_id:
                                      type: object
                                      properties:
                                        hash:
                                          type: string
                                          format: byte
                                        part_set_header:
                                          type: object
                                          properties:
                                            total:
                                              type: integer
                                              format: int64
                                            hash:
                                              type: string
                                              format: byte
                                          title: PartsetHeader
                                      title: BlockID
                                    timestamp:
                                      type: string
                                      format: date-time
                                    validator_address:
                                      type: string
                                      format: byte
                                    validator_index:
                                      type: integer
                                      format: int32
                                    signature:
                                      type: string
                                      format: byte
                                  description: >-
                                    Vote represents a prevote, precommit, or
                                    commit vote from validators for

                                    consensus.
                                vote_b:
                                  type: object
                                  properties:
                                    type:
                                      type: string
                                      enum:
                                        - SIGNED_MSG_TYPE_UNKNOWN
                                        - SIGNED_MSG_TYPE_PREVOTE
                                        - SIGNED_MSG_TYPE_PRECOMMIT
                                        - SIGNED_MSG_TYPE_PROPOSAL
                                      default: SIGNED_MSG_TYPE_UNKNOWN
                                      description: >-
                                        SignedMsgType is a type of signed
                                        message in the consensus.

                                         - SIGNED_MSG_TYPE_PREVOTE: Votes
                                         - SIGNED_MSG_TYPE_PROPOSAL: Proposals
                                    height:
                                      type: string
                                      format: int64
                                    round:
                                      type: integer
                                      format: int32
                                    block_id:
                                      type: object
                                      properties:
                                        hash:
                                          type: string
                                          format: byte
                                        part_set_header:
                                          type: object
                                          properties:
                                            total:
                                              type: integer
                                              format: int64
                                            hash:
                                              type: string
                                              format: byte
                                          title: PartsetHeader
                                      title: BlockID
                                    timestamp:
                                      type: string
                                      format: date-time
                                    validator_address:
                                      type: string
                                      format: byte
                                    validator_index:
                                      type: integer
                                      format: int32
                                    signature:
                                      type: string
                                      format: byte
                                  description: >-
                                    Vote represents a prevote, precommit, or
                                    commit vote from validators for

                                    consensus.
                                total_voting_power:
                                  type: string
                                  format: int64
                                validator_power:
                                  type: string
                                  format: int64
                                timestamp:
                                  type: string
                                  format: date-time
                              description: >-
                                DuplicateVoteEvidence contains evidence of a
                                validator signed two conflicting votes.
                            light_client_attack_evidence:
                              type: object
                              properties:
                                conflicting_block:
                                  type: object
                                  properties:
                                    signed_header:
                                      type: object
                                      properties:
                                        header:
                                          type: object
                                          properties:
                                            version:
                                              title: basic block info
                                              type: object
                                              properties:
                                                block:
                                                  type: string
                                                  format: uint64
                                                app:
                                                  type: string
                                                  format: uint64
                                              description: >-
                                                Consensus captures the consensus rules
                                                for processing a block in the
                                                blockchain,

                                                including all blockchain data structures
                                                and the rules of the application's

                                                state transition machine.
                                            chain_id:
                                              type: string
                                            height:
                                              type: string
                                              format: int64
                                            time:
                                              type: string
                                              format: date-time
                                            last_block_id:
                                              type: object
                                              properties:
                                                hash:
                                                  type: string
                                                  format: byte
                                                part_set_header:
                                                  type: object
                                                  properties:
                                                    total:
                                                      type: integer
                                                      format: int64
                                                    hash:
                                                      type: string
                                                      format: byte
                                                  title: PartsetHeader
                                              title: BlockID
                                            last_commit_hash:
                                              type: string
                                              format: byte
                                              title: hashes of block data
                                            data_hash:
                                              type: string
                                              format: byte
                                            validators_hash:
                                              type: string
                                              format: byte
                                              title: >-
                                                hashes from the app output from the prev
                                                block
                                            next_validators_hash:
                                              type: string
                                              format: byte
                                            consensus_hash:
                                              type: string
                                              format: byte
                                            app_hash:
                                              type: string
                                              format: byte
                                            last_results_hash:
                                              type: string
                                              format: byte
                                            evidence_hash:
                                              type: string
                                              format: byte
                                              title: consensus info
                                            proposer_address:
                                              type: string
                                              format: byte
                                          description: >-
                                            Header defines the structure of a
                                            Tendermint block header.
                                        commit:
                                          type: object
                                          properties:
                                            height:
                                              type: string
                                              format: int64
                                            round:
                                              type: integer
                                              format: int32
                                            block_id:
                                              type: object
                                              properties:
                                                hash:
                                                  type: string
                                                  format: byte
                                                part_set_header:
                                                  type: object
                                                  properties:
                                                    total:
                                                      type: integer
                                                      format: int64
                                                    hash:
                                                      type: string
                                                      format: byte
                                                  title: PartsetHeader
                                              title: BlockID
                                            signatures:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  block_id_flag:
                                                    type: string
                                                    enum:
                                                      - BLOCK_ID_FLAG_UNKNOWN
                                                      - BLOCK_ID_FLAG_ABSENT
                                                      - BLOCK_ID_FLAG_COMMIT
                                                      - BLOCK_ID_FLAG_NIL
                                                    default: BLOCK_ID_FLAG_UNKNOWN
                                                    title: >-
                                                      BlockIdFlag indicates which BlcokID the
                                                      signature is for
                                                  validator_address:
                                                    type: string
                                                    format: byte
                                                  timestamp:
                                                    type: string
                                                    format: date-time
                                                  signature:
                                                    type: string
                                                    format: byte
                                                description: >-
                                                  CommitSig is a part of the Vote included
                                                  in a Commit.
                                          description: >-
                                            Commit contains the evidence that a
                                            block was committed by a set of
                                            validators.
                                    validator_set:
                                      type: object
                                      properties:
                                        validators:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              address:
                                                type: string
                                                format: byte
                                              pub_key:
                                                type: object
                                                properties:
                                                  ed25519:
                                                    type: string
                                                    format: byte
                                                  secp256k1:
                                                    type: string
                                                    format: byte
                                                title: >-
                                                  PublicKey defines the keys available for
                                                  use with Tendermint Validators
                                              voting_power:
                                                type: string
                                                format: int64
                                              proposer_priority:
                                                type: string
                                                format: int64
                                        proposer:
                                          type: object
                                          properties:
                                            address:
                                              type: string
                                              format: byte
                                            pub_key:
                                              type: object
                                              properties:
                                                ed25519:
                                                  type: string
                                                  format: byte
                                                secp256k1:
                                                  type: string
                                                  format: byte
                                              title: >-
                                                PublicKey defines the keys available for
                                                use with Tendermint Validators
                                            voting_power:
                                              type: string
                                              format: int64
                                            proposer_priority:
                                              type: string
                                              format: int64
                                        total_voting_power:
                                          type: string
                                          format: int64
                                common_height:
                                  type: string
                                  format: int64
                                byzantine_validators:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      address:
                                        type: string
                                        format: byte
                                      pub_key:
                                        type: object
                                        properties:
                                          ed25519:
                                            type: string
                                            format: byte
                                          secp256k1:
                                            type: string
                                            format: byte
                                        title: >-
                                          PublicKey defines the keys available for
                                          use with Tendermint Validators
                                      voting_power:
                                        type: string
                                        format: int64
                                      proposer_priority:
                                        type: string
                                        format: int64
                                total_voting_power:
                                  type: string
                                  format: int64
                                timestamp:
                                  type: string
                                  format: date-time
                              description: >-
                                LightClientAttackEvidence contains evidence of a
                                set of validators attempting to mislead a light
                                client.
                  last_commit:
                    type: object
                    properties:
                      height:
                        type: string
                        format: int64
                      round:
                        type: integer
                        format: int32
                      block_id:
                        type: object
                        properties:
                          hash:
                            type: string
                            format: byte
                          part_set_header:
                            type: object
                            properties:
                              total:
                                type: integer
                                format: int64
                              hash:
                                type: string
                                format: byte
                            title: PartsetHeader
                        title: BlockID
                      signatures:
                        type: array
                        items:
                          type: object
                          properties:
                            block_id_flag:
                              type: string
                              enum:
                                - BLOCK_ID_FLAG_UNKNOWN
                                - BLOCK_ID_FLAG_ABSENT
                                - BLOCK_ID_FLAG_COMMIT
                                - BLOCK_ID_FLAG_NIL
                              default: BLOCK_ID_FLAG_UNKNOWN
                              title: >-
                                BlockIdFlag indicates which BlcokID the
                                signature is for
                            validator_address:
                              type: string
                              format: byte
                            timestamp:
                              type: string
                              format: date-time
                            signature:
                              type: string
                              format: byte
                          description: >-
                            CommitSig is a part of the Vote included in a
                            Commit.
                    description: >-
                      Commit contains the evidence that a block was committed by
                      a set of validators.
                description: >-
                  Block is tendermint type Block, with the Header proposer
                  address

                  field converted to bech32 string.
            description: >-
              GetLatestBlockResponse is the response type for the
              Query/GetLatestBlock RPC

              method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      tags:
        - Service
  /cosmos/base/tendermint/v1beta1/blocks/{height}:
    get:
      summary: GetBlockByHeight queries block for given height.
      operationId: GetBlockByHeight
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              block_id:
                type: object
                properties:
                  hash:
                    type: string
                    format: byte
                  part_set_header:
                    type: object
                    properties:
                      total:
                        type: integer
                        format: int64
                      hash:
                        type: string
                        format: byte
                    title: PartsetHeader
                title: BlockID
              block:
                title: 'Deprecated: please use `sdk_block` instead'
                type: object
                properties:
                  header:
                    type: object
                    properties:
                      version:
                        title: basic block info
                        type: object
                        properties:
                          block:
                            type: string
                            format: uint64
                          app:
                            type: string
                            format: uint64
                        description: >-
                          Consensus captures the consensus rules for processing
                          a block in the blockchain,

                          including all blockchain data structures and the rules
                          of the application's

                          state transition machine.
                      chain_id:
                        type: string
                      height:
                        type: string
                        format: int64
                      time:
                        type: string
                        format: date-time
                      last_block_id:
                        type: object
                        properties:
                          hash:
                            type: string
                            format: byte
                          part_set_header:
                            type: object
                            properties:
                              total:
                                type: integer
                                format: int64
                              hash:
                                type: string
                                format: byte
                            title: PartsetHeader
                        title: BlockID
                      last_commit_hash:
                        type: string
                        format: byte
                        title: hashes of block data
                      data_hash:
                        type: string
                        format: byte
                      validators_hash:
                        type: string
                        format: byte
                        title: hashes from the app output from the prev block
                      next_validators_hash:
                        type: string
                        format: byte
                      consensus_hash:
                        type: string
                        format: byte
                      app_hash:
                        type: string
                        format: byte
                      last_results_hash:
                        type: string
                        format: byte
                      evidence_hash:
                        type: string
                        format: byte
                        title: consensus info
                      proposer_address:
                        type: string
                        format: byte
                    description: Header defines the structure of a Tendermint block header.
                  data:
                    type: object
                    properties:
                      txs:
                        type: array
                        items:
                          type: string
                          format: byte
                        description: >-
                          Txs that will be applied by state @ block.Height+1.

                          NOTE: not all txs here are valid.  We're just agreeing
                          on the order first.

                          This means that block.AppHash does not include these
                          txs.
                    title: >-
                      Data contains the set of transactions included in the
                      block
                  evidence:
                    type: object
                    properties:
                      evidence:
                        type: array
                        items:
                          type: object
                          properties:
                            duplicate_vote_evidence:
                              type: object
                              properties:
                                vote_a:
                                  type: object
                                  properties:
                                    type:
                                      type: string
                                      enum:
                                        - SIGNED_MSG_TYPE_UNKNOWN
                                        - SIGNED_MSG_TYPE_PREVOTE
                                        - SIGNED_MSG_TYPE_PRECOMMIT
                                        - SIGNED_MSG_TYPE_PROPOSAL
                                      default: SIGNED_MSG_TYPE_UNKNOWN
                                      description: >-
                                        SignedMsgType is a type of signed
                                        message in the consensus.

                                         - SIGNED_MSG_TYPE_PREVOTE: Votes
                                         - SIGNED_MSG_TYPE_PROPOSAL: Proposals
                                    height:
                                      type: string
                                      format: int64
                                    round:
                                      type: integer
                                      format: int32
                                    block_id:
                                      type: object
                                      properties:
                                        hash:
                                          type: string
                                          format: byte
                                        part_set_header:
                                          type: object
                                          properties:
                                            total:
                                              type: integer
                                              format: int64
                                            hash:
                                              type: string
                                              format: byte
                                          title: PartsetHeader
                                      title: BlockID
                                    timestamp:
                                      type: string
                                      format: date-time
                                    validator_address:
                                      type: string
                                      format: byte
                                    validator_index:
                                      type: integer
                                      format: int32
                                    signature:
                                      type: string
                                      format: byte
                                  description: >-
                                    Vote represents a prevote, precommit, or
                                    commit vote from validators for

                                    consensus.
                                vote_b:
                                  type: object
                                  properties:
                                    type:
                                      type: string
                                      enum:
                                        - SIGNED_MSG_TYPE_UNKNOWN
                                        - SIGNED_MSG_TYPE_PREVOTE
                                        - SIGNED_MSG_TYPE_PRECOMMIT
                                        - SIGNED_MSG_TYPE_PROPOSAL
                                      default: SIGNED_MSG_TYPE_UNKNOWN
                                      description: >-
                                        SignedMsgType is a type of signed
                                        message in the consensus.

                                         - SIGNED_MSG_TYPE_PREVOTE: Votes
                                         - SIGNED_MSG_TYPE_PROPOSAL: Proposals
                                    height:
                                      type: string
                                      format: int64
                                    round:
                                      type: integer
                                      format: int32
                                    block_id:
                                      type: object
                                      properties:
                                        hash:
                                          type: string
                                          format: byte
                                        part_set_header:
                                          type: object
                                          properties:
                                            total:
                                              type: integer
                                              format: int64
                                            hash:
                                              type: string
                                              format: byte
                                          title: PartsetHeader
                                      title: BlockID
                                    timestamp:
                                      type: string
                                      format: date-time
                                    validator_address:
                                      type: string
                                      format: byte
                                    validator_index:
                                      type: integer
                                      format: int32
                                    signature:
                                      type: string
                                      format: byte
                                  description: >-
                                    Vote represents a prevote, precommit, or
                                    commit vote from validators for

                                    consensus.
                                total_voting_power:
                                  type: string
                                  format: int64
                                validator_power:
                                  type: string
                                  format: int64
                                timestamp:
                                  type: string
                                  format: date-time
                              description: >-
                                DuplicateVoteEvidence contains evidence of a
                                validator signed two conflicting votes.
                            light_client_attack_evidence:
                              type: object
                              properties:
                                conflicting_block:
                                  type: object
                                  properties:
                                    signed_header:
                                      type: object
                                      properties:
                                        header:
                                          type: object
                                          properties:
                                            version:
                                              title: basic block info
                                              type: object
                                              properties:
                                                block:
                                                  type: string
                                                  format: uint64
                                                app:
                                                  type: string
                                                  format: uint64
                                              description: >-
                                                Consensus captures the consensus rules
                                                for processing a block in the
                                                blockchain,

                                                including all blockchain data structures
                                                and the rules of the application's

                                                state transition machine.
                                            chain_id:
                                              type: string
                                            height:
                                              type: string
                                              format: int64
                                            time:
                                              type: string
                                              format: date-time
                                            last_block_id:
                                              type: object
                                              properties:
                                                hash:
                                                  type: string
                                                  format: byte
                                                part_set_header:
                                                  type: object
                                                  properties:
                                                    total:
                                                      type: integer
                                                      format: int64
                                                    hash:
                                                      type: string
                                                      format: byte
                                                  title: PartsetHeader
                                              title: BlockID
                                            last_commit_hash:
                                              type: string
                                              format: byte
                                              title: hashes of block data
                                            data_hash:
                                              type: string
                                              format: byte
                                            validators_hash:
                                              type: string
                                              format: byte
                                              title: >-
                                                hashes from the app output from the prev
                                                block
                                            next_validators_hash:
                                              type: string
                                              format: byte
                                            consensus_hash:
                                              type: string
                                              format: byte
                                            app_hash:
                                              type: string
                                              format: byte
                                            last_results_hash:
                                              type: string
                                              format: byte
                                            evidence_hash:
                                              type: string
                                              format: byte
                                              title: consensus info
                                            proposer_address:
                                              type: string
                                              format: byte
                                          description: >-
                                            Header defines the structure of a
                                            Tendermint block header.
                                        commit:
                                          type: object
                                          properties:
                                            height:
                                              type: string
                                              format: int64
                                            round:
                                              type: integer
                                              format: int32
                                            block_id:
                                              type: object
                                              properties:
                                                hash:
                                                  type: string
                                                  format: byte
                                                part_set_header:
                                                  type: object
                                                  properties:
                                                    total:
                                                      type: integer
                                                      format: int64
                                                    hash:
                                                      type: string
                                                      format: byte
                                                  title: PartsetHeader
                                              title: BlockID
                                            signatures:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  block_id_flag:
                                                    type: string
                                                    enum:
                                                      - BLOCK_ID_FLAG_UNKNOWN
                                                      - BLOCK_ID_FLAG_ABSENT
                                                      - BLOCK_ID_FLAG_COMMIT
                                                      - BLOCK_ID_FLAG_NIL
                                                    default: BLOCK_ID_FLAG_UNKNOWN
                                                    title: >-
                                                      BlockIdFlag indicates which BlcokID the
                                                      signature is for
                                                  validator_address:
                                                    type: string
                                                    format: byte
                                                  timestamp:
                                                    type: string
                                                    format: date-time
                                                  signature:
                                                    type: string
                                                    format: byte
                                                description: >-
                                                  CommitSig is a part of the Vote included
                                                  in a Commit.
                                          description: >-
                                            Commit contains the evidence that a
                                            block was committed by a set of
                                            validators.
                                    validator_set:
                                      type: object
                                      properties:
                                        validators:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              address:
                                                type: string
                                                format: byte
                                              pub_key:
                                                type: object
                                                properties:
                                                  ed25519:
                                                    type: string
                                                    format: byte
                                                  secp256k1:
                                                    type: string
                                                    format: byte
                                                title: >-
                                                  PublicKey defines the keys available for
                                                  use with Tendermint Validators
                                              voting_power:
                                                type: string
                                                format: int64
                                              proposer_priority:
                                                type: string
                                                format: int64
                                        proposer:
                                          type: object
                                          properties:
                                            address:
                                              type: string
                                              format: byte
                                            pub_key:
                                              type: object
                                              properties:
                                                ed25519:
                                                  type: string
                                                  format: byte
                                                secp256k1:
                                                  type: string
                                                  format: byte
                                              title: >-
                                                PublicKey defines the keys available for
                                                use with Tendermint Validators
                                            voting_power:
                                              type: string
                                              format: int64
                                            proposer_priority:
                                              type: string
                                              format: int64
                                        total_voting_power:
                                          type: string
                                          format: int64
                                common_height:
                                  type: string
                                  format: int64
                                byzantine_validators:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      address:
                                        type: string
                                        format: byte
                                      pub_key:
                                        type: object
                                        properties:
                                          ed25519:
                                            type: string
                                            format: byte
                                          secp256k1:
                                            type: string
                                            format: byte
                                        title: >-
                                          PublicKey defines the keys available for
                                          use with Tendermint Validators
                                      voting_power:
                                        type: string
                                        format: int64
                                      proposer_priority:
                                        type: string
                                        format: int64
                                total_voting_power:
                                  type: string
                                  format: int64
                                timestamp:
                                  type: string
                                  format: date-time
                              description: >-
                                LightClientAttackEvidence contains evidence of a
                                set of validators attempting to mislead a light
                                client.
                  last_commit:
                    type: object
                    properties:
                      height:
                        type: string
                        format: int64
                      round:
                        type: integer
                        format: int32
                      block_id:
                        type: object
                        properties:
                          hash:
                            type: string
                            format: byte
                          part_set_header:
                            type: object
                            properties:
                              total:
                                type: integer
                                format: int64
                              hash:
                                type: string
                                format: byte
                            title: PartsetHeader
                        title: BlockID
                      signatures:
                        type: array
                        items:
                          type: object
                          properties:
                            block_id_flag:
                              type: string
                              enum:
                                - BLOCK_ID_FLAG_UNKNOWN
                                - BLOCK_ID_FLAG_ABSENT
                                - BLOCK_ID_FLAG_COMMIT
                                - BLOCK_ID_FLAG_NIL
                              default: BLOCK_ID_FLAG_UNKNOWN
                              title: >-
                                BlockIdFlag indicates which BlcokID the
                                signature is for
                            validator_address:
                              type: string
                              format: byte
                            timestamp:
                              type: string
                              format: date-time
                            signature:
                              type: string
                              format: byte
                          description: >-
                            CommitSig is a part of the Vote included in a
                            Commit.
                    description: >-
                      Commit contains the evidence that a block was committed by
                      a set of validators.
              sdk_block:
                title: 'Since: cosmos-sdk 0.47'
                type: object
                properties:
                  header:
                    type: object
                    properties:
                      version:
                        title: basic block info
                        type: object
                        properties:
                          block:
                            type: string
                            format: uint64
                          app:
                            type: string
                            format: uint64
                        description: >-
                          Consensus captures the consensus rules for processing
                          a block in the blockchain,

                          including all blockchain data structures and the rules
                          of the application's

                          state transition machine.
                      chain_id:
                        type: string
                      height:
                        type: string
                        format: int64
                      time:
                        type: string
                        format: date-time
                      last_block_id:
                        type: object
                        properties:
                          hash:
                            type: string
                            format: byte
                          part_set_header:
                            type: object
                            properties:
                              total:
                                type: integer
                                format: int64
                              hash:
                                type: string
                                format: byte
                            title: PartsetHeader
                        title: BlockID
                      last_commit_hash:
                        type: string
                        format: byte
                        title: hashes of block data
                      data_hash:
                        type: string
                        format: byte
                      validators_hash:
                        type: string
                        format: byte
                        title: hashes from the app output from the prev block
                      next_validators_hash:
                        type: string
                        format: byte
                      consensus_hash:
                        type: string
                        format: byte
                      app_hash:
                        type: string
                        format: byte
                      last_results_hash:
                        type: string
                        format: byte
                      evidence_hash:
                        type: string
                        format: byte
                        title: consensus info
                      proposer_address:
                        type: string
                        description: >-
                          proposer_address is the original block proposer
                          address, formatted as a Bech32 string.

                          In Tendermint, this type is `bytes`, but in the SDK,
                          we convert it to a Bech32 string

                          for better UX.
                    description: Header defines the structure of a Tendermint block header.
                  data:
                    type: object
                    properties:
                      txs:
                        type: array
                        items:
                          type: string
                          format: byte
                        description: >-
                          Txs that will be applied by state @ block.Height+1.

                          NOTE: not all txs here are valid.  We're just agreeing
                          on the order first.

                          This means that block.AppHash does not include these
                          txs.
                    title: >-
                      Data contains the set of transactions included in the
                      block
                  evidence:
                    type: object
                    properties:
                      evidence:
                        type: array
                        items:
                          type: object
                          properties:
                            duplicate_vote_evidence:
                              type: object
                              properties:
                                vote_a:
                                  type: object
                                  properties:
                                    type:
                                      type: string
                                      enum:
                                        - SIGNED_MSG_TYPE_UNKNOWN
                                        - SIGNED_MSG_TYPE_PREVOTE
                                        - SIGNED_MSG_TYPE_PRECOMMIT
                                        - SIGNED_MSG_TYPE_PROPOSAL
                                      default: SIGNED_MSG_TYPE_UNKNOWN
                                      description: >-
                                        SignedMsgType is a type of signed
                                        message in the consensus.

                                         - SIGNED_MSG_TYPE_PREVOTE: Votes
                                         - SIGNED_MSG_TYPE_PROPOSAL: Proposals
                                    height:
                                      type: string
                                      format: int64
                                    round:
                                      type: integer
                                      format: int32
                                    block_id:
                                      type: object
                                      properties:
                                        hash:
                                          type: string
                                          format: byte
                                        part_set_header:
                                          type: object
                                          properties:
                                            total:
                                              type: integer
                                              format: int64
                                            hash:
                                              type: string
                                              format: byte
                                          title: PartsetHeader
                                      title: BlockID
                                    timestamp:
                                      type: string
                                      format: date-time
                                    validator_address:
                                      type: string
                                      format: byte
                                    validator_index:
                                      type: integer
                                      format: int32
                                    signature:
                                      type: string
                                      format: byte
                                  description: >-
                                    Vote represents a prevote, precommit, or
                                    commit vote from validators for

                                    consensus.
                                vote_b:
                                  type: object
                                  properties:
                                    type:
                                      type: string
                                      enum:
                                        - SIGNED_MSG_TYPE_UNKNOWN
                                        - SIGNED_MSG_TYPE_PREVOTE
                                        - SIGNED_MSG_TYPE_PRECOMMIT
                                        - SIGNED_MSG_TYPE_PROPOSAL
                                      default: SIGNED_MSG_TYPE_UNKNOWN
                                      description: >-
                                        SignedMsgType is a type of signed
                                        message in the consensus.

                                         - SIGNED_MSG_TYPE_PREVOTE: Votes
                                         - SIGNED_MSG_TYPE_PROPOSAL: Proposals
                                    height:
                                      type: string
                                      format: int64
                                    round:
                                      type: integer
                                      format: int32
                                    block_id:
                                      type: object
                                      properties:
                                        hash:
                                          type: string
                                          format: byte
                                        part_set_header:
                                          type: object
                                          properties:
                                            total:
                                              type: integer
                                              format: int64
                                            hash:
                                              type: string
                                              format: byte
                                          title: PartsetHeader
                                      title: BlockID
                                    timestamp:
                                      type: string
                                      format: date-time
                                    validator_address:
                                      type: string
                                      format: byte
                                    validator_index:
                                      type: integer
                                      format: int32
                                    signature:
                                      type: string
                                      format: byte
                                  description: >-
                                    Vote represents a prevote, precommit, or
                                    commit vote from validators for

                                    consensus.
                                total_voting_power:
                                  type: string
                                  format: int64
                                validator_power:
                                  type: string
                                  format: int64
                                timestamp:
                                  type: string
                                  format: date-time
                              description: >-
                                DuplicateVoteEvidence contains evidence of a
                                validator signed two conflicting votes.
                            light_client_attack_evidence:
                              type: object
                              properties:
                                conflicting_block:
                                  type: object
                                  properties:
                                    signed_header:
                                      type: object
                                      properties:
                                        header:
                                          type: object
                                          properties:
                                            version:
                                              title: basic block info
                                              type: object
                                              properties:
                                                block:
                                                  type: string
                                                  format: uint64
                                                app:
                                                  type: string
                                                  format: uint64
                                              description: >-
                                                Consensus captures the consensus rules
                                                for processing a block in the
                                                blockchain,

                                                including all blockchain data structures
                                                and the rules of the application's

                                                state transition machine.
                                            chain_id:
                                              type: string
                                            height:
                                              type: string
                                              format: int64
                                            time:
                                              type: string
                                              format: date-time
                                            last_block_id:
                                              type: object
                                              properties:
                                                hash:
                                                  type: string
                                                  format: byte
                                                part_set_header:
                                                  type: object
                                                  properties:
                                                    total:
                                                      type: integer
                                                      format: int64
                                                    hash:
                                                      type: string
                                                      format: byte
                                                  title: PartsetHeader
                                              title: BlockID
                                            last_commit_hash:
                                              type: string
                                              format: byte
                                              title: hashes of block data
                                            data_hash:
                                              type: string
                                              format: byte
                                            validators_hash:
                                              type: string
                                              format: byte
                                              title: >-
                                                hashes from the app output from the prev
                                                block
                                            next_validators_hash:
                                              type: string
                                              format: byte
                                            consensus_hash:
                                              type: string
                                              format: byte
                                            app_hash:
                                              type: string
                                              format: byte
                                            last_results_hash:
                                              type: string
                                              format: byte
                                            evidence_hash:
                                              type: string
                                              format: byte
                                              title: consensus info
                                            proposer_address:
                                              type: string
                                              format: byte
                                          description: >-
                                            Header defines the structure of a
                                            Tendermint block header.
                                        commit:
                                          type: object
                                          properties:
                                            height:
                                              type: string
                                              format: int64
                                            round:
                                              type: integer
                                              format: int32
                                            block_id:
                                              type: object
                                              properties:
                                                hash:
                                                  type: string
                                                  format: byte
                                                part_set_header:
                                                  type: object
                                                  properties:
                                                    total:
                                                      type: integer
                                                      format: int64
                                                    hash:
                                                      type: string
                                                      format: byte
                                                  title: PartsetHeader
                                              title: BlockID
                                            signatures:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  block_id_flag:
                                                    type: string
                                                    enum:
                                                      - BLOCK_ID_FLAG_UNKNOWN
                                                      - BLOCK_ID_FLAG_ABSENT
                                                      - BLOCK_ID_FLAG_COMMIT
                                                      - BLOCK_ID_FLAG_NIL
                                                    default: BLOCK_ID_FLAG_UNKNOWN
                                                    title: >-
                                                      BlockIdFlag indicates which BlcokID the
                                                      signature is for
                                                  validator_address:
                                                    type: string
                                                    format: byte
                                                  timestamp:
                                                    type: string
                                                    format: date-time
                                                  signature:
                                                    type: string
                                                    format: byte
                                                description: >-
                                                  CommitSig is a part of the Vote included
                                                  in a Commit.
                                          description: >-
                                            Commit contains the evidence that a
                                            block was committed by a set of
                                            validators.
                                    validator_set:
                                      type: object
                                      properties:
                                        validators:
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              address:
                                                type: string
                                                format: byte
                                              pub_key:
                                                type: object
                                                properties:
                                                  ed25519:
                                                    type: string
                                                    format: byte
                                                  secp256k1:
                                                    type: string
                                                    format: byte
                                                title: >-
                                                  PublicKey defines the keys available for
                                                  use with Tendermint Validators
                                              voting_power:
                                                type: string
                                                format: int64
                                              proposer_priority:
                                                type: string
                                                format: int64
                                        proposer:
                                          type: object
                                          properties:
                                            address:
                                              type: string
                                              format: byte
                                            pub_key:
                                              type: object
                                              properties:
                                                ed25519:
                                                  type: string
                                                  format: byte
                                                secp256k1:
                                                  type: string
                                                  format: byte
                                              title: >-
                                                PublicKey defines the keys available for
                                                use with Tendermint Validators
                                            voting_power:
                                              type: string
                                              format: int64
                                            proposer_priority:
                                              type: string
                                              format: int64
                                        total_voting_power:
                                          type: string
                                          format: int64
                                common_height:
                                  type: string
                                  format: int64
                                byzantine_validators:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      address:
                                        type: string
                                        format: byte
                                      pub_key:
                                        type: object
                                        properties:
                                          ed25519:
                                            type: string
                                            format: byte
                                          secp256k1:
                                            type: string
                                            format: byte
                                        title: >-
                                          PublicKey defines the keys available for
                                          use with Tendermint Validators
                                      voting_power:
                                        type: string
                                        format: int64
                                      proposer_priority:
                                        type: string
                                        format: int64
                                total_voting_power:
                                  type: string
                                  format: int64
                                timestamp:
                                  type: string
                                  format: date-time
                              description: >-
                                LightClientAttackEvidence contains evidence of a
                                set of validators attempting to mislead a light
                                client.
                  last_commit:
                    type: object
                    properties:
                      height:
                        type: string
                        format: int64
                      round:
                        type: integer
                        format: int32
                      block_id:
                        type: object
                        properties:
                          hash:
                            type: string
                            format: byte
                          part_set_header:
                            type: object
                            properties:
                              total:
                                type: integer
                                format: int64
                              hash:
                                type: string
                                format: byte
                            title: PartsetHeader
                        title: BlockID
                      signatures:
                        type: array
                        items:
                          type: object
                          properties:
                            block_id_flag:
                              type: string
                              enum:
                                - BLOCK_ID_FLAG_UNKNOWN
                                - BLOCK_ID_FLAG_ABSENT
                                - BLOCK_ID_FLAG_COMMIT
                                - BLOCK_ID_FLAG_NIL
                              default: BLOCK_ID_FLAG_UNKNOWN
                              title: >-
                                BlockIdFlag indicates which BlcokID the
                                signature is for
                            validator_address:
                              type: string
                              format: byte
                            timestamp:
                              type: string
                              format: date-time
                            signature:
                              type: string
                              format: byte
                          description: >-
                            CommitSig is a part of the Vote included in a
                            Commit.
                    description: >-
                      Commit contains the evidence that a block was committed by
                      a set of validators.
                description: >-
                  Block is tendermint type Block, with the Header proposer
                  address

                  field converted to bech32 string.
            description: >-
              GetBlockByHeightResponse is the response type for the
              Query/GetBlockByHeight

              RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: height
          in: path
          required: true
          type: string
          format: int64
      tags:
        - Service
  /cosmos/base/tendermint/v1beta1/node_info:
    get:
      summary: GetNodeInfo queries the current node info.
      operationId: GetNodeInfo
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              default_node_info:
                type: object
                properties:
                  protocol_version:
                    type: object
                    properties:
                      p2p:
                        type: string
                        format: uint64
                      block:
                        type: string
                        format: uint64
                      app:
                        type: string
                        format: uint64
                  default_node_id:
                    type: string
                  listen_addr:
                    type: string
                  network:
                    type: string
                  version:
                    type: string
                  channels:
                    type: string
                    format: byte
                  moniker:
                    type: string
                  other:
                    type: object
                    properties:
                      tx_index:
                        type: string
                      rpc_address:
                        type: string
              application_version:
                type: object
                properties:
                  name:
                    type: string
                  app_name:
                    type: string
                  version:
                    type: string
                  git_commit:
                    type: string
                  build_tags:
                    type: string
                  go_version:
                    type: string
                  build_deps:
                    type: array
                    items:
                      type: object
                      properties:
                        path:
                          type: string
                          title: module path
                        version:
                          type: string
                          title: module version
                        sum:
                          type: string
                          title: checksum
                      title: Module is the type for VersionInfo
                  cosmos_sdk_version:
                    type: string
                    title: 'Since: cosmos-sdk 0.43'
                description: VersionInfo is the type for the GetNodeInfoResponse message.
            description: >-
              GetNodeInfoResponse is the response type for the Query/GetNodeInfo
              RPC

              method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      tags:
        - Service
  /cosmos/base/tendermint/v1beta1/syncing:
    get:
      summary: GetSyncing queries node syncing.
      operationId: GetSyncing
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              syncing:
                type: boolean
            description: >-
              GetSyncingResponse is the response type for the Query/GetSyncing
              RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      tags:
        - Service
  /cosmos/base/tendermint/v1beta1/validatorsets/latest:
    get:
      summary: GetLatestValidatorSet queries latest validator-set.
      operationId: GetLatestValidatorSet
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              block_height:
                type: string
                format: int64
              validators:
                type: array
                items:
                  type: object
                  properties:
                    address:
                      type: string
                    pub_key:
                      type: object
                      properties:
                        type_url:
                          type: string
                          description: >-
                            A URL/resource name that uniquely identifies the
                            type of the serialized

                            protocol buffer message. This string must contain at
                            least

                            one "/" character. The last segment of the URL's
                            path must represent

                            the fully qualified name of the type (as in

                            `path/google.protobuf.Duration`). The name should be
                            in a canonical form

                            (e.g., leading "." is not accepted).


                            In practice, teams usually precompile into the
                            binary all types that they

                            expect it to use in the context of Any. However, for
                            URLs which use the

                            scheme `http`, `https`, or no scheme, one can
                            optionally set up a type

                            server that maps type URLs to message definitions as
                            follows:


                            * If no scheme is provided, `https` is assumed.

                            * An HTTP GET on the URL must yield a
                            [google.protobuf.Type][]
                              value in binary format, or produce an error.
                            * Applications are allowed to cache lookup results
                            based on the
                              URL, or have them precompiled into a binary to avoid any
                              lookup. Therefore, binary compatibility needs to be preserved
                              on changes to types. (Use versioned type names to manage
                              breaking changes.)

                            Note: this functionality is not currently available
                            in the official

                            protobuf release, and it is not used for type URLs
                            beginning with

                            type.googleapis.com.


                            Schemes other than `http`, `https` (or the empty
                            scheme) might be

                            used with implementation specific semantics.
                        value:
                          type: string
                          format: byte
                          description: >-
                            Must be a valid serialized protocol buffer of the
                            above specified type.
                      description: >-
                        `Any` contains an arbitrary serialized protocol buffer
                        message along with a

                        URL that describes the type of the serialized message.


                        Protobuf library provides support to pack/unpack Any
                        values in the form

                        of utility functions or additional generated methods of
                        the Any type.


                        Example 1: Pack and unpack a message in C++.

                            Foo foo = ...;
                            Any any;
                            any.PackFrom(foo);
                            ...
                            if (any.UnpackTo(&foo)) {
                              ...
                            }

                        Example 2: Pack and unpack a message in Java.

                            Foo foo = ...;
                            Any any = Any.pack(foo);
                            ...
                            if (any.is(Foo.class)) {
                              foo = any.unpack(Foo.class);
                            }

                         Example 3: Pack and unpack a message in Python.

                            foo = Foo(...)
                            any = Any()
                            any.Pack(foo)
                            ...
                            if any.Is(Foo.DESCRIPTOR):
                              any.Unpack(foo)
                              ...

                         Example 4: Pack and unpack a message in Go

                             foo := &pb.Foo{...}
                             any, err := ptypes.MarshalAny(foo)
                             ...
                             foo := &pb.Foo{}
                             if err := ptypes.UnmarshalAny(any, foo); err != nil {
                               ...
                             }

                        The pack methods provided by protobuf library will by
                        default use

                        'type.googleapis.com/full.type.name' as the type URL and
                        the unpack

                        methods only use the fully qualified type name after the
                        last '/'

                        in the type URL, for example "foo.bar.com/x/y.z" will
                        yield type

                        name "y.z".



                        JSON

                        ====

                        The JSON representation of an `Any` value uses the
                        regular

                        representation of the deserialized, embedded message,
                        with an

                        additional field `@type` which contains the type URL.
                        Example:

                            package google.profile;
                            message Person {
                              string first_name = 1;
                              string last_name = 2;
                            }

                            {
                              "@type": "type.googleapis.com/google.profile.Person",
                              "firstName": <string>,
                              "lastName": <string>
                            }

                        If the embedded message type is well-known and has a
                        custom JSON

                        representation, that representation will be embedded
                        adding a field

                        `value` which holds the custom JSON in addition to the
                        `@type`

                        field. Example (for message
                        [google.protobuf.Duration][]):

                            {
                              "@type": "type.googleapis.com/google.protobuf.Duration",
                              "value": "1.212s"
                            }
                    voting_power:
                      type: string
                      format: int64
                    proposer_priority:
                      type: string
                      format: int64
                  description: Validator is the type for the validator-set.
              pagination:
                description: pagination defines an pagination for the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: |-
              GetLatestValidatorSetResponse is the response type for the
              Query/GetValidatorSetByHeight RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Service
  /cosmos/base/tendermint/v1beta1/validatorsets/{height}:
    get:
      summary: GetValidatorSetByHeight queries validator-set at a given height.
      operationId: GetValidatorSetByHeight
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              block_height:
                type: string
                format: int64
              validators:
                type: array
                items:
                  type: object
                  properties:
                    address:
                      type: string
                    pub_key:
                      type: object
                      properties:
                        type_url:
                          type: string
                          description: >-
                            A URL/resource name that uniquely identifies the
                            type of the serialized

                            protocol buffer message. This string must contain at
                            least

                            one "/" character. The last segment of the URL's
                            path must represent

                            the fully qualified name of the type (as in

                            `path/google.protobuf.Duration`). The name should be
                            in a canonical form

                            (e.g., leading "." is not accepted).


                            In practice, teams usually precompile into the
                            binary all types that they

                            expect it to use in the context of Any. However, for
                            URLs which use the

                            scheme `http`, `https`, or no scheme, one can
                            optionally set up a type

                            server that maps type URLs to message definitions as
                            follows:


                            * If no scheme is provided, `https` is assumed.

                            * An HTTP GET on the URL must yield a
                            [google.protobuf.Type][]
                              value in binary format, or produce an error.
                            * Applications are allowed to cache lookup results
                            based on the
                              URL, or have them precompiled into a binary to avoid any
                              lookup. Therefore, binary compatibility needs to be preserved
                              on changes to types. (Use versioned type names to manage
                              breaking changes.)

                            Note: this functionality is not currently available
                            in the official

                            protobuf release, and it is not used for type URLs
                            beginning with

                            type.googleapis.com.


                            Schemes other than `http`, `https` (or the empty
                            scheme) might be

                            used with implementation specific semantics.
                        value:
                          type: string
                          format: byte
                          description: >-
                            Must be a valid serialized protocol buffer of the
                            above specified type.
                      description: >-
                        `Any` contains an arbitrary serialized protocol buffer
                        message along with a

                        URL that describes the type of the serialized message.


                        Protobuf library provides support to pack/unpack Any
                        values in the form

                        of utility functions or additional generated methods of
                        the Any type.


                        Example 1: Pack and unpack a message in C++.

                            Foo foo = ...;
                            Any any;
                            any.PackFrom(foo);
                            ...
                            if (any.UnpackTo(&foo)) {
                              ...
                            }

                        Example 2: Pack and unpack a message in Java.

                            Foo foo = ...;
                            Any any = Any.pack(foo);
                            ...
                            if (any.is(Foo.class)) {
                              foo = any.unpack(Foo.class);
                            }

                         Example 3: Pack and unpack a message in Python.

                            foo = Foo(...)
                            any = Any()
                            any.Pack(foo)
                            ...
                            if any.Is(Foo.DESCRIPTOR):
                              any.Unpack(foo)
                              ...

                         Example 4: Pack and unpack a message in Go

                             foo := &pb.Foo{...}
                             any, err := ptypes.MarshalAny(foo)
                             ...
                             foo := &pb.Foo{}
                             if err := ptypes.UnmarshalAny(any, foo); err != nil {
                               ...
                             }

                        The pack methods provided by protobuf library will by
                        default use

                        'type.googleapis.com/full.type.name' as the type URL and
                        the unpack

                        methods only use the fully qualified type name after the
                        last '/'

                        in the type URL, for example "foo.bar.com/x/y.z" will
                        yield type

                        name "y.z".



                        JSON

                        ====

                        The JSON representation of an `Any` value uses the
                        regular

                        representation of the deserialized, embedded message,
                        with an

                        additional field `@type` which contains the type URL.
                        Example:

                            package google.profile;
                            message Person {
                              string first_name = 1;
                              string last_name = 2;
                            }

                            {
                              "@type": "type.googleapis.com/google.profile.Person",
                              "firstName": <string>,
                              "lastName": <string>
                            }

                        If the embedded message type is well-known and has a
                        custom JSON

                        representation, that representation will be embedded
                        adding a field

                        `value` which holds the custom JSON in addition to the
                        `@type`

                        field. Example (for message
                        [google.protobuf.Duration][]):

                            {
                              "@type": "type.googleapis.com/google.protobuf.Duration",
                              "value": "1.212s"
                            }
                    voting_power:
                      type: string
                      format: int64
                    proposer_priority:
                      type: string
                      format: int64
                  description: Validator is the type for the validator-set.
              pagination:
                description: pagination defines an pagination for the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: |-
              GetValidatorSetByHeightResponse is the response type for the
              Query/GetValidatorSetByHeight RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: height
          in: path
          required: true
          type: string
          format: int64
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Service
  /cosmos/distribution/v1beta1/community_pool:
    get:
      summary: CommunityPool queries the community pool coins.
      operationId: CommunityPool
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              pool:
                type: array
                items:
                  type: object
                  properties:
                    denom:
                      type: string
                    amount:
                      type: string
                  description: >-
                    DecCoin defines a token with a denomination and a decimal
                    amount.


                    NOTE: The amount field is an Dec which implements the custom
                    method

                    signatures required by gogoproto.
                description: pool defines community pool's coins.
            description: >-
              QueryCommunityPoolResponse is the response type for the
              Query/CommunityPool

              RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      tags:
        - Query
  /cosmos/distribution/v1beta1/delegators/{delegator_address}/rewards:
    get:
      summary: |-
        DelegationTotalRewards queries the total rewards accrued by a each
        validator.
      operationId: DelegationTotalRewards
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              rewards:
                type: array
                items:
                  type: object
                  properties:
                    validator_address:
                      type: string
                    reward:
                      type: array
                      items:
                        type: object
                        properties:
                          denom:
                            type: string
                          amount:
                            type: string
                        description: >-
                          DecCoin defines a token with a denomination and a
                          decimal amount.


                          NOTE: The amount field is an Dec which implements the
                          custom method

                          signatures required by gogoproto.
                  description: |-
                    DelegationDelegatorReward represents the properties
                    of a delegator's delegation reward.
                description: rewards defines all the rewards accrued by a delegator.
              total:
                type: array
                items:
                  type: object
                  properties:
                    denom:
                      type: string
                    amount:
                      type: string
                  description: >-
                    DecCoin defines a token with a denomination and a decimal
                    amount.


                    NOTE: The amount field is an Dec which implements the custom
                    method

                    signatures required by gogoproto.
                description: total defines the sum of all the rewards.
            description: |-
              QueryDelegationTotalRewardsResponse is the response type for the
              Query/DelegationTotalRewards RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      parameters:
        - name: delegator_address
          description: delegator_address defines the delegator address to query for.
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/distribution/v1beta1/delegators/{delegator_address}/rewards/{validator_address}:
    get:
      summary: DelegationRewards queries the total rewards accrued by a delegation.
      operationId: DelegationRewards
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              rewards:
                type: array
                items:
                  type: object
                  properties:
                    denom:
                      type: string
                    amount:
                      type: string
                  description: >-
                    DecCoin defines a token with a denomination and a decimal
                    amount.


                    NOTE: The amount field is an Dec which implements the custom
                    method

                    signatures required by gogoproto.
                description: rewards defines the rewards accrued by a delegation.
            description: |-
              QueryDelegationRewardsResponse is the response type for the
              Query/DelegationRewards RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      parameters:
        - name: delegator_address
          description: delegator_address defines the delegator address to query for.
          in: path
          required: true
          type: string
        - name: validator_address
          description: validator_address defines the validator address to query for.
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/distribution/v1beta1/delegators/{delegator_address}/validators:
    get:
      summary: DelegatorValidators queries the validators of a delegator.
      operationId: DelegatorValidators
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              validators:
                type: array
                items:
                  type: string
                description: >-
                  validators defines the validators a delegator is delegating
                  for.
            description: |-
              QueryDelegatorValidatorsResponse is the response type for the
              Query/DelegatorValidators RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      parameters:
        - name: delegator_address
          description: delegator_address defines the delegator address to query for.
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/distribution/v1beta1/delegators/{delegator_address}/withdraw_address:
    get:
      summary: DelegatorWithdrawAddress queries withdraw address of a delegator.
      operationId: DelegatorWithdrawAddress
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              withdraw_address:
                type: string
                description: withdraw_address defines the delegator address to query for.
            description: |-
              QueryDelegatorWithdrawAddressResponse is the response type for the
              Query/DelegatorWithdrawAddress RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      parameters:
        - name: delegator_address
          description: delegator_address defines the delegator address to query for.
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/distribution/v1beta1/params:
    get:
      summary: Params queries params of the distribution module.
      operationId: DistributionParams
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              params:
                description: params defines the parameters of the module.
                type: object
                properties:
                  community_tax:
                    type: string
                  base_proposer_reward:
                    type: string
                  bonus_proposer_reward:
                    type: string
                  withdraw_addr_enabled:
                    type: boolean
            description: >-
              QueryParamsResponse is the response type for the Query/Params RPC
              method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      tags:
        - Query
  /cosmos/distribution/v1beta1/validators/{validator_address}/commission:
    get:
      summary: ValidatorCommission queries accumulated commission for a validator.
      operationId: ValidatorCommission
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              commission:
                description: commission defines the commision the validator received.
                type: object
                properties:
                  commission:
                    type: array
                    items:
                      type: object
                      properties:
                        denom:
                          type: string
                        amount:
                          type: string
                      description: >-
                        DecCoin defines a token with a denomination and a
                        decimal amount.


                        NOTE: The amount field is an Dec which implements the
                        custom method

                        signatures required by gogoproto.
            title: |-
              QueryValidatorCommissionResponse is the response type for the
              Query/ValidatorCommission RPC method
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      parameters:
        - name: validator_address
          description: validator_address defines the validator address to query for.
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/distribution/v1beta1/validators/{validator_address}/outstanding_rewards:
    get:
      summary: ValidatorOutstandingRewards queries rewards of a validator address.
      operationId: ValidatorOutstandingRewards
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              rewards:
                type: object
                properties:
                  rewards:
                    type: array
                    items:
                      type: object
                      properties:
                        denom:
                          type: string
                        amount:
                          type: string
                      description: >-
                        DecCoin defines a token with a denomination and a
                        decimal amount.


                        NOTE: The amount field is an Dec which implements the
                        custom method

                        signatures required by gogoproto.
                description: >-
                  ValidatorOutstandingRewards represents outstanding
                  (un-withdrawn) rewards

                  for a validator inexpensive to track, allows simple sanity
                  checks.
            description: >-
              QueryValidatorOutstandingRewardsResponse is the response type for
              the

              Query/ValidatorOutstandingRewards RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      parameters:
        - name: validator_address
          description: validator_address defines the validator address to query for.
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/distribution/v1beta1/validators/{validator_address}/slashes:
    get:
      summary: ValidatorSlashes queries slash events of a validator.
      operationId: ValidatorSlashes
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              slashes:
                type: array
                items:
                  type: object
                  properties:
                    validator_period:
                      type: string
                      format: uint64
                    fraction:
                      type: string
                  description: >-
                    ValidatorSlashEvent represents a validator slash event.

                    Height is implicit within the store key.

                    This is needed to calculate appropriate amount of staking
                    tokens

                    for delegations which are withdrawn after a slash has
                    occurred.
                description: slashes defines the slashes the validator received.
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: |-
              QueryValidatorSlashesResponse is the response type for the
              Query/ValidatorSlashes RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      parameters:
        - name: validator_address
          description: validator_address defines the validator address to query for.
          in: path
          required: true
          type: string
        - name: starting_height
          description: >-
            starting_height defines the optional starting height to query the
            slashes.
          in: query
          required: false
          type: string
          format: uint64
        - name: ending_height
          description: >-
            starting_height defines the optional ending height to query the
            slashes.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/evidence/v1beta1/evidence:
    get:
      summary: AllEvidence queries all evidence.
      operationId: AllEvidence
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              evidence:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
                description: evidence returns all evidences.
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QueryAllEvidenceResponse is the response type for the
              Query/AllEvidence RPC

              method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/evidence/v1beta1/evidence/{evidence_hash}:
    get:
      summary: Evidence queries evidence based on evidence hash.
      operationId: Evidence
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              evidence:
                type: object
                properties:
                  type_url:
                    type: string
                    description: >-
                      A URL/resource name that uniquely identifies the type of
                      the serialized

                      protocol buffer message. This string must contain at least

                      one "/" character. The last segment of the URL's path must
                      represent

                      the fully qualified name of the type (as in

                      `path/google.protobuf.Duration`). The name should be in a
                      canonical form

                      (e.g., leading "." is not accepted).


                      In practice, teams usually precompile into the binary all
                      types that they

                      expect it to use in the context of Any. However, for URLs
                      which use the

                      scheme `http`, `https`, or no scheme, one can optionally
                      set up a type

                      server that maps type URLs to message definitions as
                      follows:


                      * If no scheme is provided, `https` is assumed.

                      * An HTTP GET on the URL must yield a
                      [google.protobuf.Type][]
                        value in binary format, or produce an error.
                      * Applications are allowed to cache lookup results based
                      on the
                        URL, or have them precompiled into a binary to avoid any
                        lookup. Therefore, binary compatibility needs to be preserved
                        on changes to types. (Use versioned type names to manage
                        breaking changes.)

                      Note: this functionality is not currently available in the
                      official

                      protobuf release, and it is not used for type URLs
                      beginning with

                      type.googleapis.com.


                      Schemes other than `http`, `https` (or the empty scheme)
                      might be

                      used with implementation specific semantics.
                  value:
                    type: string
                    format: byte
                    description: >-
                      Must be a valid serialized protocol buffer of the above
                      specified type.
                description: >-
                  `Any` contains an arbitrary serialized protocol buffer message
                  along with a

                  URL that describes the type of the serialized message.


                  Protobuf library provides support to pack/unpack Any values in
                  the form

                  of utility functions or additional generated methods of the
                  Any type.


                  Example 1: Pack and unpack a message in C++.

                      Foo foo = ...;
                      Any any;
                      any.PackFrom(foo);
                      ...
                      if (any.UnpackTo(&foo)) {
                        ...
                      }

                  Example 2: Pack and unpack a message in Java.

                      Foo foo = ...;
                      Any any = Any.pack(foo);
                      ...
                      if (any.is(Foo.class)) {
                        foo = any.unpack(Foo.class);
                      }

                   Example 3: Pack and unpack a message in Python.

                      foo = Foo(...)
                      any = Any()
                      any.Pack(foo)
                      ...
                      if any.Is(Foo.DESCRIPTOR):
                        any.Unpack(foo)
                        ...

                   Example 4: Pack and unpack a message in Go

                       foo := &pb.Foo{...}
                       any, err := ptypes.MarshalAny(foo)
                       ...
                       foo := &pb.Foo{}
                       if err := ptypes.UnmarshalAny(any, foo); err != nil {
                         ...
                       }

                  The pack methods provided by protobuf library will by default
                  use

                  'type.googleapis.com/full.type.name' as the type URL and the
                  unpack

                  methods only use the fully qualified type name after the last
                  '/'

                  in the type URL, for example "foo.bar.com/x/y.z" will yield
                  type

                  name "y.z".



                  JSON

                  ====

                  The JSON representation of an `Any` value uses the regular

                  representation of the deserialized, embedded message, with an

                  additional field `@type` which contains the type URL. Example:

                      package google.profile;
                      message Person {
                        string first_name = 1;
                        string last_name = 2;
                      }

                      {
                        "@type": "type.googleapis.com/google.profile.Person",
                        "firstName": <string>,
                        "lastName": <string>
                      }

                  If the embedded message type is well-known and has a custom
                  JSON

                  representation, that representation will be embedded adding a
                  field

                  `value` which holds the custom JSON in addition to the `@type`

                  field. Example (for message [google.protobuf.Duration][]):

                      {
                        "@type": "type.googleapis.com/google.protobuf.Duration",
                        "value": "1.212s"
                      }
            description: >-
              QueryEvidenceResponse is the response type for the Query/Evidence
              RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: evidence_hash
          description: evidence_hash defines the hash of the requested evidence.
          in: path
          required: true
          type: string
          format: byte
      tags:
        - Query
  /cosmos/gov/v1beta1/params/{params_type}:
    get:
      summary: Params queries all parameters of the gov module.
      operationId: GovParams
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              voting_params:
                description: voting_params defines the parameters related to voting.
                type: object
                properties:
                  voting_period:
                    type: string
                    description: Length of the voting period.
              deposit_params:
                description: deposit_params defines the parameters related to deposit.
                type: object
                properties:
                  min_deposit:
                    type: array
                    items:
                      type: object
                      properties:
                        denom:
                          type: string
                        amount:
                          type: string
                      description: >-
                        Coin defines a token with a denomination and an amount.


                        NOTE: The amount field is an Int which implements the
                        custom method

                        signatures required by gogoproto.
                    description: Minimum deposit for a proposal to enter voting period.
                  max_deposit_period:
                    type: string
                    description: >-
                      Maximum period for Atom holders to deposit on a proposal.
                      Initial value: 2
                       months.
              tally_params:
                description: tally_params defines the parameters related to tally.
                type: object
                properties:
                  quorum:
                    type: string
                    format: byte
                    description: >-
                      Minimum percentage of total stake needed to vote for a
                      result to be
                       considered valid.
                  threshold:
                    type: string
                    format: byte
                    description: >-
                      Minimum proportion of Yes votes for proposal to pass.
                      Default value: 0.5.
                  veto_threshold:
                    type: string
                    format: byte
                    description: >-
                      Minimum value of Veto votes to Total votes ratio for
                      proposal to be
                       vetoed. Default value: 1/3.
            description: >-
              QueryParamsResponse is the response type for the Query/Params RPC
              method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: params_type
          description: >-
            params_type defines which parameters to query for, can be one of
            "voting",

            "tallying" or "deposit".
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/gov/v1beta1/proposals:
    get:
      summary: Proposals queries all proposals based on given status.
      operationId: Proposals
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              proposals:
                type: array
                items:
                  type: object
                  properties:
                    proposal_id:
                      type: string
                      format: uint64
                    content:
                      type: object
                      properties:
                        type_url:
                          type: string
                          description: >-
                            A URL/resource name that uniquely identifies the
                            type of the serialized

                            protocol buffer message. This string must contain at
                            least

                            one "/" character. The last segment of the URL's
                            path must represent

                            the fully qualified name of the type (as in

                            `path/google.protobuf.Duration`). The name should be
                            in a canonical form

                            (e.g., leading "." is not accepted).


                            In practice, teams usually precompile into the
                            binary all types that they

                            expect it to use in the context of Any. However, for
                            URLs which use the

                            scheme `http`, `https`, or no scheme, one can
                            optionally set up a type

                            server that maps type URLs to message definitions as
                            follows:


                            * If no scheme is provided, `https` is assumed.

                            * An HTTP GET on the URL must yield a
                            [google.protobuf.Type][]
                              value in binary format, or produce an error.
                            * Applications are allowed to cache lookup results
                            based on the
                              URL, or have them precompiled into a binary to avoid any
                              lookup. Therefore, binary compatibility needs to be preserved
                              on changes to types. (Use versioned type names to manage
                              breaking changes.)

                            Note: this functionality is not currently available
                            in the official

                            protobuf release, and it is not used for type URLs
                            beginning with

                            type.googleapis.com.


                            Schemes other than `http`, `https` (or the empty
                            scheme) might be

                            used with implementation specific semantics.
                        value:
                          type: string
                          format: byte
                          description: >-
                            Must be a valid serialized protocol buffer of the
                            above specified type.
                      description: >-
                        `Any` contains an arbitrary serialized protocol buffer
                        message along with a

                        URL that describes the type of the serialized message.


                        Protobuf library provides support to pack/unpack Any
                        values in the form

                        of utility functions or additional generated methods of
                        the Any type.


                        Example 1: Pack and unpack a message in C++.

                            Foo foo = ...;
                            Any any;
                            any.PackFrom(foo);
                            ...
                            if (any.UnpackTo(&foo)) {
                              ...
                            }

                        Example 2: Pack and unpack a message in Java.

                            Foo foo = ...;
                            Any any = Any.pack(foo);
                            ...
                            if (any.is(Foo.class)) {
                              foo = any.unpack(Foo.class);
                            }

                         Example 3: Pack and unpack a message in Python.

                            foo = Foo(...)
                            any = Any()
                            any.Pack(foo)
                            ...
                            if any.Is(Foo.DESCRIPTOR):
                              any.Unpack(foo)
                              ...

                         Example 4: Pack and unpack a message in Go

                             foo := &pb.Foo{...}
                             any, err := ptypes.MarshalAny(foo)
                             ...
                             foo := &pb.Foo{}
                             if err := ptypes.UnmarshalAny(any, foo); err != nil {
                               ...
                             }

                        The pack methods provided by protobuf library will by
                        default use

                        'type.googleapis.com/full.type.name' as the type URL and
                        the unpack

                        methods only use the fully qualified type name after the
                        last '/'

                        in the type URL, for example "foo.bar.com/x/y.z" will
                        yield type

                        name "y.z".



                        JSON

                        ====

                        The JSON representation of an `Any` value uses the
                        regular

                        representation of the deserialized, embedded message,
                        with an

                        additional field `@type` which contains the type URL.
                        Example:

                            package google.profile;
                            message Person {
                              string first_name = 1;
                              string last_name = 2;
                            }

                            {
                              "@type": "type.googleapis.com/google.profile.Person",
                              "firstName": <string>,
                              "lastName": <string>
                            }

                        If the embedded message type is well-known and has a
                        custom JSON

                        representation, that representation will be embedded
                        adding a field

                        `value` which holds the custom JSON in addition to the
                        `@type`

                        field. Example (for message
                        [google.protobuf.Duration][]):

                            {
                              "@type": "type.googleapis.com/google.protobuf.Duration",
                              "value": "1.212s"
                            }
                    status:
                      type: string
                      enum:
                        - PROPOSAL_STATUS_UNSPECIFIED
                        - PROPOSAL_STATUS_DEPOSIT_PERIOD
                        - PROPOSAL_STATUS_VOTING_PERIOD
                        - PROPOSAL_STATUS_PASSED
                        - PROPOSAL_STATUS_REJECTED
                        - PROPOSAL_STATUS_FAILED
                      default: PROPOSAL_STATUS_UNSPECIFIED
                      description: >-
                        ProposalStatus enumerates the valid statuses of a
                        proposal.

                         - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.
                         - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit
                        period.
                         - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting
                        period.
                         - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has
                        passed.
                         - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has
                        been rejected.
                         - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has
                        failed.
                    final_tally_result:
                      description: >-
                        final_tally_result is the final tally result of the
                        proposal. When

                        querying a proposal via gRPC, this field is not
                        populated until the

                        proposal's voting period has ended.
                      type: object
                      properties:
                        'yes':
                          type: string
                        abstain:
                          type: string
                        'no':
                          type: string
                        no_with_veto:
                          type: string
                    submit_time:
                      type: string
                      format: date-time
                    deposit_end_time:
                      type: string
                      format: date-time
                    total_deposit:
                      type: array
                      items:
                        type: object
                        properties:
                          denom:
                            type: string
                          amount:
                            type: string
                        description: >-
                          Coin defines a token with a denomination and an
                          amount.


                          NOTE: The amount field is an Int which implements the
                          custom method

                          signatures required by gogoproto.
                    voting_start_time:
                      type: string
                      format: date-time
                    voting_end_time:
                      type: string
                      format: date-time
                  description: >-
                    Proposal defines the core field members of a governance
                    proposal.
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QueryProposalsResponse is the response type for the
              Query/Proposals RPC

              method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: proposal_status
          description: |-
            proposal_status defines the status of the proposals.

             - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.
             - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit
            period.
             - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting
            period.
             - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has
            passed.
             - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has
            been rejected.
             - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has
            failed.
          in: query
          required: false
          type: string
          enum:
            - PROPOSAL_STATUS_UNSPECIFIED
            - PROPOSAL_STATUS_DEPOSIT_PERIOD
            - PROPOSAL_STATUS_VOTING_PERIOD
            - PROPOSAL_STATUS_PASSED
            - PROPOSAL_STATUS_REJECTED
            - PROPOSAL_STATUS_FAILED
          default: PROPOSAL_STATUS_UNSPECIFIED
        - name: voter
          description: voter defines the voter address for the proposals.
          in: query
          required: false
          type: string
        - name: depositor
          description: depositor defines the deposit addresses from the proposals.
          in: query
          required: false
          type: string
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/gov/v1beta1/proposals/{proposal_id}:
    get:
      summary: Proposal queries proposal details based on ProposalID.
      operationId: Proposal
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              proposal:
                type: object
                properties:
                  proposal_id:
                    type: string
                    format: uint64
                  content:
                    type: object
                    properties:
                      type_url:
                        type: string
                        description: >-
                          A URL/resource name that uniquely identifies the type
                          of the serialized

                          protocol buffer message. This string must contain at
                          least

                          one "/" character. The last segment of the URL's path
                          must represent

                          the fully qualified name of the type (as in

                          `path/google.protobuf.Duration`). The name should be
                          in a canonical form

                          (e.g., leading "." is not accepted).


                          In practice, teams usually precompile into the binary
                          all types that they

                          expect it to use in the context of Any. However, for
                          URLs which use the

                          scheme `http`, `https`, or no scheme, one can
                          optionally set up a type

                          server that maps type URLs to message definitions as
                          follows:


                          * If no scheme is provided, `https` is assumed.

                          * An HTTP GET on the URL must yield a
                          [google.protobuf.Type][]
                            value in binary format, or produce an error.
                          * Applications are allowed to cache lookup results
                          based on the
                            URL, or have them precompiled into a binary to avoid any
                            lookup. Therefore, binary compatibility needs to be preserved
                            on changes to types. (Use versioned type names to manage
                            breaking changes.)

                          Note: this functionality is not currently available in
                          the official

                          protobuf release, and it is not used for type URLs
                          beginning with

                          type.googleapis.com.


                          Schemes other than `http`, `https` (or the empty
                          scheme) might be

                          used with implementation specific semantics.
                      value:
                        type: string
                        format: byte
                        description: >-
                          Must be a valid serialized protocol buffer of the
                          above specified type.
                    description: >-
                      `Any` contains an arbitrary serialized protocol buffer
                      message along with a

                      URL that describes the type of the serialized message.


                      Protobuf library provides support to pack/unpack Any
                      values in the form

                      of utility functions or additional generated methods of
                      the Any type.


                      Example 1: Pack and unpack a message in C++.

                          Foo foo = ...;
                          Any any;
                          any.PackFrom(foo);
                          ...
                          if (any.UnpackTo(&foo)) {
                            ...
                          }

                      Example 2: Pack and unpack a message in Java.

                          Foo foo = ...;
                          Any any = Any.pack(foo);
                          ...
                          if (any.is(Foo.class)) {
                            foo = any.unpack(Foo.class);
                          }

                       Example 3: Pack and unpack a message in Python.

                          foo = Foo(...)
                          any = Any()
                          any.Pack(foo)
                          ...
                          if any.Is(Foo.DESCRIPTOR):
                            any.Unpack(foo)
                            ...

                       Example 4: Pack and unpack a message in Go

                           foo := &pb.Foo{...}
                           any, err := ptypes.MarshalAny(foo)
                           ...
                           foo := &pb.Foo{}
                           if err := ptypes.UnmarshalAny(any, foo); err != nil {
                             ...
                           }

                      The pack methods provided by protobuf library will by
                      default use

                      'type.googleapis.com/full.type.name' as the type URL and
                      the unpack

                      methods only use the fully qualified type name after the
                      last '/'

                      in the type URL, for example "foo.bar.com/x/y.z" will
                      yield type

                      name "y.z".



                      JSON

                      ====

                      The JSON representation of an `Any` value uses the regular

                      representation of the deserialized, embedded message, with
                      an

                      additional field `@type` which contains the type URL.
                      Example:

                          package google.profile;
                          message Person {
                            string first_name = 1;
                            string last_name = 2;
                          }

                          {
                            "@type": "type.googleapis.com/google.profile.Person",
                            "firstName": <string>,
                            "lastName": <string>
                          }

                      If the embedded message type is well-known and has a
                      custom JSON

                      representation, that representation will be embedded
                      adding a field

                      `value` which holds the custom JSON in addition to the
                      `@type`

                      field. Example (for message [google.protobuf.Duration][]):

                          {
                            "@type": "type.googleapis.com/google.protobuf.Duration",
                            "value": "1.212s"
                          }
                  status:
                    type: string
                    enum:
                      - PROPOSAL_STATUS_UNSPECIFIED
                      - PROPOSAL_STATUS_DEPOSIT_PERIOD
                      - PROPOSAL_STATUS_VOTING_PERIOD
                      - PROPOSAL_STATUS_PASSED
                      - PROPOSAL_STATUS_REJECTED
                      - PROPOSAL_STATUS_FAILED
                    default: PROPOSAL_STATUS_UNSPECIFIED
                    description: >-
                      ProposalStatus enumerates the valid statuses of a
                      proposal.

                       - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.
                       - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit
                      period.
                       - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting
                      period.
                       - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has
                      passed.
                       - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has
                      been rejected.
                       - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has
                      failed.
                  final_tally_result:
                    description: >-
                      final_tally_result is the final tally result of the
                      proposal. When

                      querying a proposal via gRPC, this field is not populated
                      until the

                      proposal's voting period has ended.
                    type: object
                    properties:
                      'yes':
                        type: string
                      abstain:
                        type: string
                      'no':
                        type: string
                      no_with_veto:
                        type: string
                  submit_time:
                    type: string
                    format: date-time
                  deposit_end_time:
                    type: string
                    format: date-time
                  total_deposit:
                    type: array
                    items:
                      type: object
                      properties:
                        denom:
                          type: string
                        amount:
                          type: string
                      description: >-
                        Coin defines a token with a denomination and an amount.


                        NOTE: The amount field is an Int which implements the
                        custom method

                        signatures required by gogoproto.
                  voting_start_time:
                    type: string
                    format: date-time
                  voting_end_time:
                    type: string
                    format: date-time
                description: >-
                  Proposal defines the core field members of a governance
                  proposal.
            description: >-
              QueryProposalResponse is the response type for the Query/Proposal
              RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: proposal_id
          description: proposal_id defines the unique id of the proposal.
          in: path
          required: true
          type: string
          format: uint64
      tags:
        - Query
  /cosmos/gov/v1beta1/proposals/{proposal_id}/deposits:
    get:
      summary: Deposits queries all deposits of a single proposal.
      operationId: Deposits
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              deposits:
                type: array
                items:
                  type: object
                  properties:
                    proposal_id:
                      type: string
                      format: uint64
                    depositor:
                      type: string
                    amount:
                      type: array
                      items:
                        type: object
                        properties:
                          denom:
                            type: string
                          amount:
                            type: string
                        description: >-
                          Coin defines a token with a denomination and an
                          amount.


                          NOTE: The amount field is an Int which implements the
                          custom method

                          signatures required by gogoproto.
                  description: >-
                    Deposit defines an amount deposited by an account address to
                    an active

                    proposal.
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QueryDepositsResponse is the response type for the Query/Deposits
              RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: proposal_id
          description: proposal_id defines the unique id of the proposal.
          in: path
          required: true
          type: string
          format: uint64
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/gov/v1beta1/proposals/{proposal_id}/deposits/{depositor}:
    get:
      summary: >-
        Deposit queries single deposit information based proposalID,
        depositAddr.
      operationId: Deposit
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              deposit:
                type: object
                properties:
                  proposal_id:
                    type: string
                    format: uint64
                  depositor:
                    type: string
                  amount:
                    type: array
                    items:
                      type: object
                      properties:
                        denom:
                          type: string
                        amount:
                          type: string
                      description: >-
                        Coin defines a token with a denomination and an amount.


                        NOTE: The amount field is an Int which implements the
                        custom method

                        signatures required by gogoproto.
                description: >-
                  Deposit defines an amount deposited by an account address to
                  an active

                  proposal.
            description: >-
              QueryDepositResponse is the response type for the Query/Deposit
              RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: proposal_id
          description: proposal_id defines the unique id of the proposal.
          in: path
          required: true
          type: string
          format: uint64
        - name: depositor
          description: depositor defines the deposit addresses from the proposals.
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/gov/v1beta1/proposals/{proposal_id}/tally:
    get:
      summary: TallyResult queries the tally of a proposal vote.
      operationId: TallyResult
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              tally:
                description: tally defines the requested tally.
                type: object
                properties:
                  'yes':
                    type: string
                  abstain:
                    type: string
                  'no':
                    type: string
                  no_with_veto:
                    type: string
            description: >-
              QueryTallyResultResponse is the response type for the Query/Tally
              RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: proposal_id
          description: proposal_id defines the unique id of the proposal.
          in: path
          required: true
          type: string
          format: uint64
      tags:
        - Query
  /cosmos/gov/v1beta1/proposals/{proposal_id}/votes:
    get:
      summary: Votes queries votes of a given proposal.
      operationId: Votes
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              votes:
                type: array
                items:
                  type: object
                  properties:
                    proposal_id:
                      type: string
                      format: uint64
                    voter:
                      type: string
                    option:
                      description: >-
                        Deprecated: Prefer to use `options` instead. This field
                        is set in queries

                        if and only if `len(options) == 1` and that option has
                        weight 1. In all

                        other cases, this field will default to
                        VOTE_OPTION_UNSPECIFIED.
                      type: string
                      enum:
                        - VOTE_OPTION_UNSPECIFIED
                        - VOTE_OPTION_YES
                        - VOTE_OPTION_ABSTAIN
                        - VOTE_OPTION_NO
                        - VOTE_OPTION_NO_WITH_VETO
                      default: VOTE_OPTION_UNSPECIFIED
                    options:
                      type: array
                      items:
                        type: object
                        properties:
                          option:
                            type: string
                            enum:
                              - VOTE_OPTION_UNSPECIFIED
                              - VOTE_OPTION_YES
                              - VOTE_OPTION_ABSTAIN
                              - VOTE_OPTION_NO
                              - VOTE_OPTION_NO_WITH_VETO
                            default: VOTE_OPTION_UNSPECIFIED
                            description: >-
                              VoteOption enumerates the valid vote options for a
                              given governance proposal.

                               - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.
                               - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.
                               - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.
                               - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.
                               - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.
                          weight:
                            type: string
                        description: >-
                          WeightedVoteOption defines a unit of vote for vote
                          split.


                          Since: cosmos-sdk 0.43
                      title: 'Since: cosmos-sdk 0.43'
                  description: >-
                    Vote defines a vote on a governance proposal.

                    A Vote consists of a proposal ID, the voter, and the vote
                    option.
                description: votes defined the queried votes.
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QueryVotesResponse is the response type for the Query/Votes RPC
              method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: proposal_id
          description: proposal_id defines the unique id of the proposal.
          in: path
          required: true
          type: string
          format: uint64
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/gov/v1beta1/proposals/{proposal_id}/votes/{voter}:
    get:
      summary: Vote queries voted information based on proposalID, voterAddr.
      operationId: Vote
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              vote:
                type: object
                properties:
                  proposal_id:
                    type: string
                    format: uint64
                  voter:
                    type: string
                  option:
                    description: >-
                      Deprecated: Prefer to use `options` instead. This field is
                      set in queries

                      if and only if `len(options) == 1` and that option has
                      weight 1. In all

                      other cases, this field will default to
                      VOTE_OPTION_UNSPECIFIED.
                    type: string
                    enum:
                      - VOTE_OPTION_UNSPECIFIED
                      - VOTE_OPTION_YES
                      - VOTE_OPTION_ABSTAIN
                      - VOTE_OPTION_NO
                      - VOTE_OPTION_NO_WITH_VETO
                    default: VOTE_OPTION_UNSPECIFIED
                  options:
                    type: array
                    items:
                      type: object
                      properties:
                        option:
                          type: string
                          enum:
                            - VOTE_OPTION_UNSPECIFIED
                            - VOTE_OPTION_YES
                            - VOTE_OPTION_ABSTAIN
                            - VOTE_OPTION_NO
                            - VOTE_OPTION_NO_WITH_VETO
                          default: VOTE_OPTION_UNSPECIFIED
                          description: >-
                            VoteOption enumerates the valid vote options for a
                            given governance proposal.

                             - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.
                             - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.
                             - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.
                             - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.
                             - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.
                        weight:
                          type: string
                      description: >-
                        WeightedVoteOption defines a unit of vote for vote
                        split.


                        Since: cosmos-sdk 0.43
                    title: 'Since: cosmos-sdk 0.43'
                description: >-
                  Vote defines a vote on a governance proposal.

                  A Vote consists of a proposal ID, the voter, and the vote
                  option.
            description: >-
              QueryVoteResponse is the response type for the Query/Vote RPC
              method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: proposal_id
          description: proposal_id defines the unique id of the proposal.
          in: path
          required: true
          type: string
          format: uint64
        - name: voter
          description: voter defines the voter address for the proposals.
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/gov/v1/params/{params_type}:
    get:
      summary: Params queries all parameters of the gov module.
      operationId: GovV1Params
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              voting_params:
                description: voting_params defines the parameters related to voting.
                type: object
                properties:
                  voting_period:
                    type: string
                    description: Length of the voting period.
              deposit_params:
                description: deposit_params defines the parameters related to deposit.
                type: object
                properties:
                  min_deposit:
                    type: array
                    items:
                      type: object
                      properties:
                        denom:
                          type: string
                        amount:
                          type: string
                      description: >-
                        Coin defines a token with a denomination and an amount.


                        NOTE: The amount field is an Int which implements the
                        custom method

                        signatures required by gogoproto.
                    description: Minimum deposit for a proposal to enter voting period.
                  max_deposit_period:
                    type: string
                    description: >-
                      Maximum period for Atom holders to deposit on a proposal.
                      Initial value: 2
                       months.
              tally_params:
                description: tally_params defines the parameters related to tally.
                type: object
                properties:
                  quorum:
                    type: string
                    description: >-
                      Minimum percentage of total stake needed to vote for a
                      result to be
                       considered valid.
                  threshold:
                    type: string
                    description: >-
                      Minimum proportion of Yes votes for proposal to pass.
                      Default value: 0.5.
                  veto_threshold:
                    type: string
                    description: >-
                      Minimum value of Veto votes to Total votes ratio for
                      proposal to be
                       vetoed. Default value: 1/3.
            description: >-
              QueryParamsResponse is the response type for the Query/Params RPC
              method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: params_type
          description: >-
            params_type defines which parameters to query for, can be one of
            "voting",

            "tallying" or "deposit".
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/gov/v1/proposals:
    get:
      summary: Proposals queries all proposals based on given status.
      operationId: GovV1Proposal
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              proposals:
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: string
                      format: uint64
                    messages:
                      type: array
                      items:
                        type: object
                        properties:
                          type_url:
                            type: string
                            description: >-
                              A URL/resource name that uniquely identifies the
                              type of the serialized

                              protocol buffer message. This string must contain
                              at least

                              one "/" character. The last segment of the URL's
                              path must represent

                              the fully qualified name of the type (as in

                              `path/google.protobuf.Duration`). The name should
                              be in a canonical form

                              (e.g., leading "." is not accepted).


                              In practice, teams usually precompile into the
                              binary all types that they

                              expect it to use in the context of Any. However,
                              for URLs which use the

                              scheme `http`, `https`, or no scheme, one can
                              optionally set up a type

                              server that maps type URLs to message definitions
                              as follows:


                              * If no scheme is provided, `https` is assumed.

                              * An HTTP GET on the URL must yield a
                              [google.protobuf.Type][]
                                value in binary format, or produce an error.
                              * Applications are allowed to cache lookup results
                              based on the
                                URL, or have them precompiled into a binary to avoid any
                                lookup. Therefore, binary compatibility needs to be preserved
                                on changes to types. (Use versioned type names to manage
                                breaking changes.)

                              Note: this functionality is not currently
                              available in the official

                              protobuf release, and it is not used for type URLs
                              beginning with

                              type.googleapis.com.


                              Schemes other than `http`, `https` (or the empty
                              scheme) might be

                              used with implementation specific semantics.
                          value:
                            type: string
                            format: byte
                            description: >-
                              Must be a valid serialized protocol buffer of the
                              above specified type.
                        description: >-
                          `Any` contains an arbitrary serialized protocol buffer
                          message along with a

                          URL that describes the type of the serialized message.


                          Protobuf library provides support to pack/unpack Any
                          values in the form

                          of utility functions or additional generated methods
                          of the Any type.


                          Example 1: Pack and unpack a message in C++.

                              Foo foo = ...;
                              Any any;
                              any.PackFrom(foo);
                              ...
                              if (any.UnpackTo(&foo)) {
                                ...
                              }

                          Example 2: Pack and unpack a message in Java.

                              Foo foo = ...;
                              Any any = Any.pack(foo);
                              ...
                              if (any.is(Foo.class)) {
                                foo = any.unpack(Foo.class);
                              }

                           Example 3: Pack and unpack a message in Python.

                              foo = Foo(...)
                              any = Any()
                              any.Pack(foo)
                              ...
                              if any.Is(Foo.DESCRIPTOR):
                                any.Unpack(foo)
                                ...

                           Example 4: Pack and unpack a message in Go

                               foo := &pb.Foo{...}
                               any, err := ptypes.MarshalAny(foo)
                               ...
                               foo := &pb.Foo{}
                               if err := ptypes.UnmarshalAny(any, foo); err != nil {
                                 ...
                               }

                          The pack methods provided by protobuf library will by
                          default use

                          'type.googleapis.com/full.type.name' as the type URL
                          and the unpack

                          methods only use the fully qualified type name after
                          the last '/'

                          in the type URL, for example "foo.bar.com/x/y.z" will
                          yield type

                          name "y.z".



                          JSON

                          ====

                          The JSON representation of an `Any` value uses the
                          regular

                          representation of the deserialized, embedded message,
                          with an

                          additional field `@type` which contains the type URL.
                          Example:

                              package google.profile;
                              message Person {
                                string first_name = 1;
                                string last_name = 2;
                              }

                              {
                                "@type": "type.googleapis.com/google.profile.Person",
                                "firstName": <string>,
                                "lastName": <string>
                              }

                          If the embedded message type is well-known and has a
                          custom JSON

                          representation, that representation will be embedded
                          adding a field

                          `value` which holds the custom JSON in addition to the
                          `@type`

                          field. Example (for message
                          [google.protobuf.Duration][]):

                              {
                                "@type": "type.googleapis.com/google.protobuf.Duration",
                                "value": "1.212s"
                              }
                    status:
                      type: string
                      enum:
                        - PROPOSAL_STATUS_UNSPECIFIED
                        - PROPOSAL_STATUS_DEPOSIT_PERIOD
                        - PROPOSAL_STATUS_VOTING_PERIOD
                        - PROPOSAL_STATUS_PASSED
                        - PROPOSAL_STATUS_REJECTED
                        - PROPOSAL_STATUS_FAILED
                      default: PROPOSAL_STATUS_UNSPECIFIED
                      description: >-
                        ProposalStatus enumerates the valid statuses of a
                        proposal.

                         - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.
                         - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit
                        period.
                         - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting
                        period.
                         - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has
                        passed.
                         - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has
                        been rejected.
                         - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has
                        failed.
                    final_tally_result:
                      description: >-
                        final_tally_result is the final tally result of the
                        proposal. When

                        querying a proposal via gRPC, this field is not
                        populated until the

                        proposal's voting period has ended.
                      type: object
                      properties:
                        yes_count:
                          type: string
                        abstain_count:
                          type: string
                        no_count:
                          type: string
                        no_with_veto_count:
                          type: string
                    submit_time:
                      type: string
                      format: date-time
                    deposit_end_time:
                      type: string
                      format: date-time
                    total_deposit:
                      type: array
                      items:
                        type: object
                        properties:
                          denom:
                            type: string
                          amount:
                            type: string
                        description: >-
                          Coin defines a token with a denomination and an
                          amount.


                          NOTE: The amount field is an Int which implements the
                          custom method

                          signatures required by gogoproto.
                    voting_start_time:
                      type: string
                      format: date-time
                    voting_end_time:
                      type: string
                      format: date-time
                    metadata:
                      type: string
                      description: >-
                        metadata is any arbitrary metadata attached to the
                        proposal.
                  description: >-
                    Proposal defines the core field members of a governance
                    proposal.
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QueryProposalsResponse is the response type for the
              Query/Proposals RPC

              method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: proposal_status
          description: |-
            proposal_status defines the status of the proposals.

             - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.
             - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit
            period.
             - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting
            period.
             - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has
            passed.
             - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has
            been rejected.
             - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has
            failed.
          in: query
          required: false
          type: string
          enum:
            - PROPOSAL_STATUS_UNSPECIFIED
            - PROPOSAL_STATUS_DEPOSIT_PERIOD
            - PROPOSAL_STATUS_VOTING_PERIOD
            - PROPOSAL_STATUS_PASSED
            - PROPOSAL_STATUS_REJECTED
            - PROPOSAL_STATUS_FAILED
          default: PROPOSAL_STATUS_UNSPECIFIED
        - name: voter
          description: voter defines the voter address for the proposals.
          in: query
          required: false
          type: string
        - name: depositor
          description: depositor defines the deposit addresses from the proposals.
          in: query
          required: false
          type: string
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/gov/v1/proposals/{proposal_id}:
    get:
      summary: Proposal queries proposal details based on ProposalID.
      operationId: GovV1Proposal
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              proposal:
                type: object
                properties:
                  id:
                    type: string
                    format: uint64
                  messages:
                    type: array
                    items:
                      type: object
                      properties:
                        type_url:
                          type: string
                          description: >-
                            A URL/resource name that uniquely identifies the
                            type of the serialized

                            protocol buffer message. This string must contain at
                            least

                            one "/" character. The last segment of the URL's
                            path must represent

                            the fully qualified name of the type (as in

                            `path/google.protobuf.Duration`). The name should be
                            in a canonical form

                            (e.g., leading "." is not accepted).


                            In practice, teams usually precompile into the
                            binary all types that they

                            expect it to use in the context of Any. However, for
                            URLs which use the

                            scheme `http`, `https`, or no scheme, one can
                            optionally set up a type

                            server that maps type URLs to message definitions as
                            follows:


                            * If no scheme is provided, `https` is assumed.

                            * An HTTP GET on the URL must yield a
                            [google.protobuf.Type][]
                              value in binary format, or produce an error.
                            * Applications are allowed to cache lookup results
                            based on the
                              URL, or have them precompiled into a binary to avoid any
                              lookup. Therefore, binary compatibility needs to be preserved
                              on changes to types. (Use versioned type names to manage
                              breaking changes.)

                            Note: this functionality is not currently available
                            in the official

                            protobuf release, and it is not used for type URLs
                            beginning with

                            type.googleapis.com.


                            Schemes other than `http`, `https` (or the empty
                            scheme) might be

                            used with implementation specific semantics.
                        value:
                          type: string
                          format: byte
                          description: >-
                            Must be a valid serialized protocol buffer of the
                            above specified type.
                      description: >-
                        `Any` contains an arbitrary serialized protocol buffer
                        message along with a

                        URL that describes the type of the serialized message.


                        Protobuf library provides support to pack/unpack Any
                        values in the form

                        of utility functions or additional generated methods of
                        the Any type.


                        Example 1: Pack and unpack a message in C++.

                            Foo foo = ...;
                            Any any;
                            any.PackFrom(foo);
                            ...
                            if (any.UnpackTo(&foo)) {
                              ...
                            }

                        Example 2: Pack and unpack a message in Java.

                            Foo foo = ...;
                            Any any = Any.pack(foo);
                            ...
                            if (any.is(Foo.class)) {
                              foo = any.unpack(Foo.class);
                            }

                         Example 3: Pack and unpack a message in Python.

                            foo = Foo(...)
                            any = Any()
                            any.Pack(foo)
                            ...
                            if any.Is(Foo.DESCRIPTOR):
                              any.Unpack(foo)
                              ...

                         Example 4: Pack and unpack a message in Go

                             foo := &pb.Foo{...}
                             any, err := ptypes.MarshalAny(foo)
                             ...
                             foo := &pb.Foo{}
                             if err := ptypes.UnmarshalAny(any, foo); err != nil {
                               ...
                             }

                        The pack methods provided by protobuf library will by
                        default use

                        'type.googleapis.com/full.type.name' as the type URL and
                        the unpack

                        methods only use the fully qualified type name after the
                        last '/'

                        in the type URL, for example "foo.bar.com/x/y.z" will
                        yield type

                        name "y.z".



                        JSON

                        ====

                        The JSON representation of an `Any` value uses the
                        regular

                        representation of the deserialized, embedded message,
                        with an

                        additional field `@type` which contains the type URL.
                        Example:

                            package google.profile;
                            message Person {
                              string first_name = 1;
                              string last_name = 2;
                            }

                            {
                              "@type": "type.googleapis.com/google.profile.Person",
                              "firstName": <string>,
                              "lastName": <string>
                            }

                        If the embedded message type is well-known and has a
                        custom JSON

                        representation, that representation will be embedded
                        adding a field

                        `value` which holds the custom JSON in addition to the
                        `@type`

                        field. Example (for message
                        [google.protobuf.Duration][]):

                            {
                              "@type": "type.googleapis.com/google.protobuf.Duration",
                              "value": "1.212s"
                            }
                  status:
                    type: string
                    enum:
                      - PROPOSAL_STATUS_UNSPECIFIED
                      - PROPOSAL_STATUS_DEPOSIT_PERIOD
                      - PROPOSAL_STATUS_VOTING_PERIOD
                      - PROPOSAL_STATUS_PASSED
                      - PROPOSAL_STATUS_REJECTED
                      - PROPOSAL_STATUS_FAILED
                    default: PROPOSAL_STATUS_UNSPECIFIED
                    description: >-
                      ProposalStatus enumerates the valid statuses of a
                      proposal.

                       - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.
                       - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit
                      period.
                       - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting
                      period.
                       - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has
                      passed.
                       - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has
                      been rejected.
                       - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has
                      failed.
                  final_tally_result:
                    description: >-
                      final_tally_result is the final tally result of the
                      proposal. When

                      querying a proposal via gRPC, this field is not populated
                      until the

                      proposal's voting period has ended.
                    type: object
                    properties:
                      yes_count:
                        type: string
                      abstain_count:
                        type: string
                      no_count:
                        type: string
                      no_with_veto_count:
                        type: string
                  submit_time:
                    type: string
                    format: date-time
                  deposit_end_time:
                    type: string
                    format: date-time
                  total_deposit:
                    type: array
                    items:
                      type: object
                      properties:
                        denom:
                          type: string
                        amount:
                          type: string
                      description: >-
                        Coin defines a token with a denomination and an amount.


                        NOTE: The amount field is an Int which implements the
                        custom method

                        signatures required by gogoproto.
                  voting_start_time:
                    type: string
                    format: date-time
                  voting_end_time:
                    type: string
                    format: date-time
                  metadata:
                    type: string
                    description: >-
                      metadata is any arbitrary metadata attached to the
                      proposal.
                description: >-
                  Proposal defines the core field members of a governance
                  proposal.
            description: >-
              QueryProposalResponse is the response type for the Query/Proposal
              RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: proposal_id
          description: proposal_id defines the unique id of the proposal.
          in: path
          required: true
          type: string
          format: uint64
      tags:
        - Query
  /cosmos/gov/v1/proposals/{proposal_id}/deposits:
    get:
      summary: Deposits queries all deposits of a single proposal.
      operationId: GovV1Deposit
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              deposits:
                type: array
                items:
                  type: object
                  properties:
                    proposal_id:
                      type: string
                      format: uint64
                    depositor:
                      type: string
                    amount:
                      type: array
                      items:
                        type: object
                        properties:
                          denom:
                            type: string
                          amount:
                            type: string
                        description: >-
                          Coin defines a token with a denomination and an
                          amount.


                          NOTE: The amount field is an Int which implements the
                          custom method

                          signatures required by gogoproto.
                  description: >-
                    Deposit defines an amount deposited by an account address to
                    an active

                    proposal.
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QueryDepositsResponse is the response type for the Query/Deposits
              RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: proposal_id
          description: proposal_id defines the unique id of the proposal.
          in: path
          required: true
          type: string
          format: uint64
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/gov/v1/proposals/{proposal_id}/deposits/{depositor}:
    get:
      summary: >-
        Deposit queries single deposit information based proposalID,
        depositAddr.
      operationId: GovV1Deposit
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              deposit:
                type: object
                properties:
                  proposal_id:
                    type: string
                    format: uint64
                  depositor:
                    type: string
                  amount:
                    type: array
                    items:
                      type: object
                      properties:
                        denom:
                          type: string
                        amount:
                          type: string
                      description: >-
                        Coin defines a token with a denomination and an amount.


                        NOTE: The amount field is an Int which implements the
                        custom method

                        signatures required by gogoproto.
                description: >-
                  Deposit defines an amount deposited by an account address to
                  an active

                  proposal.
            description: >-
              QueryDepositResponse is the response type for the Query/Deposit
              RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: proposal_id
          description: proposal_id defines the unique id of the proposal.
          in: path
          required: true
          type: string
          format: uint64
        - name: depositor
          description: depositor defines the deposit addresses from the proposals.
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/gov/v1/proposals/{proposal_id}/tally:
    get:
      summary: TallyResult queries the tally of a proposal vote.
      operationId: GovV1TallyResult
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              tally:
                description: tally defines the requested tally.
                type: object
                properties:
                  yes_count:
                    type: string
                  abstain_count:
                    type: string
                  no_count:
                    type: string
                  no_with_veto_count:
                    type: string
            description: >-
              QueryTallyResultResponse is the response type for the Query/Tally
              RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: proposal_id
          description: proposal_id defines the unique id of the proposal.
          in: path
          required: true
          type: string
          format: uint64
      tags:
        - Query
  /cosmos/gov/v1/proposals/{proposal_id}/votes:
    get:
      summary: Votes queries votes of a given proposal.
      operationId: GovV1Votes
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              votes:
                type: array
                items:
                  type: object
                  properties:
                    proposal_id:
                      type: string
                      format: uint64
                    voter:
                      type: string
                    options:
                      type: array
                      items:
                        type: object
                        properties:
                          option:
                            type: string
                            enum:
                              - VOTE_OPTION_UNSPECIFIED
                              - VOTE_OPTION_YES
                              - VOTE_OPTION_ABSTAIN
                              - VOTE_OPTION_NO
                              - VOTE_OPTION_NO_WITH_VETO
                            default: VOTE_OPTION_UNSPECIFIED
                            description: >-
                              VoteOption enumerates the valid vote options for a
                              given governance proposal.

                               - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.
                               - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.
                               - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.
                               - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.
                               - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.
                          weight:
                            type: string
                        description: >-
                          WeightedVoteOption defines a unit of vote for vote
                          split.
                    metadata:
                      type: string
                      description: >-
                        metadata is any  arbitrary metadata to attached to the
                        vote.
                  description: >-
                    Vote defines a vote on a governance proposal.

                    A Vote consists of a proposal ID, the voter, and the vote
                    option.
                description: votes defined the queried votes.
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QueryVotesResponse is the response type for the Query/Votes RPC
              method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: proposal_id
          description: proposal_id defines the unique id of the proposal.
          in: path
          required: true
          type: string
          format: uint64
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/gov/v1/proposals/{proposal_id}/votes/{voter}:
    get:
      summary: Vote queries voted information based on proposalID, voterAddr.
      operationId: GovV1Vote
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              vote:
                type: object
                properties:
                  proposal_id:
                    type: string
                    format: uint64
                  voter:
                    type: string
                  options:
                    type: array
                    items:
                      type: object
                      properties:
                        option:
                          type: string
                          enum:
                            - VOTE_OPTION_UNSPECIFIED
                            - VOTE_OPTION_YES
                            - VOTE_OPTION_ABSTAIN
                            - VOTE_OPTION_NO
                            - VOTE_OPTION_NO_WITH_VETO
                          default: VOTE_OPTION_UNSPECIFIED
                          description: >-
                            VoteOption enumerates the valid vote options for a
                            given governance proposal.

                             - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.
                             - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.
                             - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.
                             - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.
                             - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.
                        weight:
                          type: string
                      description: >-
                        WeightedVoteOption defines a unit of vote for vote
                        split.
                  metadata:
                    type: string
                    description: >-
                      metadata is any  arbitrary metadata to attached to the
                      vote.
                description: >-
                  Vote defines a vote on a governance proposal.

                  A Vote consists of a proposal ID, the voter, and the vote
                  option.
            description: >-
              QueryVoteResponse is the response type for the Query/Vote RPC
              method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: proposal_id
          description: proposal_id defines the unique id of the proposal.
          in: path
          required: true
          type: string
          format: uint64
        - name: voter
          description: voter defines the voter address for the proposals.
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/mint/v1beta1/annual_provisions:
    get:
      summary: AnnualProvisions current minting annual provisions value.
      operationId: AnnualProvisions
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              annual_provisions:
                type: string
                format: byte
                description: >-
                  annual_provisions is the current minting annual provisions
                  value.
            description: |-
              QueryAnnualProvisionsResponse is the response type for the
              Query/AnnualProvisions RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      tags:
        - Query
  /cosmos/mint/v1beta1/inflation:
    get:
      summary: Inflation returns the current minting inflation value.
      operationId: Inflation
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              inflation:
                type: string
                format: byte
                description: inflation is the current minting inflation value.
            description: >-
              QueryInflationResponse is the response type for the
              Query/Inflation RPC

              method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      tags:
        - Query
  /cosmos/mint/v1beta1/params:
    get:
      summary: Params returns the total set of minting parameters.
      operationId: MintParams
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              params:
                description: params defines the parameters of the module.
                type: object
                properties:
                  mint_denom:
                    type: string
                    title: type of coin to mint
                  inflation_rate_change:
                    type: string
                    title: maximum annual change in inflation rate
                  inflation_max:
                    type: string
                    title: maximum inflation rate
                  inflation_min:
                    type: string
                    title: minimum inflation rate
                  goal_bonded:
                    type: string
                    title: goal of percent bonded atoms
                  blocks_per_year:
                    type: string
                    format: uint64
                    title: expected blocks per year
            description: >-
              QueryParamsResponse is the response type for the Query/Params RPC
              method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      tags:
        - Query
  /cosmos/params/v1beta1/params:
    get:
      summary: |-
        Params queries a specific parameter of a module, given its subspace and
        key.
      operationId: Params
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              param:
                description: param defines the queried parameter.
                type: object
                properties:
                  subspace:
                    type: string
                  key:
                    type: string
                  value:
                    type: string
            description: >-
              QueryParamsResponse is response type for the Query/Params RPC
              method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      parameters:
        - name: subspace
          description: subspace defines the module to query the parameter for.
          in: query
          required: false
          type: string
        - name: key
          description: key defines the key of the parameter in the subspace.
          in: query
          required: false
          type: string
      tags:
        - Query
  /cosmos/params/v1beta1/subspaces:
    get:
      summary: >-
        Subspaces queries for all registered subspaces and all keys for a
        subspace.
      description: 'Since: cosmos-sdk 0.46'
      operationId: Subspaces
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              subspaces:
                type: array
                items:
                  type: object
                  properties:
                    subspace:
                      type: string
                    keys:
                      type: array
                      items:
                        type: string
                  description: >-
                    Subspace defines a parameter subspace name and all the keys
                    that exist for

                    the subspace.


                    Since: cosmos-sdk 0.46
            description: >-
              QuerySubspacesResponse defines the response types for querying for
              all

              registered subspaces and all keys for a subspace.


              Since: cosmos-sdk 0.46
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      tags:
        - Query
  /cosmos/slashing/v1beta1/params:
    get:
      summary: Params queries the parameters of slashing module
      operationId: SlashingParams
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              params:
                type: object
                properties:
                  signed_blocks_window:
                    type: string
                    format: int64
                  min_signed_per_window:
                    type: string
                    format: byte
                  downtime_jail_duration:
                    type: string
                  slash_fraction_double_sign:
                    type: string
                    format: byte
                  slash_fraction_downtime:
                    type: string
                    format: byte
                description: >-
                  Params represents the parameters used for by the slashing
                  module.
            title: >-
              QueryParamsResponse is the response type for the Query/Params RPC
              method
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      tags:
        - Query
  /cosmos/slashing/v1beta1/signing_infos:
    get:
      summary: SigningInfos queries signing info of all validators
      operationId: SigningInfos
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              info:
                type: array
                items:
                  type: object
                  properties:
                    address:
                      type: string
                    start_height:
                      type: string
                      format: int64
                      title: >-
                        Height at which validator was first a candidate OR was
                        unjailed
                    index_offset:
                      type: string
                      format: int64
                      description: >-
                        Index which is incremented each time the validator was a
                        bonded

                        in a block and may have signed a precommit or not. This
                        in conjunction with the

                        `SignedBlocksWindow` param determines the index in the
                        `MissedBlocksBitArray`.
                    jailed_until:
                      type: string
                      format: date-time
                      description: >-
                        Timestamp until which the validator is jailed due to
                        liveness downtime.
                    tombstoned:
                      type: boolean
                      description: >-
                        Whether or not a validator has been tombstoned (killed
                        out of validator set). It is set

                        once the validator commits an equivocation or for any
                        other configured misbehiavor.
                    missed_blocks_counter:
                      type: string
                      format: int64
                      description: >-
                        A counter kept to avoid unnecessary array reads.

                        Note that `Sum(MissedBlocksBitArray)` always equals
                        `MissedBlocksCounter`.
                  description: >-
                    ValidatorSigningInfo defines a validator's signing info for
                    monitoring their

                    liveness activity.
                title: info is the signing info of all validators
              pagination:
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
                description: >-
                  PageResponse is to be embedded in gRPC response messages where
                  the

                  corresponding request message has used PageRequest.

                   message SomeResponse {
                           repeated Bar results = 1;
                           PageResponse page = 2;
                   }
            title: >-
              QuerySigningInfosResponse is the response type for the
              Query/SigningInfos RPC

              method
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      parameters:
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/slashing/v1beta1/signing_infos/{cons_address}:
    get:
      summary: SigningInfo queries the signing info of given cons address
      operationId: SigningInfo
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              val_signing_info:
                type: object
                properties:
                  address:
                    type: string
                  start_height:
                    type: string
                    format: int64
                    title: >-
                      Height at which validator was first a candidate OR was
                      unjailed
                  index_offset:
                    type: string
                    format: int64
                    description: >-
                      Index which is incremented each time the validator was a
                      bonded

                      in a block and may have signed a precommit or not. This in
                      conjunction with the

                      `SignedBlocksWindow` param determines the index in the
                      `MissedBlocksBitArray`.
                  jailed_until:
                    type: string
                    format: date-time
                    description: >-
                      Timestamp until which the validator is jailed due to
                      liveness downtime.
                  tombstoned:
                    type: boolean
                    description: >-
                      Whether or not a validator has been tombstoned (killed out
                      of validator set). It is set

                      once the validator commits an equivocation or for any
                      other configured misbehiavor.
                  missed_blocks_counter:
                    type: string
                    format: int64
                    description: >-
                      A counter kept to avoid unnecessary array reads.

                      Note that `Sum(MissedBlocksBitArray)` always equals
                      `MissedBlocksCounter`.
                description: >-
                  ValidatorSigningInfo defines a validator's signing info for
                  monitoring their

                  liveness activity.
                title: >-
                  val_signing_info is the signing info of requested val cons
                  address
            title: >-
              QuerySigningInfoResponse is the response type for the
              Query/SigningInfo RPC

              method
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                    value:
                      type: string
                      format: byte
      parameters:
        - name: cons_address
          description: cons_address is the address to query signing info of
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/staking/v1beta1/delegations/{delegator_addr}:
    get:
      summary: >-
        DelegatorDelegations queries all delegations of a given delegator
        address.
      operationId: DelegatorDelegations
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              delegation_responses:
                type: array
                items:
                  type: object
                  properties:
                    delegation:
                      type: object
                      properties:
                        delegator_address:
                          type: string
                          description: >-
                            delegator_address is the bech32-encoded address of
                            the delegator.
                        validator_address:
                          type: string
                          description: >-
                            validator_address is the bech32-encoded address of
                            the validator.
                        shares:
                          type: string
                          description: shares define the delegation shares received.
                      description: >-
                        Delegation represents the bond with tokens held by an
                        account. It is

                        owned by one delegator, and is associated with the
                        voting power of one

                        validator.
                    balance:
                      type: object
                      properties:
                        denom:
                          type: string
                        amount:
                          type: string
                      description: >-
                        Coin defines a token with a denomination and an amount.


                        NOTE: The amount field is an Int which implements the
                        custom method

                        signatures required by gogoproto.
                  description: >-
                    DelegationResponse is equivalent to Delegation except that
                    it contains a

                    balance in addition to shares which is more suitable for
                    client responses.
                description: >-
                  delegation_responses defines all the delegations' info of a
                  delegator.
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: |-
              QueryDelegatorDelegationsResponse is response type for the
              Query/DelegatorDelegations RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: delegator_addr
          description: delegator_addr defines the delegator address to query for.
          in: path
          required: true
          type: string
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/staking/v1beta1/delegators/{delegator_addr}/redelegations:
    get:
      summary: Redelegations queries redelegations of given address.
      operationId: Redelegations
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              redelegation_responses:
                type: array
                items:
                  type: object
                  properties:
                    redelegation:
                      type: object
                      properties:
                        delegator_address:
                          type: string
                          description: >-
                            delegator_address is the bech32-encoded address of
                            the delegator.
                        validator_src_address:
                          type: string
                          description: >-
                            validator_src_address is the validator redelegation
                            source operator address.
                        validator_dst_address:
                          type: string
                          description: >-
                            validator_dst_address is the validator redelegation
                            destination operator address.
                        entries:
                          type: array
                          items:
                            type: object
                            properties:
                              creation_height:
                                type: string
                                format: int64
                                description: >-
                                  creation_height  defines the height which the
                                  redelegation took place.
                              completion_time:
                                type: string
                                format: date-time
                                description: >-
                                  completion_time defines the unix time for
                                  redelegation completion.
                              initial_balance:
                                type: string
                                description: >-
                                  initial_balance defines the initial balance
                                  when redelegation started.
                              shares_dst:
                                type: string
                                description: >-
                                  shares_dst is the amount of
                                  destination-validator shares created by
                                  redelegation.
                            description: >-
                              RedelegationEntry defines a redelegation object
                              with relevant metadata.
                          description: entries are the redelegation entries.
                      description: >-
                        Redelegation contains the list of a particular
                        delegator's redelegating bonds

                        from a particular source validator to a particular
                        destination validator.
                    entries:
                      type: array
                      items:
                        type: object
                        properties:
                          redelegation_entry:
                            type: object
                            properties:
                              creation_height:
                                type: string
                                format: int64
                                description: >-
                                  creation_height  defines the height which the
                                  redelegation took place.
                              completion_time:
                                type: string
                                format: date-time
                                description: >-
                                  completion_time defines the unix time for
                                  redelegation completion.
                              initial_balance:
                                type: string
                                description: >-
                                  initial_balance defines the initial balance
                                  when redelegation started.
                              shares_dst:
                                type: string
                                description: >-
                                  shares_dst is the amount of
                                  destination-validator shares created by
                                  redelegation.
                            description: >-
                              RedelegationEntry defines a redelegation object
                              with relevant metadata.
                          balance:
                            type: string
                        description: >-
                          RedelegationEntryResponse is equivalent to a
                          RedelegationEntry except that it

                          contains a balance in addition to shares which is more
                          suitable for client

                          responses.
                  description: >-
                    RedelegationResponse is equivalent to a Redelegation except
                    that its entries

                    contain a balance in addition to shares which is more
                    suitable for client

                    responses.
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QueryRedelegationsResponse is response type for the
              Query/Redelegations RPC

              method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: delegator_addr
          description: delegator_addr defines the delegator address to query for.
          in: path
          required: true
          type: string
        - name: src_validator_addr
          description: src_validator_addr defines the validator address to redelegate from.
          in: query
          required: false
          type: string
        - name: dst_validator_addr
          description: dst_validator_addr defines the validator address to redelegate to.
          in: query
          required: false
          type: string
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/staking/v1beta1/delegators/{delegator_addr}/unbonding_delegations:
    get:
      summary: >-
        DelegatorUnbondingDelegations queries all unbonding delegations of a
        given

        delegator address.
      operationId: DelegatorUnbondingDelegations
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              unbonding_responses:
                type: array
                items:
                  type: object
                  properties:
                    delegator_address:
                      type: string
                      description: >-
                        delegator_address is the bech32-encoded address of the
                        delegator.
                    validator_address:
                      type: string
                      description: >-
                        validator_address is the bech32-encoded address of the
                        validator.
                    entries:
                      type: array
                      items:
                        type: object
                        properties:
                          creation_height:
                            type: string
                            format: int64
                            description: >-
                              creation_height is the height which the unbonding
                              took place.
                          completion_time:
                            type: string
                            format: date-time
                            description: >-
                              completion_time is the unix time for unbonding
                              completion.
                          initial_balance:
                            type: string
                            description: >-
                              initial_balance defines the tokens initially
                              scheduled to receive at completion.
                          balance:
                            type: string
                            description: >-
                              balance defines the tokens to receive at
                              completion.
                        description: >-
                          UnbondingDelegationEntry defines an unbonding object
                          with relevant metadata.
                      description: entries are the unbonding delegation entries.
                  description: >-
                    UnbondingDelegation stores all of a single delegator's
                    unbonding bonds

                    for a single validator in an time-ordered list.
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QueryUnbondingDelegatorDelegationsResponse is response type for
              the

              Query/UnbondingDelegatorDelegations RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: delegator_addr
          description: delegator_addr defines the delegator address to query for.
          in: path
          required: true
          type: string
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/staking/v1beta1/delegators/{delegator_addr}/validators:
    get:
      summary: |-
        DelegatorValidators queries all validators info for given delegator
        address.
      operationId: StakingDelegatorValidators
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              validators:
                type: array
                items:
                  type: object
                  properties:
                    operator_address:
                      type: string
                      description: >-
                        operator_address defines the address of the validator's
                        operator; bech encoded in JSON.
                    consensus_pubkey:
                      type: object
                      properties:
                        type_url:
                          type: string
                          description: >-
                            A URL/resource name that uniquely identifies the
                            type of the serialized

                            protocol buffer message. This string must contain at
                            least

                            one "/" character. The last segment of the URL's
                            path must represent

                            the fully qualified name of the type (as in

                            `path/google.protobuf.Duration`). The name should be
                            in a canonical form

                            (e.g., leading "." is not accepted).


                            In practice, teams usually precompile into the
                            binary all types that they

                            expect it to use in the context of Any. However, for
                            URLs which use the

                            scheme `http`, `https`, or no scheme, one can
                            optionally set up a type

                            server that maps type URLs to message definitions as
                            follows:


                            * If no scheme is provided, `https` is assumed.

                            * An HTTP GET on the URL must yield a
                            [google.protobuf.Type][]
                              value in binary format, or produce an error.
                            * Applications are allowed to cache lookup results
                            based on the
                              URL, or have them precompiled into a binary to avoid any
                              lookup. Therefore, binary compatibility needs to be preserved
                              on changes to types. (Use versioned type names to manage
                              breaking changes.)

                            Note: this functionality is not currently available
                            in the official

                            protobuf release, and it is not used for type URLs
                            beginning with

                            type.googleapis.com.


                            Schemes other than `http`, `https` (or the empty
                            scheme) might be

                            used with implementation specific semantics.
                        value:
                          type: string
                          format: byte
                          description: >-
                            Must be a valid serialized protocol buffer of the
                            above specified type.
                      description: >-
                        `Any` contains an arbitrary serialized protocol buffer
                        message along with a

                        URL that describes the type of the serialized message.


                        Protobuf library provides support to pack/unpack Any
                        values in the form

                        of utility functions or additional generated methods of
                        the Any type.


                        Example 1: Pack and unpack a message in C++.

                            Foo foo = ...;
                            Any any;
                            any.PackFrom(foo);
                            ...
                            if (any.UnpackTo(&foo)) {
                              ...
                            }

                        Example 2: Pack and unpack a message in Java.

                            Foo foo = ...;
                            Any any = Any.pack(foo);
                            ...
                            if (any.is(Foo.class)) {
                              foo = any.unpack(Foo.class);
                            }

                         Example 3: Pack and unpack a message in Python.

                            foo = Foo(...)
                            any = Any()
                            any.Pack(foo)
                            ...
                            if any.Is(Foo.DESCRIPTOR):
                              any.Unpack(foo)
                              ...

                         Example 4: Pack and unpack a message in Go

                             foo := &pb.Foo{...}
                             any, err := ptypes.MarshalAny(foo)
                             ...
                             foo := &pb.Foo{}
                             if err := ptypes.UnmarshalAny(any, foo); err != nil {
                               ...
                             }

                        The pack methods provided by protobuf library will by
                        default use

                        'type.googleapis.com/full.type.name' as the type URL and
                        the unpack

                        methods only use the fully qualified type name after the
                        last '/'

                        in the type URL, for example "foo.bar.com/x/y.z" will
                        yield type

                        name "y.z".



                        JSON

                        ====

                        The JSON representation of an `Any` value uses the
                        regular

                        representation of the deserialized, embedded message,
                        with an

                        additional field `@type` which contains the type URL.
                        Example:

                            package google.profile;
                            message Person {
                              string first_name = 1;
                              string last_name = 2;
                            }

                            {
                              "@type": "type.googleapis.com/google.profile.Person",
                              "firstName": <string>,
                              "lastName": <string>
                            }

                        If the embedded message type is well-known and has a
                        custom JSON

                        representation, that representation will be embedded
                        adding a field

                        `value` which holds the custom JSON in addition to the
                        `@type`

                        field. Example (for message
                        [google.protobuf.Duration][]):

                            {
                              "@type": "type.googleapis.com/google.protobuf.Duration",
                              "value": "1.212s"
                            }
                    jailed:
                      type: boolean
                      description: >-
                        jailed defined whether the validator has been jailed
                        from bonded status or not.
                    status:
                      description: >-
                        status is the validator status
                        (bonded/unbonding/unbonded).
                      type: string
                      enum:
                        - BOND_STATUS_UNSPECIFIED
                        - BOND_STATUS_UNBONDED
                        - BOND_STATUS_UNBONDING
                        - BOND_STATUS_BONDED
                      default: BOND_STATUS_UNSPECIFIED
                    tokens:
                      type: string
                      description: >-
                        tokens define the delegated tokens (incl.
                        self-delegation).
                    delegator_shares:
                      type: string
                      description: >-
                        delegator_shares defines total shares issued to a
                        validator's delegators.
                    description:
                      description: >-
                        description defines the description terms for the
                        validator.
                      type: object
                      properties:
                        moniker:
                          type: string
                          description: >-
                            moniker defines a human-readable name for the
                            validator.
                        identity:
                          type: string
                          description: >-
                            identity defines an optional identity signature (ex.
                            UPort or Keybase).
                        website:
                          type: string
                          description: website defines an optional website link.
                        security_contact:
                          type: string
                          description: >-
                            security_contact defines an optional email for
                            security contact.
                        details:
                          type: string
                          description: details define other optional details.
                    unbonding_height:
                      type: string
                      format: int64
                      description: >-
                        unbonding_height defines, if unbonding, the height at
                        which this validator has begun unbonding.
                    unbonding_time:
                      type: string
                      format: date-time
                      description: >-
                        unbonding_time defines, if unbonding, the min time for
                        the validator to complete unbonding.
                    commission:
                      description: commission defines the commission parameters.
                      type: object
                      properties:
                        commission_rates:
                          description: >-
                            commission_rates defines the initial commission
                            rates to be used for creating a validator.
                          type: object
                          properties:
                            rate:
                              type: string
                              description: >-
                                rate is the commission rate charged to
                                delegators, as a fraction.
                            max_rate:
                              type: string
                              description: >-
                                max_rate defines the maximum commission rate
                                which validator can ever charge, as a fraction.
                            max_change_rate:
                              type: string
                              description: >-
                                max_change_rate defines the maximum daily
                                increase of the validator commission, as a
                                fraction.
                        update_time:
                          type: string
                          format: date-time
                          description: >-
                            update_time is the last time the commission rate was
                            changed.
                    min_self_delegation:
                      type: string
                      description: >-
                        min_self_delegation is the validator's self declared
                        minimum self delegation.


                        Since: cosmos-sdk 0.46
                  description: >-
                    Validator defines a validator, together with the total
                    amount of the

                    Validator's bond shares and their exchange rate to coins.
                    Slashing results in

                    a decrease in the exchange rate, allowing correct
                    calculation of future

                    undelegations without iterating over delegators. When coins
                    are delegated to

                    this validator, the validator is credited with a delegation
                    whose number of

                    bond shares is based on the amount of coins delegated
                    divided by the current

                    exchange rate. Voting power can be calculated as total
                    bonded shares

                    multiplied by exchange rate.
                description: validators defines the validators' info of a delegator.
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: |-
              QueryDelegatorValidatorsResponse is response type for the
              Query/DelegatorValidators RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: delegator_addr
          description: delegator_addr defines the delegator address to query for.
          in: path
          required: true
          type: string
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/staking/v1beta1/delegators/{delegator_addr}/validators/{validator_addr}:
    get:
      summary: |-
        DelegatorValidator queries validator info for given delegator validator
        pair.
      operationId: DelegatorValidator
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              validator:
                type: object
                properties:
                  operator_address:
                    type: string
                    description: >-
                      operator_address defines the address of the validator's
                      operator; bech encoded in JSON.
                  consensus_pubkey:
                    type: object
                    properties:
                      type_url:
                        type: string
                        description: >-
                          A URL/resource name that uniquely identifies the type
                          of the serialized

                          protocol buffer message. This string must contain at
                          least

                          one "/" character. The last segment of the URL's path
                          must represent

                          the fully qualified name of the type (as in

                          `path/google.protobuf.Duration`). The name should be
                          in a canonical form

                          (e.g., leading "." is not accepted).


                          In practice, teams usually precompile into the binary
                          all types that they

                          expect it to use in the context of Any. However, for
                          URLs which use the

                          scheme `http`, `https`, or no scheme, one can
                          optionally set up a type

                          server that maps type URLs to message definitions as
                          follows:


                          * If no scheme is provided, `https` is assumed.

                          * An HTTP GET on the URL must yield a
                          [google.protobuf.Type][]
                            value in binary format, or produce an error.
                          * Applications are allowed to cache lookup results
                          based on the
                            URL, or have them precompiled into a binary to avoid any
                            lookup. Therefore, binary compatibility needs to be preserved
                            on changes to types. (Use versioned type names to manage
                            breaking changes.)

                          Note: this functionality is not currently available in
                          the official

                          protobuf release, and it is not used for type URLs
                          beginning with

                          type.googleapis.com.


                          Schemes other than `http`, `https` (or the empty
                          scheme) might be

                          used with implementation specific semantics.
                      value:
                        type: string
                        format: byte
                        description: >-
                          Must be a valid serialized protocol buffer of the
                          above specified type.
                    description: >-
                      `Any` contains an arbitrary serialized protocol buffer
                      message along with a

                      URL that describes the type of the serialized message.


                      Protobuf library provides support to pack/unpack Any
                      values in the form

                      of utility functions or additional generated methods of
                      the Any type.


                      Example 1: Pack and unpack a message in C++.

                          Foo foo = ...;
                          Any any;
                          any.PackFrom(foo);
                          ...
                          if (any.UnpackTo(&foo)) {
                            ...
                          }

                      Example 2: Pack and unpack a message in Java.

                          Foo foo = ...;
                          Any any = Any.pack(foo);
                          ...
                          if (any.is(Foo.class)) {
                            foo = any.unpack(Foo.class);
                          }

                       Example 3: Pack and unpack a message in Python.

                          foo = Foo(...)
                          any = Any()
                          any.Pack(foo)
                          ...
                          if any.Is(Foo.DESCRIPTOR):
                            any.Unpack(foo)
                            ...

                       Example 4: Pack and unpack a message in Go

                           foo := &pb.Foo{...}
                           any, err := ptypes.MarshalAny(foo)
                           ...
                           foo := &pb.Foo{}
                           if err := ptypes.UnmarshalAny(any, foo); err != nil {
                             ...
                           }

                      The pack methods provided by protobuf library will by
                      default use

                      'type.googleapis.com/full.type.name' as the type URL and
                      the unpack

                      methods only use the fully qualified type name after the
                      last '/'

                      in the type URL, for example "foo.bar.com/x/y.z" will
                      yield type

                      name "y.z".



                      JSON

                      ====

                      The JSON representation of an `Any` value uses the regular

                      representation of the deserialized, embedded message, with
                      an

                      additional field `@type` which contains the type URL.
                      Example:

                          package google.profile;
                          message Person {
                            string first_name = 1;
                            string last_name = 2;
                          }

                          {
                            "@type": "type.googleapis.com/google.profile.Person",
                            "firstName": <string>,
                            "lastName": <string>
                          }

                      If the embedded message type is well-known and has a
                      custom JSON

                      representation, that representation will be embedded
                      adding a field

                      `value` which holds the custom JSON in addition to the
                      `@type`

                      field. Example (for message [google.protobuf.Duration][]):

                          {
                            "@type": "type.googleapis.com/google.protobuf.Duration",
                            "value": "1.212s"
                          }
                  jailed:
                    type: boolean
                    description: >-
                      jailed defined whether the validator has been jailed from
                      bonded status or not.
                  status:
                    description: >-
                      status is the validator status
                      (bonded/unbonding/unbonded).
                    type: string
                    enum:
                      - BOND_STATUS_UNSPECIFIED
                      - BOND_STATUS_UNBONDED
                      - BOND_STATUS_UNBONDING
                      - BOND_STATUS_BONDED
                    default: BOND_STATUS_UNSPECIFIED
                  tokens:
                    type: string
                    description: >-
                      tokens define the delegated tokens (incl.
                      self-delegation).
                  delegator_shares:
                    type: string
                    description: >-
                      delegator_shares defines total shares issued to a
                      validator's delegators.
                  description:
                    description: >-
                      description defines the description terms for the
                      validator.
                    type: object
                    properties:
                      moniker:
                        type: string
                        description: >-
                          moniker defines a human-readable name for the
                          validator.
                      identity:
                        type: string
                        description: >-
                          identity defines an optional identity signature (ex.
                          UPort or Keybase).
                      website:
                        type: string
                        description: website defines an optional website link.
                      security_contact:
                        type: string
                        description: >-
                          security_contact defines an optional email for
                          security contact.
                      details:
                        type: string
                        description: details define other optional details.
                  unbonding_height:
                    type: string
                    format: int64
                    description: >-
                      unbonding_height defines, if unbonding, the height at
                      which this validator has begun unbonding.
                  unbonding_time:
                    type: string
                    format: date-time
                    description: >-
                      unbonding_time defines, if unbonding, the min time for the
                      validator to complete unbonding.
                  commission:
                    description: commission defines the commission parameters.
                    type: object
                    properties:
                      commission_rates:
                        description: >-
                          commission_rates defines the initial commission rates
                          to be used for creating a validator.
                        type: object
                        properties:
                          rate:
                            type: string
                            description: >-
                              rate is the commission rate charged to delegators,
                              as a fraction.
                          max_rate:
                            type: string
                            description: >-
                              max_rate defines the maximum commission rate which
                              validator can ever charge, as a fraction.
                          max_change_rate:
                            type: string
                            description: >-
                              max_change_rate defines the maximum daily increase
                              of the validator commission, as a fraction.
                      update_time:
                        type: string
                        format: date-time
                        description: >-
                          update_time is the last time the commission rate was
                          changed.
                  min_self_delegation:
                    type: string
                    description: >-
                      min_self_delegation is the validator's self declared
                      minimum self delegation.


                      Since: cosmos-sdk 0.46
                description: >-
                  Validator defines a validator, together with the total amount
                  of the

                  Validator's bond shares and their exchange rate to coins.
                  Slashing results in

                  a decrease in the exchange rate, allowing correct calculation
                  of future

                  undelegations without iterating over delegators. When coins
                  are delegated to

                  this validator, the validator is credited with a delegation
                  whose number of

                  bond shares is based on the amount of coins delegated divided
                  by the current

                  exchange rate. Voting power can be calculated as total bonded
                  shares

                  multiplied by exchange rate.
            description: |-
              QueryDelegatorValidatorResponse response type for the
              Query/DelegatorValidator RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: delegator_addr
          description: delegator_addr defines the delegator address to query for.
          in: path
          required: true
          type: string
        - name: validator_addr
          description: validator_addr defines the validator address to query for.
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/staking/v1beta1/historical_info/{height}:
    get:
      summary: HistoricalInfo queries the historical info for given height.
      operationId: HistoricalInfo
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              hist:
                description: hist defines the historical info at the given height.
                type: object
                properties:
                  header:
                    type: object
                    properties:
                      version:
                        title: basic block info
                        type: object
                        properties:
                          block:
                            type: string
                            format: uint64
                          app:
                            type: string
                            format: uint64
                        description: >-
                          Consensus captures the consensus rules for processing
                          a block in the blockchain,

                          including all blockchain data structures and the rules
                          of the application's

                          state transition machine.
                      chain_id:
                        type: string
                      height:
                        type: string
                        format: int64
                      time:
                        type: string
                        format: date-time
                      last_block_id:
                        title: prev block info
                        type: object
                        properties:
                          hash:
                            type: string
                            format: byte
                          part_set_header:
                            type: object
                            properties:
                              total:
                                type: integer
                                format: int64
                              hash:
                                type: string
                                format: byte
                            title: PartsetHeader
                      last_commit_hash:
                        type: string
                        format: byte
                        title: hashes of block data
                      data_hash:
                        type: string
                        format: byte
                      validators_hash:
                        type: string
                        format: byte
                        title: hashes from the app output from the prev block
                      next_validators_hash:
                        type: string
                        format: byte
                      consensus_hash:
                        type: string
                        format: byte
                      app_hash:
                        type: string
                        format: byte
                      last_results_hash:
                        type: string
                        format: byte
                      evidence_hash:
                        type: string
                        format: byte
                        title: consensus info
                      proposer_address:
                        type: string
                        format: byte
                    description: Header defines the structure of a Tendermint block header.
                  valset:
                    type: array
                    items:
                      type: object
                      properties:
                        operator_address:
                          type: string
                          description: >-
                            operator_address defines the address of the
                            validator's operator; bech encoded in JSON.
                        consensus_pubkey:
                          type: object
                          properties:
                            type_url:
                              type: string
                              description: >-
                                A URL/resource name that uniquely identifies the
                                type of the serialized

                                protocol buffer message. This string must
                                contain at least

                                one "/" character. The last segment of the URL's
                                path must represent

                                the fully qualified name of the type (as in

                                `path/google.protobuf.Duration`). The name
                                should be in a canonical form

                                (e.g., leading "." is not accepted).


                                In practice, teams usually precompile into the
                                binary all types that they

                                expect it to use in the context of Any. However,
                                for URLs which use the

                                scheme `http`, `https`, or no scheme, one can
                                optionally set up a type

                                server that maps type URLs to message
                                definitions as follows:


                                * If no scheme is provided, `https` is assumed.

                                * An HTTP GET on the URL must yield a
                                [google.protobuf.Type][]
                                  value in binary format, or produce an error.
                                * Applications are allowed to cache lookup
                                results based on the
                                  URL, or have them precompiled into a binary to avoid any
                                  lookup. Therefore, binary compatibility needs to be preserved
                                  on changes to types. (Use versioned type names to manage
                                  breaking changes.)

                                Note: this functionality is not currently
                                available in the official

                                protobuf release, and it is not used for type
                                URLs beginning with

                                type.googleapis.com.


                                Schemes other than `http`, `https` (or the empty
                                scheme) might be

                                used with implementation specific semantics.
                            value:
                              type: string
                              format: byte
                              description: >-
                                Must be a valid serialized protocol buffer of
                                the above specified type.
                          description: >-
                            `Any` contains an arbitrary serialized protocol
                            buffer message along with a

                            URL that describes the type of the serialized
                            message.


                            Protobuf library provides support to pack/unpack Any
                            values in the form

                            of utility functions or additional generated methods
                            of the Any type.


                            Example 1: Pack and unpack a message in C++.

                                Foo foo = ...;
                                Any any;
                                any.PackFrom(foo);
                                ...
                                if (any.UnpackTo(&foo)) {
                                  ...
                                }

                            Example 2: Pack and unpack a message in Java.

                                Foo foo = ...;
                                Any any = Any.pack(foo);
                                ...
                                if (any.is(Foo.class)) {
                                  foo = any.unpack(Foo.class);
                                }

                             Example 3: Pack and unpack a message in Python.

                                foo = Foo(...)
                                any = Any()
                                any.Pack(foo)
                                ...
                                if any.Is(Foo.DESCRIPTOR):
                                  any.Unpack(foo)
                                  ...

                             Example 4: Pack and unpack a message in Go

                                 foo := &pb.Foo{...}
                                 any, err := ptypes.MarshalAny(foo)
                                 ...
                                 foo := &pb.Foo{}
                                 if err := ptypes.UnmarshalAny(any, foo); err != nil {
                                   ...
                                 }

                            The pack methods provided by protobuf library will
                            by default use

                            'type.googleapis.com/full.type.name' as the type URL
                            and the unpack

                            methods only use the fully qualified type name after
                            the last '/'

                            in the type URL, for example "foo.bar.com/x/y.z"
                            will yield type

                            name "y.z".



                            JSON

                            ====

                            The JSON representation of an `Any` value uses the
                            regular

                            representation of the deserialized, embedded
                            message, with an

                            additional field `@type` which contains the type
                            URL. Example:

                                package google.profile;
                                message Person {
                                  string first_name = 1;
                                  string last_name = 2;
                                }

                                {
                                  "@type": "type.googleapis.com/google.profile.Person",
                                  "firstName": <string>,
                                  "lastName": <string>
                                }

                            If the embedded message type is well-known and has a
                            custom JSON

                            representation, that representation will be embedded
                            adding a field

                            `value` which holds the custom JSON in addition to
                            the `@type`

                            field. Example (for message
                            [google.protobuf.Duration][]):

                                {
                                  "@type": "type.googleapis.com/google.protobuf.Duration",
                                  "value": "1.212s"
                                }
                        jailed:
                          type: boolean
                          description: >-
                            jailed defined whether the validator has been jailed
                            from bonded status or not.
                        status:
                          description: >-
                            status is the validator status
                            (bonded/unbonding/unbonded).
                          type: string
                          enum:
                            - BOND_STATUS_UNSPECIFIED
                            - BOND_STATUS_UNBONDED
                            - BOND_STATUS_UNBONDING
                            - BOND_STATUS_BONDED
                          default: BOND_STATUS_UNSPECIFIED
                        tokens:
                          type: string
                          description: >-
                            tokens define the delegated tokens (incl.
                            self-delegation).
                        delegator_shares:
                          type: string
                          description: >-
                            delegator_shares defines total shares issued to a
                            validator's delegators.
                        description:
                          description: >-
                            description defines the description terms for the
                            validator.
                          type: object
                          properties:
                            moniker:
                              type: string
                              description: >-
                                moniker defines a human-readable name for the
                                validator.
                            identity:
                              type: string
                              description: >-
                                identity defines an optional identity signature
                                (ex. UPort or Keybase).
                            website:
                              type: string
                              description: website defines an optional website link.
                            security_contact:
                              type: string
                              description: >-
                                security_contact defines an optional email for
                                security contact.
                            details:
                              type: string
                              description: details define other optional details.
                        unbonding_height:
                          type: string
                          format: int64
                          description: >-
                            unbonding_height defines, if unbonding, the height
                            at which this validator has begun unbonding.
                        unbonding_time:
                          type: string
                          format: date-time
                          description: >-
                            unbonding_time defines, if unbonding, the min time
                            for the validator to complete unbonding.
                        commission:
                          description: commission defines the commission parameters.
                          type: object
                          properties:
                            commission_rates:
                              description: >-
                                commission_rates defines the initial commission
                                rates to be used for creating a validator.
                              type: object
                              properties:
                                rate:
                                  type: string
                                  description: >-
                                    rate is the commission rate charged to
                                    delegators, as a fraction.
                                max_rate:
                                  type: string
                                  description: >-
                                    max_rate defines the maximum commission rate
                                    which validator can ever charge, as a
                                    fraction.
                                max_change_rate:
                                  type: string
                                  description: >-
                                    max_change_rate defines the maximum daily
                                    increase of the validator commission, as a
                                    fraction.
                            update_time:
                              type: string
                              format: date-time
                              description: >-
                                update_time is the last time the commission rate
                                was changed.
                        min_self_delegation:
                          type: string
                          description: >-
                            min_self_delegation is the validator's self declared
                            minimum self delegation.


                            Since: cosmos-sdk 0.46
                      description: >-
                        Validator defines a validator, together with the total
                        amount of the

                        Validator's bond shares and their exchange rate to
                        coins. Slashing results in

                        a decrease in the exchange rate, allowing correct
                        calculation of future

                        undelegations without iterating over delegators. When
                        coins are delegated to

                        this validator, the validator is credited with a
                        delegation whose number of

                        bond shares is based on the amount of coins delegated
                        divided by the current

                        exchange rate. Voting power can be calculated as total
                        bonded shares

                        multiplied by exchange rate.
            description: >-
              QueryHistoricalInfoResponse is response type for the
              Query/HistoricalInfo RPC

              method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: height
          description: height defines at which height to query the historical info.
          in: path
          required: true
          type: string
          format: int64
      tags:
        - Query
  /cosmos/staking/v1beta1/params:
    get:
      summary: Parameters queries the staking parameters.
      operationId: StakingParams
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              params:
                description: params holds all the parameters of this module.
                type: object
                properties:
                  unbonding_time:
                    type: string
                    description: unbonding_time is the time duration of unbonding.
                  max_validators:
                    type: integer
                    format: int64
                    description: max_validators is the maximum number of validators.
                  max_entries:
                    type: integer
                    format: int64
                    description: >-
                      max_entries is the max entries for either unbonding
                      delegation or redelegation (per pair/trio).
                  historical_entries:
                    type: integer
                    format: int64
                    description: >-
                      historical_entries is the number of historical entries to
                      persist.
                  bond_denom:
                    type: string
                    description: bond_denom defines the bondable coin denomination.
                  min_commission_rate:
                    type: string
                    title: >-
                      min_commission_rate is the chain-wide minimum commission
                      rate that a validator can charge their delegators
            description: >-
              QueryParamsResponse is response type for the Query/Params RPC
              method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      tags:
        - Query
  /cosmos/staking/v1beta1/pool:
    get:
      summary: Pool queries the pool info.
      operationId: Pool
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              pool:
                description: pool defines the pool info.
                type: object
                properties:
                  not_bonded_tokens:
                    type: string
                  bonded_tokens:
                    type: string
            description: QueryPoolResponse is response type for the Query/Pool RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      tags:
        - Query
  /cosmos/staking/v1beta1/validators:
    get:
      summary: Validators queries all validators that match the given status.
      operationId: Validators
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              validators:
                type: array
                items:
                  type: object
                  properties:
                    operator_address:
                      type: string
                      description: >-
                        operator_address defines the address of the validator's
                        operator; bech encoded in JSON.
                    consensus_pubkey:
                      type: object
                      properties:
                        type_url:
                          type: string
                          description: >-
                            A URL/resource name that uniquely identifies the
                            type of the serialized

                            protocol buffer message. This string must contain at
                            least

                            one "/" character. The last segment of the URL's
                            path must represent

                            the fully qualified name of the type (as in

                            `path/google.protobuf.Duration`). The name should be
                            in a canonical form

                            (e.g., leading "." is not accepted).


                            In practice, teams usually precompile into the
                            binary all types that they

                            expect it to use in the context of Any. However, for
                            URLs which use the

                            scheme `http`, `https`, or no scheme, one can
                            optionally set up a type

                            server that maps type URLs to message definitions as
                            follows:


                            * If no scheme is provided, `https` is assumed.

                            * An HTTP GET on the URL must yield a
                            [google.protobuf.Type][]
                              value in binary format, or produce an error.
                            * Applications are allowed to cache lookup results
                            based on the
                              URL, or have them precompiled into a binary to avoid any
                              lookup. Therefore, binary compatibility needs to be preserved
                              on changes to types. (Use versioned type names to manage
                              breaking changes.)

                            Note: this functionality is not currently available
                            in the official

                            protobuf release, and it is not used for type URLs
                            beginning with

                            type.googleapis.com.


                            Schemes other than `http`, `https` (or the empty
                            scheme) might be

                            used with implementation specific semantics.
                        value:
                          type: string
                          format: byte
                          description: >-
                            Must be a valid serialized protocol buffer of the
                            above specified type.
                      description: >-
                        `Any` contains an arbitrary serialized protocol buffer
                        message along with a

                        URL that describes the type of the serialized message.


                        Protobuf library provides support to pack/unpack Any
                        values in the form

                        of utility functions or additional generated methods of
                        the Any type.


                        Example 1: Pack and unpack a message in C++.

                            Foo foo = ...;
                            Any any;
                            any.PackFrom(foo);
                            ...
                            if (any.UnpackTo(&foo)) {
                              ...
                            }

                        Example 2: Pack and unpack a message in Java.

                            Foo foo = ...;
                            Any any = Any.pack(foo);
                            ...
                            if (any.is(Foo.class)) {
                              foo = any.unpack(Foo.class);
                            }

                         Example 3: Pack and unpack a message in Python.

                            foo = Foo(...)
                            any = Any()
                            any.Pack(foo)
                            ...
                            if any.Is(Foo.DESCRIPTOR):
                              any.Unpack(foo)
                              ...

                         Example 4: Pack and unpack a message in Go

                             foo := &pb.Foo{...}
                             any, err := ptypes.MarshalAny(foo)
                             ...
                             foo := &pb.Foo{}
                             if err := ptypes.UnmarshalAny(any, foo); err != nil {
                               ...
                             }

                        The pack methods provided by protobuf library will by
                        default use

                        'type.googleapis.com/full.type.name' as the type URL and
                        the unpack

                        methods only use the fully qualified type name after the
                        last '/'

                        in the type URL, for example "foo.bar.com/x/y.z" will
                        yield type

                        name "y.z".



                        JSON

                        ====

                        The JSON representation of an `Any` value uses the
                        regular

                        representation of the deserialized, embedded message,
                        with an

                        additional field `@type` which contains the type URL.
                        Example:

                            package google.profile;
                            message Person {
                              string first_name = 1;
                              string last_name = 2;
                            }

                            {
                              "@type": "type.googleapis.com/google.profile.Person",
                              "firstName": <string>,
                              "lastName": <string>
                            }

                        If the embedded message type is well-known and has a
                        custom JSON

                        representation, that representation will be embedded
                        adding a field

                        `value` which holds the custom JSON in addition to the
                        `@type`

                        field. Example (for message
                        [google.protobuf.Duration][]):

                            {
                              "@type": "type.googleapis.com/google.protobuf.Duration",
                              "value": "1.212s"
                            }
                    jailed:
                      type: boolean
                      description: >-
                        jailed defined whether the validator has been jailed
                        from bonded status or not.
                    status:
                      description: >-
                        status is the validator status
                        (bonded/unbonding/unbonded).
                      type: string
                      enum:
                        - BOND_STATUS_UNSPECIFIED
                        - BOND_STATUS_UNBONDED
                        - BOND_STATUS_UNBONDING
                        - BOND_STATUS_BONDED
                      default: BOND_STATUS_UNSPECIFIED
                    tokens:
                      type: string
                      description: >-
                        tokens define the delegated tokens (incl.
                        self-delegation).
                    delegator_shares:
                      type: string
                      description: >-
                        delegator_shares defines total shares issued to a
                        validator's delegators.
                    description:
                      description: >-
                        description defines the description terms for the
                        validator.
                      type: object
                      properties:
                        moniker:
                          type: string
                          description: >-
                            moniker defines a human-readable name for the
                            validator.
                        identity:
                          type: string
                          description: >-
                            identity defines an optional identity signature (ex.
                            UPort or Keybase).
                        website:
                          type: string
                          description: website defines an optional website link.
                        security_contact:
                          type: string
                          description: >-
                            security_contact defines an optional email for
                            security contact.
                        details:
                          type: string
                          description: details define other optional details.
                    unbonding_height:
                      type: string
                      format: int64
                      description: >-
                        unbonding_height defines, if unbonding, the height at
                        which this validator has begun unbonding.
                    unbonding_time:
                      type: string
                      format: date-time
                      description: >-
                        unbonding_time defines, if unbonding, the min time for
                        the validator to complete unbonding.
                    commission:
                      description: commission defines the commission parameters.
                      type: object
                      properties:
                        commission_rates:
                          description: >-
                            commission_rates defines the initial commission
                            rates to be used for creating a validator.
                          type: object
                          properties:
                            rate:
                              type: string
                              description: >-
                                rate is the commission rate charged to
                                delegators, as a fraction.
                            max_rate:
                              type: string
                              description: >-
                                max_rate defines the maximum commission rate
                                which validator can ever charge, as a fraction.
                            max_change_rate:
                              type: string
                              description: >-
                                max_change_rate defines the maximum daily
                                increase of the validator commission, as a
                                fraction.
                        update_time:
                          type: string
                          format: date-time
                          description: >-
                            update_time is the last time the commission rate was
                            changed.
                    min_self_delegation:
                      type: string
                      description: >-
                        min_self_delegation is the validator's self declared
                        minimum self delegation.


                        Since: cosmos-sdk 0.46
                  description: >-
                    Validator defines a validator, together with the total
                    amount of the

                    Validator's bond shares and their exchange rate to coins.
                    Slashing results in

                    a decrease in the exchange rate, allowing correct
                    calculation of future

                    undelegations without iterating over delegators. When coins
                    are delegated to

                    this validator, the validator is credited with a delegation
                    whose number of

                    bond shares is based on the amount of coins delegated
                    divided by the current

                    exchange rate. Voting power can be calculated as total
                    bonded shares

                    multiplied by exchange rate.
                description: validators contains all the queried validators.
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            title: >-
              QueryValidatorsResponse is response type for the Query/Validators
              RPC method
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: status
          description: status enables to query for validators matching a given status.
          in: query
          required: false
          type: string
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/staking/v1beta1/validators/{validator_addr}:
    get:
      summary: Validator queries validator info for given validator address.
      operationId: Validator
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              validator:
                type: object
                properties:
                  operator_address:
                    type: string
                    description: >-
                      operator_address defines the address of the validator's
                      operator; bech encoded in JSON.
                  consensus_pubkey:
                    type: object
                    properties:
                      type_url:
                        type: string
                        description: >-
                          A URL/resource name that uniquely identifies the type
                          of the serialized

                          protocol buffer message. This string must contain at
                          least

                          one "/" character. The last segment of the URL's path
                          must represent

                          the fully qualified name of the type (as in

                          `path/google.protobuf.Duration`). The name should be
                          in a canonical form

                          (e.g., leading "." is not accepted).


                          In practice, teams usually precompile into the binary
                          all types that they

                          expect it to use in the context of Any. However, for
                          URLs which use the

                          scheme `http`, `https`, or no scheme, one can
                          optionally set up a type

                          server that maps type URLs to message definitions as
                          follows:


                          * If no scheme is provided, `https` is assumed.

                          * An HTTP GET on the URL must yield a
                          [google.protobuf.Type][]
                            value in binary format, or produce an error.
                          * Applications are allowed to cache lookup results
                          based on the
                            URL, or have them precompiled into a binary to avoid any
                            lookup. Therefore, binary compatibility needs to be preserved
                            on changes to types. (Use versioned type names to manage
                            breaking changes.)

                          Note: this functionality is not currently available in
                          the official

                          protobuf release, and it is not used for type URLs
                          beginning with

                          type.googleapis.com.


                          Schemes other than `http`, `https` (or the empty
                          scheme) might be

                          used with implementation specific semantics.
                      value:
                        type: string
                        format: byte
                        description: >-
                          Must be a valid serialized protocol buffer of the
                          above specified type.
                    description: >-
                      `Any` contains an arbitrary serialized protocol buffer
                      message along with a

                      URL that describes the type of the serialized message.


                      Protobuf library provides support to pack/unpack Any
                      values in the form

                      of utility functions or additional generated methods of
                      the Any type.


                      Example 1: Pack and unpack a message in C++.

                          Foo foo = ...;
                          Any any;
                          any.PackFrom(foo);
                          ...
                          if (any.UnpackTo(&foo)) {
                            ...
                          }

                      Example 2: Pack and unpack a message in Java.

                          Foo foo = ...;
                          Any any = Any.pack(foo);
                          ...
                          if (any.is(Foo.class)) {
                            foo = any.unpack(Foo.class);
                          }

                       Example 3: Pack and unpack a message in Python.

                          foo = Foo(...)
                          any = Any()
                          any.Pack(foo)
                          ...
                          if any.Is(Foo.DESCRIPTOR):
                            any.Unpack(foo)
                            ...

                       Example 4: Pack and unpack a message in Go

                           foo := &pb.Foo{...}
                           any, err := ptypes.MarshalAny(foo)
                           ...
                           foo := &pb.Foo{}
                           if err := ptypes.UnmarshalAny(any, foo); err != nil {
                             ...
                           }

                      The pack methods provided by protobuf library will by
                      default use

                      'type.googleapis.com/full.type.name' as the type URL and
                      the unpack

                      methods only use the fully qualified type name after the
                      last '/'

                      in the type URL, for example "foo.bar.com/x/y.z" will
                      yield type

                      name "y.z".



                      JSON

                      ====

                      The JSON representation of an `Any` value uses the regular

                      representation of the deserialized, embedded message, with
                      an

                      additional field `@type` which contains the type URL.
                      Example:

                          package google.profile;
                          message Person {
                            string first_name = 1;
                            string last_name = 2;
                          }

                          {
                            "@type": "type.googleapis.com/google.profile.Person",
                            "firstName": <string>,
                            "lastName": <string>
                          }

                      If the embedded message type is well-known and has a
                      custom JSON

                      representation, that representation will be embedded
                      adding a field

                      `value` which holds the custom JSON in addition to the
                      `@type`

                      field. Example (for message [google.protobuf.Duration][]):

                          {
                            "@type": "type.googleapis.com/google.protobuf.Duration",
                            "value": "1.212s"
                          }
                  jailed:
                    type: boolean
                    description: >-
                      jailed defined whether the validator has been jailed from
                      bonded status or not.
                  status:
                    description: >-
                      status is the validator status
                      (bonded/unbonding/unbonded).
                    type: string
                    enum:
                      - BOND_STATUS_UNSPECIFIED
                      - BOND_STATUS_UNBONDED
                      - BOND_STATUS_UNBONDING
                      - BOND_STATUS_BONDED
                    default: BOND_STATUS_UNSPECIFIED
                  tokens:
                    type: string
                    description: >-
                      tokens define the delegated tokens (incl.
                      self-delegation).
                  delegator_shares:
                    type: string
                    description: >-
                      delegator_shares defines total shares issued to a
                      validator's delegators.
                  description:
                    description: >-
                      description defines the description terms for the
                      validator.
                    type: object
                    properties:
                      moniker:
                        type: string
                        description: >-
                          moniker defines a human-readable name for the
                          validator.
                      identity:
                        type: string
                        description: >-
                          identity defines an optional identity signature (ex.
                          UPort or Keybase).
                      website:
                        type: string
                        description: website defines an optional website link.
                      security_contact:
                        type: string
                        description: >-
                          security_contact defines an optional email for
                          security contact.
                      details:
                        type: string
                        description: details define other optional details.
                  unbonding_height:
                    type: string
                    format: int64
                    description: >-
                      unbonding_height defines, if unbonding, the height at
                      which this validator has begun unbonding.
                  unbonding_time:
                    type: string
                    format: date-time
                    description: >-
                      unbonding_time defines, if unbonding, the min time for the
                      validator to complete unbonding.
                  commission:
                    description: commission defines the commission parameters.
                    type: object
                    properties:
                      commission_rates:
                        description: >-
                          commission_rates defines the initial commission rates
                          to be used for creating a validator.
                        type: object
                        properties:
                          rate:
                            type: string
                            description: >-
                              rate is the commission rate charged to delegators,
                              as a fraction.
                          max_rate:
                            type: string
                            description: >-
                              max_rate defines the maximum commission rate which
                              validator can ever charge, as a fraction.
                          max_change_rate:
                            type: string
                            description: >-
                              max_change_rate defines the maximum daily increase
                              of the validator commission, as a fraction.
                      update_time:
                        type: string
                        format: date-time
                        description: >-
                          update_time is the last time the commission rate was
                          changed.
                  min_self_delegation:
                    type: string
                    description: >-
                      min_self_delegation is the validator's self declared
                      minimum self delegation.


                      Since: cosmos-sdk 0.46
                description: >-
                  Validator defines a validator, together with the total amount
                  of the

                  Validator's bond shares and their exchange rate to coins.
                  Slashing results in

                  a decrease in the exchange rate, allowing correct calculation
                  of future

                  undelegations without iterating over delegators. When coins
                  are delegated to

                  this validator, the validator is credited with a delegation
                  whose number of

                  bond shares is based on the amount of coins delegated divided
                  by the current

                  exchange rate. Voting power can be calculated as total bonded
                  shares

                  multiplied by exchange rate.
            title: >-
              QueryValidatorResponse is response type for the Query/Validator
              RPC method
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: validator_addr
          description: validator_addr defines the validator address to query for.
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/staking/v1beta1/validators/{validator_addr}/delegations:
    get:
      summary: ValidatorDelegations queries delegate info for given validator.
      operationId: ValidatorDelegations
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              delegation_responses:
                type: array
                items:
                  type: object
                  properties:
                    delegation:
                      type: object
                      properties:
                        delegator_address:
                          type: string
                          description: >-
                            delegator_address is the bech32-encoded address of
                            the delegator.
                        validator_address:
                          type: string
                          description: >-
                            validator_address is the bech32-encoded address of
                            the validator.
                        shares:
                          type: string
                          description: shares define the delegation shares received.
                      description: >-
                        Delegation represents the bond with tokens held by an
                        account. It is

                        owned by one delegator, and is associated with the
                        voting power of one

                        validator.
                    balance:
                      type: object
                      properties:
                        denom:
                          type: string
                        amount:
                          type: string
                      description: >-
                        Coin defines a token with a denomination and an amount.


                        NOTE: The amount field is an Int which implements the
                        custom method

                        signatures required by gogoproto.
                  description: >-
                    DelegationResponse is equivalent to Delegation except that
                    it contains a

                    balance in addition to shares which is more suitable for
                    client responses.
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            title: |-
              QueryValidatorDelegationsResponse is response type for the
              Query/ValidatorDelegations RPC method
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: validator_addr
          description: validator_addr defines the validator address to query for.
          in: path
          required: true
          type: string
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/staking/v1beta1/validators/{validator_addr}/delegations/{delegator_addr}:
    get:
      summary: Delegation queries delegate info for given validator delegator pair.
      operationId: Delegation
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              delegation_response:
                type: object
                properties:
                  delegation:
                    type: object
                    properties:
                      delegator_address:
                        type: string
                        description: >-
                          delegator_address is the bech32-encoded address of the
                          delegator.
                      validator_address:
                        type: string
                        description: >-
                          validator_address is the bech32-encoded address of the
                          validator.
                      shares:
                        type: string
                        description: shares define the delegation shares received.
                    description: >-
                      Delegation represents the bond with tokens held by an
                      account. It is

                      owned by one delegator, and is associated with the voting
                      power of one

                      validator.
                  balance:
                    type: object
                    properties:
                      denom:
                        type: string
                      amount:
                        type: string
                    description: >-
                      Coin defines a token with a denomination and an amount.


                      NOTE: The amount field is an Int which implements the
                      custom method

                      signatures required by gogoproto.
                description: >-
                  DelegationResponse is equivalent to Delegation except that it
                  contains a

                  balance in addition to shares which is more suitable for
                  client responses.
            description: >-
              QueryDelegationResponse is response type for the Query/Delegation
              RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: validator_addr
          description: validator_addr defines the validator address to query for.
          in: path
          required: true
          type: string
        - name: delegator_addr
          description: delegator_addr defines the delegator address to query for.
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/staking/v1beta1/validators/{validator_addr}/delegations/{delegator_addr}/unbonding_delegation:
    get:
      summary: |-
        UnbondingDelegation queries unbonding info for given validator delegator
        pair.
      operationId: UnbondingDelegation
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              unbond:
                type: object
                properties:
                  delegator_address:
                    type: string
                    description: >-
                      delegator_address is the bech32-encoded address of the
                      delegator.
                  validator_address:
                    type: string
                    description: >-
                      validator_address is the bech32-encoded address of the
                      validator.
                  entries:
                    type: array
                    items:
                      type: object
                      properties:
                        creation_height:
                          type: string
                          format: int64
                          description: >-
                            creation_height is the height which the unbonding
                            took place.
                        completion_time:
                          type: string
                          format: date-time
                          description: >-
                            completion_time is the unix time for unbonding
                            completion.
                        initial_balance:
                          type: string
                          description: >-
                            initial_balance defines the tokens initially
                            scheduled to receive at completion.
                        balance:
                          type: string
                          description: balance defines the tokens to receive at completion.
                      description: >-
                        UnbondingDelegationEntry defines an unbonding object
                        with relevant metadata.
                    description: entries are the unbonding delegation entries.
                description: >-
                  UnbondingDelegation stores all of a single delegator's
                  unbonding bonds

                  for a single validator in an time-ordered list.
            description: >-
              QueryDelegationResponse is response type for the
              Query/UnbondingDelegation

              RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: validator_addr
          description: validator_addr defines the validator address to query for.
          in: path
          required: true
          type: string
        - name: delegator_addr
          description: delegator_addr defines the delegator address to query for.
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/staking/v1beta1/validators/{validator_addr}/unbonding_delegations:
    get:
      summary: >-
        ValidatorUnbondingDelegations queries unbonding delegations of a
        validator.
      operationId: ValidatorUnbondingDelegations
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              unbonding_responses:
                type: array
                items:
                  type: object
                  properties:
                    delegator_address:
                      type: string
                      description: >-
                        delegator_address is the bech32-encoded address of the
                        delegator.
                    validator_address:
                      type: string
                      description: >-
                        validator_address is the bech32-encoded address of the
                        validator.
                    entries:
                      type: array
                      items:
                        type: object
                        properties:
                          creation_height:
                            type: string
                            format: int64
                            description: >-
                              creation_height is the height which the unbonding
                              took place.
                          completion_time:
                            type: string
                            format: date-time
                            description: >-
                              completion_time is the unix time for unbonding
                              completion.
                          initial_balance:
                            type: string
                            description: >-
                              initial_balance defines the tokens initially
                              scheduled to receive at completion.
                          balance:
                            type: string
                            description: >-
                              balance defines the tokens to receive at
                              completion.
                        description: >-
                          UnbondingDelegationEntry defines an unbonding object
                          with relevant metadata.
                      description: entries are the unbonding delegation entries.
                  description: >-
                    UnbondingDelegation stores all of a single delegator's
                    unbonding bonds

                    for a single validator in an time-ordered list.
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QueryValidatorUnbondingDelegationsResponse is response type for
              the

              Query/ValidatorUnbondingDelegations RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: validator_addr
          description: validator_addr defines the validator address to query for.
          in: path
          required: true
          type: string
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/tx/v1beta1/simulate:
    post:
      summary: Simulate simulates executing a transaction for estimating gas usage.
      operationId: Simulate
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              gas_info:
                description: gas_info is the information about gas used in the simulation.
                type: object
                properties:
                  gas_wanted:
                    type: string
                    format: uint64
                    description: >-
                      GasWanted is the maximum units of work we allow this tx to
                      perform.
                  gas_used:
                    type: string
                    format: uint64
                    description: GasUsed is the amount of gas actually consumed.
              result:
                description: result is the result of the simulation.
                type: object
                properties:
                  data:
                    type: string
                    format: byte
                    description: >-
                      Data is any data returned from message or handler
                      execution. It MUST be

                      length prefixed in order to separate data from multiple
                      message executions.

                      Deprecated. This field is still populated, but prefer
                      msg_response instead

                      because it also contains the Msg response typeURL.
                  log:
                    type: string
                    description: >-
                      Log contains the log information from message or handler
                      execution.
                  events:
                    type: array
                    items:
                      type: object
                      properties:
                        type:
                          type: string
                        attributes:
                          type: array
                          items:
                            type: object
                            properties:
                              key:
                                type: string
                                format: byte
                              value:
                                type: string
                                format: byte
                              index:
                                type: boolean
                            description: >-
                              EventAttribute is a single key-value pair,
                              associated with an event.
                      description: >-
                        Event allows application developers to attach additional
                        information to

                        ResponseBeginBlock, ResponseEndBlock, ResponseCheckTx
                        and ResponseDeliverTx.

                        Later, transactions may be queried using these events.
                    description: >-
                      Events contains a slice of Event objects that were emitted
                      during message

                      or handler execution.
                  msg_responses:
                    type: array
                    items:
                      type: object
                      properties:
                        type_url:
                          type: string
                          description: >-
                            A URL/resource name that uniquely identifies the
                            type of the serialized

                            protocol buffer message. This string must contain at
                            least

                            one "/" character. The last segment of the URL's
                            path must represent

                            the fully qualified name of the type (as in

                            `path/google.protobuf.Duration`). The name should be
                            in a canonical form

                            (e.g., leading "." is not accepted).


                            In practice, teams usually precompile into the
                            binary all types that they

                            expect it to use in the context of Any. However, for
                            URLs which use the

                            scheme `http`, `https`, or no scheme, one can
                            optionally set up a type

                            server that maps type URLs to message definitions as
                            follows:


                            * If no scheme is provided, `https` is assumed.

                            * An HTTP GET on the URL must yield a
                            [google.protobuf.Type][]
                              value in binary format, or produce an error.
                            * Applications are allowed to cache lookup results
                            based on the
                              URL, or have them precompiled into a binary to avoid any
                              lookup. Therefore, binary compatibility needs to be preserved
                              on changes to types. (Use versioned type names to manage
                              breaking changes.)

                            Note: this functionality is not currently available
                            in the official

                            protobuf release, and it is not used for type URLs
                            beginning with

                            type.googleapis.com.


                            Schemes other than `http`, `https` (or the empty
                            scheme) might be

                            used with implementation specific semantics.
                        value:
                          type: string
                          format: byte
                          description: >-
                            Must be a valid serialized protocol buffer of the
                            above specified type.
                      description: >-
                        `Any` contains an arbitrary serialized protocol buffer
                        message along with a

                        URL that describes the type of the serialized message.


                        Protobuf library provides support to pack/unpack Any
                        values in the form

                        of utility functions or additional generated methods of
                        the Any type.


                        Example 1: Pack and unpack a message in C++.

                            Foo foo = ...;
                            Any any;
                            any.PackFrom(foo);
                            ...
                            if (any.UnpackTo(&foo)) {
                              ...
                            }

                        Example 2: Pack and unpack a message in Java.

                            Foo foo = ...;
                            Any any = Any.pack(foo);
                            ...
                            if (any.is(Foo.class)) {
                              foo = any.unpack(Foo.class);
                            }

                         Example 3: Pack and unpack a message in Python.

                            foo = Foo(...)
                            any = Any()
                            any.Pack(foo)
                            ...
                            if any.Is(Foo.DESCRIPTOR):
                              any.Unpack(foo)
                              ...

                         Example 4: Pack and unpack a message in Go

                             foo := &pb.Foo{...}
                             any, err := ptypes.MarshalAny(foo)
                             ...
                             foo := &pb.Foo{}
                             if err := ptypes.UnmarshalAny(any, foo); err != nil {
                               ...
                             }

                        The pack methods provided by protobuf library will by
                        default use

                        'type.googleapis.com/full.type.name' as the type URL and
                        the unpack

                        methods only use the fully qualified type name after the
                        last '/'

                        in the type URL, for example "foo.bar.com/x/y.z" will
                        yield type

                        name "y.z".



                        JSON

                        ====

                        The JSON representation of an `Any` value uses the
                        regular

                        representation of the deserialized, embedded message,
                        with an

                        additional field `@type` which contains the type URL.
                        Example:

                            package google.profile;
                            message Person {
                              string first_name = 1;
                              string last_name = 2;
                            }

                            {
                              "@type": "type.googleapis.com/google.profile.Person",
                              "firstName": <string>,
                              "lastName": <string>
                            }

                        If the embedded message type is well-known and has a
                        custom JSON

                        representation, that representation will be embedded
                        adding a field

                        `value` which holds the custom JSON in addition to the
                        `@type`

                        field. Example (for message
                        [google.protobuf.Duration][]):

                            {
                              "@type": "type.googleapis.com/google.protobuf.Duration",
                              "value": "1.212s"
                            }
                    description: >-
                      msg_responses contains the Msg handler responses type
                      packed in Anys.


                      Since: cosmos-sdk 0.46
            description: |-
              SimulateResponse is the response type for the
              Service.SimulateRPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: body
          in: body
          required: true
          schema:
            $ref: '#/definitions/cosmos.tx.v1beta1.SimulateRequest'
      tags:
        - Service
  /cosmos/tx/v1beta1/txs:
    get:
      summary: GetTxsEvent fetches txs by event.
      operationId: GetTxsEvent
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/cosmos.tx.v1beta1.GetTxsEventResponse'
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: events
          description: events is the list of transaction event type.
          in: query
          required: false
          type: array
          items:
            type: string
          collectionFormat: multi
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
        - name: order_by
          description: |2-
             - ORDER_BY_UNSPECIFIED: ORDER_BY_UNSPECIFIED specifies an unknown sorting order. OrderBy defaults to ASC in this case.
             - ORDER_BY_ASC: ORDER_BY_ASC defines ascending order
             - ORDER_BY_DESC: ORDER_BY_DESC defines descending order
          in: query
          required: false
          type: string
          enum:
            - ORDER_BY_UNSPECIFIED
            - ORDER_BY_ASC
            - ORDER_BY_DESC
          default: ORDER_BY_UNSPECIFIED
        - name: page
          description: >-
            page is the page number to query, starts at 1. If not provided, will
            default to first page.
          in: query
          required: false
          type: string
          format: uint64
        - name: limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
      tags:
        - Service
    post:
      summary: BroadcastTx broadcast transaction.
      operationId: BroadcastTx
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              tx_response:
                type: object
                properties:
                  height:
                    type: string
                    format: int64
                    title: The block height
                  txhash:
                    type: string
                    description: The transaction hash.
                  codespace:
                    type: string
                    title: Namespace for the Code
                  code:
                    type: integer
                    format: int64
                    description: Response code.
                  data:
                    type: string
                    description: Result bytes, if any.
                  raw_log:
                    type: string
                    description: >-
                      The output of the application's logger (raw string). May
                      be

                      non-deterministic.
                  logs:
                    type: array
                    items:
                      type: object
                      properties:
                        msg_index:
                          type: integer
                          format: int64
                        log:
                          type: string
                        events:
                          type: array
                          items:
                            type: object
                            properties:
                              type:
                                type: string
                              attributes:
                                type: array
                                items:
                                  type: object
                                  properties:
                                    key:
                                      type: string
                                    value:
                                      type: string
                                  description: >-
                                    Attribute defines an attribute wrapper where
                                    the key and value are

                                    strings instead of raw bytes.
                            description: >-
                              StringEvent defines en Event object wrapper where
                              all the attributes

                              contain key/value pairs that are strings instead
                              of raw bytes.
                          description: >-
                            Events contains a slice of Event objects that were
                            emitted during some

                            execution.
                      description: >-
                        ABCIMessageLog defines a structure containing an indexed
                        tx ABCI message log.
                    description: >-
                      The output of the application's logger (typed). May be
                      non-deterministic.
                  info:
                    type: string
                    description: Additional information. May be non-deterministic.
                  gas_wanted:
                    type: string
                    format: int64
                    description: Amount of gas requested for transaction.
                  gas_used:
                    type: string
                    format: int64
                    description: Amount of gas consumed by transaction.
                  tx:
                    type: object
                    properties:
                      type_url:
                        type: string
                        description: >-
                          A URL/resource name that uniquely identifies the type
                          of the serialized

                          protocol buffer message. This string must contain at
                          least

                          one "/" character. The last segment of the URL's path
                          must represent

                          the fully qualified name of the type (as in

                          `path/google.protobuf.Duration`). The name should be
                          in a canonical form

                          (e.g., leading "." is not accepted).


                          In practice, teams usually precompile into the binary
                          all types that they

                          expect it to use in the context of Any. However, for
                          URLs which use the

                          scheme `http`, `https`, or no scheme, one can
                          optionally set up a type

                          server that maps type URLs to message definitions as
                          follows:


                          * If no scheme is provided, `https` is assumed.

                          * An HTTP GET on the URL must yield a
                          [google.protobuf.Type][]
                            value in binary format, or produce an error.
                          * Applications are allowed to cache lookup results
                          based on the
                            URL, or have them precompiled into a binary to avoid any
                            lookup. Therefore, binary compatibility needs to be preserved
                            on changes to types. (Use versioned type names to manage
                            breaking changes.)

                          Note: this functionality is not currently available in
                          the official

                          protobuf release, and it is not used for type URLs
                          beginning with

                          type.googleapis.com.


                          Schemes other than `http`, `https` (or the empty
                          scheme) might be

                          used with implementation specific semantics.
                      value:
                        type: string
                        format: byte
                        description: >-
                          Must be a valid serialized protocol buffer of the
                          above specified type.
                    description: >-
                      `Any` contains an arbitrary serialized protocol buffer
                      message along with a

                      URL that describes the type of the serialized message.


                      Protobuf library provides support to pack/unpack Any
                      values in the form

                      of utility functions or additional generated methods of
                      the Any type.


                      Example 1: Pack and unpack a message in C++.

                          Foo foo = ...;
                          Any any;
                          any.PackFrom(foo);
                          ...
                          if (any.UnpackTo(&foo)) {
                            ...
                          }

                      Example 2: Pack and unpack a message in Java.

                          Foo foo = ...;
                          Any any = Any.pack(foo);
                          ...
                          if (any.is(Foo.class)) {
                            foo = any.unpack(Foo.class);
                          }

                       Example 3: Pack and unpack a message in Python.

                          foo = Foo(...)
                          any = Any()
                          any.Pack(foo)
                          ...
                          if any.Is(Foo.DESCRIPTOR):
                            any.Unpack(foo)
                            ...

                       Example 4: Pack and unpack a message in Go

                           foo := &pb.Foo{...}
                           any, err := ptypes.MarshalAny(foo)
                           ...
                           foo := &pb.Foo{}
                           if err := ptypes.UnmarshalAny(any, foo); err != nil {
                             ...
                           }

                      The pack methods provided by protobuf library will by
                      default use

                      'type.googleapis.com/full.type.name' as the type URL and
                      the unpack

                      methods only use the fully qualified type name after the
                      last '/'

                      in the type URL, for example "foo.bar.com/x/y.z" will
                      yield type

                      name "y.z".



                      JSON

                      ====

                      The JSON representation of an `Any` value uses the regular

                      representation of the deserialized, embedded message, with
                      an

                      additional field `@type` which contains the type URL.
                      Example:

                          package google.profile;
                          message Person {
                            string first_name = 1;
                            string last_name = 2;
                          }

                          {
                            "@type": "type.googleapis.com/google.profile.Person",
                            "firstName": <string>,
                            "lastName": <string>
                          }

                      If the embedded message type is well-known and has a
                      custom JSON

                      representation, that representation will be embedded
                      adding a field

                      `value` which holds the custom JSON in addition to the
                      `@type`

                      field. Example (for message [google.protobuf.Duration][]):

                          {
                            "@type": "type.googleapis.com/google.protobuf.Duration",
                            "value": "1.212s"
                          }
                  timestamp:
                    type: string
                    description: >-
                      Time of the previous block. For heights > 1, it's the
                      weighted median of

                      the timestamps of the valid votes in the block.LastCommit.
                      For height == 1,

                      it's genesis time.
                  events:
                    type: array
                    items:
                      type: object
                      properties:
                        type:
                          type: string
                        attributes:
                          type: array
                          items:
                            type: object
                            properties:
                              key:
                                type: string
                                format: byte
                              value:
                                type: string
                                format: byte
                              index:
                                type: boolean
                            description: >-
                              EventAttribute is a single key-value pair,
                              associated with an event.
                      description: >-
                        Event allows application developers to attach additional
                        information to

                        ResponseBeginBlock, ResponseEndBlock, ResponseCheckTx
                        and ResponseDeliverTx.

                        Later, transactions may be queried using these events.
                    description: >-
                      Events defines all the events emitted by processing a
                      transaction. Note,

                      these events include those emitted by processing all the
                      messages and those

                      emitted from the ante. Whereas Logs contains the events,
                      with

                      additional metadata, emitted only by processing the
                      messages.


                      Since: cosmos-sdk 0.42.11, 0.44.5, 0.45
                description: >-
                  TxResponse defines a structure containing relevant tx data and
                  metadata. The

                  tags are stringified and the log is JSON decoded.
            description: |-
              BroadcastTxResponse is the response type for the
              Service.BroadcastTx method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: body
          in: body
          required: true
          schema:
            type: object
            properties:
              tx_bytes:
                type: string
                format: byte
                description: tx_bytes is the raw transaction.
              mode:
                type: string
                enum:
                  - BROADCAST_MODE_UNSPECIFIED
                  - BROADCAST_MODE_BLOCK
                  - BROADCAST_MODE_SYNC
                  - BROADCAST_MODE_ASYNC
                default: BROADCAST_MODE_UNSPECIFIED
                description: >-
                  BroadcastMode specifies the broadcast mode for the
                  TxService.Broadcast RPC method.

                   - BROADCAST_MODE_UNSPECIFIED: zero-value for mode ordering
                   - BROADCAST_MODE_BLOCK: BROADCAST_MODE_BLOCK defines a tx broadcasting mode where the client waits for
                  the tx to be committed in a block.
                   - BROADCAST_MODE_SYNC: BROADCAST_MODE_SYNC defines a tx broadcasting mode where the client waits for
                  a CheckTx execution response only.
                   - BROADCAST_MODE_ASYNC: BROADCAST_MODE_ASYNC defines a tx broadcasting mode where the client returns
                  immediately.
            description: >-
              BroadcastTxRequest is the request type for the
              Service.BroadcastTxRequest

              RPC method.
      tags:
        - Service
  /cosmos/tx/v1beta1/txs/block/{height}:
    get:
      summary: GetBlockWithTxs fetches a block with decoded txs.
      description: 'Since: cosmos-sdk 0.45.2'
      operationId: GetBlockWithTxs
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/cosmos.tx.v1beta1.GetBlockWithTxsResponse'
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: height
          description: height is the height of the block to query.
          in: path
          required: true
          type: string
          format: int64
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Service
  /cosmos/tx/v1beta1/txs/{hash}:
    get:
      summary: GetTx fetches a tx by hash.
      operationId: GetTx
      responses:
        '200':
          description: A successful response.
          schema:
            $ref: '#/definitions/cosmos.tx.v1beta1.GetTxResponse'
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: hash
          description: hash is the tx hash to query, encoded as a hex string.
          in: path
          required: true
          type: string
      tags:
        - Service
  /cosmos/upgrade/v1beta1/applied_plan/{name}:
    get:
      summary: AppliedPlan queries a previously applied upgrade plan by its name.
      operationId: AppliedPlan
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              height:
                type: string
                format: int64
                description: height is the block height at which the plan was applied.
            description: >-
              QueryAppliedPlanResponse is the response type for the
              Query/AppliedPlan RPC

              method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: name
          description: name is the name of the applied plan to query for.
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/upgrade/v1beta1/authority:
    get:
      summary: Returns the account with authority to conduct upgrades
      description: 'Since: cosmos-sdk 0.46'
      operationId: Authority
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              address:
                type: string
            description: 'Since: cosmos-sdk 0.46'
            title: QueryAuthorityResponse is the response type for Query/Authority
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      tags:
        - Query
  /cosmos/upgrade/v1beta1/current_plan:
    get:
      summary: CurrentPlan queries the current upgrade plan.
      operationId: CurrentPlan
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              plan:
                description: plan is the current upgrade plan.
                type: object
                properties:
                  name:
                    type: string
                    description: >-
                      Sets the name for the upgrade. This name will be used by
                      the upgraded

                      version of the software to apply any special "on-upgrade"
                      commands during

                      the first BeginBlock method after the upgrade is applied.
                      It is also used

                      to detect whether a software version can handle a given
                      upgrade. If no

                      upgrade handler with this name has been set in the
                      software, it will be

                      assumed that the software is out-of-date when the upgrade
                      Time or Height is

                      reached and the software will exit.
                  time:
                    type: string
                    format: date-time
                    description: >-
                      Deprecated: Time based upgrades have been deprecated. Time
                      based upgrade logic

                      has been removed from the SDK.

                      If this field is not empty, an error will be thrown.
                  height:
                    type: string
                    format: int64
                    description: |-
                      The height at which the upgrade must be performed.
                      Only used if Time is not set.
                  info:
                    type: string
                    title: >-
                      Any application specific upgrade info to be included
                      on-chain

                      such as a git commit that validators could automatically
                      upgrade to
                  upgraded_client_state:
                    type: object
                    properties:
                      type_url:
                        type: string
                        description: >-
                          A URL/resource name that uniquely identifies the type
                          of the serialized

                          protocol buffer message. This string must contain at
                          least

                          one "/" character. The last segment of the URL's path
                          must represent

                          the fully qualified name of the type (as in

                          `path/google.protobuf.Duration`). The name should be
                          in a canonical form

                          (e.g., leading "." is not accepted).


                          In practice, teams usually precompile into the binary
                          all types that they

                          expect it to use in the context of Any. However, for
                          URLs which use the

                          scheme `http`, `https`, or no scheme, one can
                          optionally set up a type

                          server that maps type URLs to message definitions as
                          follows:


                          * If no scheme is provided, `https` is assumed.

                          * An HTTP GET on the URL must yield a
                          [google.protobuf.Type][]
                            value in binary format, or produce an error.
                          * Applications are allowed to cache lookup results
                          based on the
                            URL, or have them precompiled into a binary to avoid any
                            lookup. Therefore, binary compatibility needs to be preserved
                            on changes to types. (Use versioned type names to manage
                            breaking changes.)

                          Note: this functionality is not currently available in
                          the official

                          protobuf release, and it is not used for type URLs
                          beginning with

                          type.googleapis.com.


                          Schemes other than `http`, `https` (or the empty
                          scheme) might be

                          used with implementation specific semantics.
                      value:
                        type: string
                        format: byte
                        description: >-
                          Must be a valid serialized protocol buffer of the
                          above specified type.
                    description: >-
                      `Any` contains an arbitrary serialized protocol buffer
                      message along with a

                      URL that describes the type of the serialized message.


                      Protobuf library provides support to pack/unpack Any
                      values in the form

                      of utility functions or additional generated methods of
                      the Any type.


                      Example 1: Pack and unpack a message in C++.

                          Foo foo = ...;
                          Any any;
                          any.PackFrom(foo);
                          ...
                          if (any.UnpackTo(&foo)) {
                            ...
                          }

                      Example 2: Pack and unpack a message in Java.

                          Foo foo = ...;
                          Any any = Any.pack(foo);
                          ...
                          if (any.is(Foo.class)) {
                            foo = any.unpack(Foo.class);
                          }

                       Example 3: Pack and unpack a message in Python.

                          foo = Foo(...)
                          any = Any()
                          any.Pack(foo)
                          ...
                          if any.Is(Foo.DESCRIPTOR):
                            any.Unpack(foo)
                            ...

                       Example 4: Pack and unpack a message in Go

                           foo := &pb.Foo{...}
                           any, err := ptypes.MarshalAny(foo)
                           ...
                           foo := &pb.Foo{}
                           if err := ptypes.UnmarshalAny(any, foo); err != nil {
                             ...
                           }

                      The pack methods provided by protobuf library will by
                      default use

                      'type.googleapis.com/full.type.name' as the type URL and
                      the unpack

                      methods only use the fully qualified type name after the
                      last '/'

                      in the type URL, for example "foo.bar.com/x/y.z" will
                      yield type

                      name "y.z".



                      JSON

                      ====

                      The JSON representation of an `Any` value uses the regular

                      representation of the deserialized, embedded message, with
                      an

                      additional field `@type` which contains the type URL.
                      Example:

                          package google.profile;
                          message Person {
                            string first_name = 1;
                            string last_name = 2;
                          }

                          {
                            "@type": "type.googleapis.com/google.profile.Person",
                            "firstName": <string>,
                            "lastName": <string>
                          }

                      If the embedded message type is well-known and has a
                      custom JSON

                      representation, that representation will be embedded
                      adding a field

                      `value` which holds the custom JSON in addition to the
                      `@type`

                      field. Example (for message [google.protobuf.Duration][]):

                          {
                            "@type": "type.googleapis.com/google.protobuf.Duration",
                            "value": "1.212s"
                          }
            description: >-
              QueryCurrentPlanResponse is the response type for the
              Query/CurrentPlan RPC

              method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      tags:
        - Query
  /cosmos/upgrade/v1beta1/module_versions:
    get:
      summary: ModuleVersions queries the list of module versions from state.
      description: 'Since: cosmos-sdk 0.43'
      operationId: ModuleVersions
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              module_versions:
                type: array
                items:
                  type: object
                  properties:
                    name:
                      type: string
                      title: name of the app module
                    version:
                      type: string
                      format: uint64
                      title: consensus version of the app module
                  description: |-
                    ModuleVersion specifies a module and its consensus version.

                    Since: cosmos-sdk 0.43
                description: >-
                  module_versions is a list of module names with their consensus
                  versions.
            description: >-
              QueryModuleVersionsResponse is the response type for the
              Query/ModuleVersions

              RPC method.


              Since: cosmos-sdk 0.43
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: module_name
          description: |-
            module_name is a field to query a specific module
            consensus version from state. Leaving this empty will
            fetch the full list of module versions from state.
          in: query
          required: false
          type: string
      tags:
        - Query
  /cosmos/upgrade/v1beta1/upgraded_consensus_state/{last_height}:
    get:
      summary: >-
        UpgradedConsensusState queries the consensus state that will serve

        as a trusted kernel for the next version of this chain. It will only be

        stored at the last height of this chain.

        UpgradedConsensusState RPC not supported with legacy querier

        This rpc is deprecated now that IBC has its own replacement

        (https://github.com/cosmos/ibc-go/blob/2c880a22e9f9cc75f62b527ca94aa75ce1106001/proto/ibc/core/client/v1/query.proto#L54)
      operationId: UpgradedConsensusState
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              upgraded_consensus_state:
                type: string
                format: byte
                title: 'Since: cosmos-sdk 0.43'
            description: >-
              QueryUpgradedConsensusStateResponse is the response type for the
              Query/UpgradedConsensusState

              RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: last_height
          description: |-
            last height of the current chain must be sent in request
            as this is the height under which next consensus state is stored
          in: path
          required: true
          type: string
          format: int64
      tags:
        - Query
  /cosmos/authz/v1beta1/grants:
    get:
      summary: Returns list of `Authorization`, granted to the grantee by the granter.
      operationId: Grants
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              grants:
                type: array
                items:
                  type: object
                  properties:
                    authorization:
                      type: object
                      properties:
                        type_url:
                          type: string
                          description: >-
                            A URL/resource name that uniquely identifies the
                            type of the serialized

                            protocol buffer message. This string must contain at
                            least

                            one "/" character. The last segment of the URL's
                            path must represent

                            the fully qualified name of the type (as in

                            `path/google.protobuf.Duration`). The name should be
                            in a canonical form

                            (e.g., leading "." is not accepted).


                            In practice, teams usually precompile into the
                            binary all types that they

                            expect it to use in the context of Any. However, for
                            URLs which use the

                            scheme `http`, `https`, or no scheme, one can
                            optionally set up a type

                            server that maps type URLs to message definitions as
                            follows:


                            * If no scheme is provided, `https` is assumed.

                            * An HTTP GET on the URL must yield a
                            [google.protobuf.Type][]
                              value in binary format, or produce an error.
                            * Applications are allowed to cache lookup results
                            based on the
                              URL, or have them precompiled into a binary to avoid any
                              lookup. Therefore, binary compatibility needs to be preserved
                              on changes to types. (Use versioned type names to manage
                              breaking changes.)

                            Note: this functionality is not currently available
                            in the official

                            protobuf release, and it is not used for type URLs
                            beginning with

                            type.googleapis.com.


                            Schemes other than `http`, `https` (or the empty
                            scheme) might be

                            used with implementation specific semantics.
                        value:
                          type: string
                          format: byte
                          description: >-
                            Must be a valid serialized protocol buffer of the
                            above specified type.
                      description: >-
                        `Any` contains an arbitrary serialized protocol buffer
                        message along with a

                        URL that describes the type of the serialized message.


                        Protobuf library provides support to pack/unpack Any
                        values in the form

                        of utility functions or additional generated methods of
                        the Any type.


                        Example 1: Pack and unpack a message in C++.

                            Foo foo = ...;
                            Any any;
                            any.PackFrom(foo);
                            ...
                            if (any.UnpackTo(&foo)) {
                              ...
                            }

                        Example 2: Pack and unpack a message in Java.

                            Foo foo = ...;
                            Any any = Any.pack(foo);
                            ...
                            if (any.is(Foo.class)) {
                              foo = any.unpack(Foo.class);
                            }

                         Example 3: Pack and unpack a message in Python.

                            foo = Foo(...)
                            any = Any()
                            any.Pack(foo)
                            ...
                            if any.Is(Foo.DESCRIPTOR):
                              any.Unpack(foo)
                              ...

                         Example 4: Pack and unpack a message in Go

                             foo := &pb.Foo{...}
                             any, err := ptypes.MarshalAny(foo)
                             ...
                             foo := &pb.Foo{}
                             if err := ptypes.UnmarshalAny(any, foo); err != nil {
                               ...
                             }

                        The pack methods provided by protobuf library will by
                        default use

                        'type.googleapis.com/full.type.name' as the type URL and
                        the unpack

                        methods only use the fully qualified type name after the
                        last '/'

                        in the type URL, for example "foo.bar.com/x/y.z" will
                        yield type

                        name "y.z".



                        JSON

                        ====

                        The JSON representation of an `Any` value uses the
                        regular

                        representation of the deserialized, embedded message,
                        with an

                        additional field `@type` which contains the type URL.
                        Example:

                            package google.profile;
                            message Person {
                              string first_name = 1;
                              string last_name = 2;
                            }

                            {
                              "@type": "type.googleapis.com/google.profile.Person",
                              "firstName": <string>,
                              "lastName": <string>
                            }

                        If the embedded message type is well-known and has a
                        custom JSON

                        representation, that representation will be embedded
                        adding a field

                        `value` which holds the custom JSON in addition to the
                        `@type`

                        field. Example (for message
                        [google.protobuf.Duration][]):

                            {
                              "@type": "type.googleapis.com/google.protobuf.Duration",
                              "value": "1.212s"
                            }
                    expiration:
                      type: string
                      format: date-time
                      title: >-
                        time when the grant will expire and will be pruned. If
                        null, then the grant

                        doesn't have a time expiration (other conditions  in
                        `authorization`

                        may apply to invalidate the grant)
                  description: |-
                    Grant gives permissions to execute
                    the provide method with expiration time.
                description: >-
                  authorizations is a list of grants granted for grantee by
                  granter.
              pagination:
                description: pagination defines an pagination for the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QueryGrantsResponse is the response type for the
              Query/Authorizations RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: granter
          in: query
          required: false
          type: string
        - name: grantee
          in: query
          required: false
          type: string
        - name: msg_type_url
          description: >-
            Optional, msg_type_url, when set, will query only grants matching
            given msg type.
          in: query
          required: false
          type: string
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/authz/v1beta1/grants/grantee/{grantee}:
    get:
      summary: GranteeGrants returns a list of `GrantAuthorization` by grantee.
      description: 'Since: cosmos-sdk 0.46'
      operationId: GranteeGrants
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              grants:
                type: array
                items:
                  type: object
                  properties:
                    granter:
                      type: string
                    grantee:
                      type: string
                    authorization:
                      type: object
                      properties:
                        type_url:
                          type: string
                          description: >-
                            A URL/resource name that uniquely identifies the
                            type of the serialized

                            protocol buffer message. This string must contain at
                            least

                            one "/" character. The last segment of the URL's
                            path must represent

                            the fully qualified name of the type (as in

                            `path/google.protobuf.Duration`). The name should be
                            in a canonical form

                            (e.g., leading "." is not accepted).


                            In practice, teams usually precompile into the
                            binary all types that they

                            expect it to use in the context of Any. However, for
                            URLs which use the

                            scheme `http`, `https`, or no scheme, one can
                            optionally set up a type

                            server that maps type URLs to message definitions as
                            follows:


                            * If no scheme is provided, `https` is assumed.

                            * An HTTP GET on the URL must yield a
                            [google.protobuf.Type][]
                              value in binary format, or produce an error.
                            * Applications are allowed to cache lookup results
                            based on the
                              URL, or have them precompiled into a binary to avoid any
                              lookup. Therefore, binary compatibility needs to be preserved
                              on changes to types. (Use versioned type names to manage
                              breaking changes.)

                            Note: this functionality is not currently available
                            in the official

                            protobuf release, and it is not used for type URLs
                            beginning with

                            type.googleapis.com.


                            Schemes other than `http`, `https` (or the empty
                            scheme) might be

                            used with implementation specific semantics.
                        value:
                          type: string
                          format: byte
                          description: >-
                            Must be a valid serialized protocol buffer of the
                            above specified type.
                      description: >-
                        `Any` contains an arbitrary serialized protocol buffer
                        message along with a

                        URL that describes the type of the serialized message.


                        Protobuf library provides support to pack/unpack Any
                        values in the form

                        of utility functions or additional generated methods of
                        the Any type.


                        Example 1: Pack and unpack a message in C++.

                            Foo foo = ...;
                            Any any;
                            any.PackFrom(foo);
                            ...
                            if (any.UnpackTo(&foo)) {
                              ...
                            }

                        Example 2: Pack and unpack a message in Java.

                            Foo foo = ...;
                            Any any = Any.pack(foo);
                            ...
                            if (any.is(Foo.class)) {
                              foo = any.unpack(Foo.class);
                            }

                         Example 3: Pack and unpack a message in Python.

                            foo = Foo(...)
                            any = Any()
                            any.Pack(foo)
                            ...
                            if any.Is(Foo.DESCRIPTOR):
                              any.Unpack(foo)
                              ...

                         Example 4: Pack and unpack a message in Go

                             foo := &pb.Foo{...}
                             any, err := ptypes.MarshalAny(foo)
                             ...
                             foo := &pb.Foo{}
                             if err := ptypes.UnmarshalAny(any, foo); err != nil {
                               ...
                             }

                        The pack methods provided by protobuf library will by
                        default use

                        'type.googleapis.com/full.type.name' as the type URL and
                        the unpack

                        methods only use the fully qualified type name after the
                        last '/'

                        in the type URL, for example "foo.bar.com/x/y.z" will
                        yield type

                        name "y.z".



                        JSON

                        ====

                        The JSON representation of an `Any` value uses the
                        regular

                        representation of the deserialized, embedded message,
                        with an

                        additional field `@type` which contains the type URL.
                        Example:

                            package google.profile;
                            message Person {
                              string first_name = 1;
                              string last_name = 2;
                            }

                            {
                              "@type": "type.googleapis.com/google.profile.Person",
                              "firstName": <string>,
                              "lastName": <string>
                            }

                        If the embedded message type is well-known and has a
                        custom JSON

                        representation, that representation will be embedded
                        adding a field

                        `value` which holds the custom JSON in addition to the
                        `@type`

                        field. Example (for message
                        [google.protobuf.Duration][]):

                            {
                              "@type": "type.googleapis.com/google.protobuf.Duration",
                              "value": "1.212s"
                            }
                    expiration:
                      type: string
                      format: date-time
                  title: >-
                    GrantAuthorization extends a grant with both the addresses
                    of the grantee and granter.

                    It is used in genesis.proto and query.proto
                description: grants is a list of grants granted to the grantee.
              pagination:
                description: pagination defines an pagination for the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QueryGranteeGrantsResponse is the response type for the
              Query/GranteeGrants RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: grantee
          in: path
          required: true
          type: string
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/authz/v1beta1/grants/granter/{granter}:
    get:
      summary: GranterGrants returns list of `GrantAuthorization`, granted by granter.
      description: 'Since: cosmos-sdk 0.46'
      operationId: GranterGrants
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              grants:
                type: array
                items:
                  type: object
                  properties:
                    granter:
                      type: string
                    grantee:
                      type: string
                    authorization:
                      type: object
                      properties:
                        type_url:
                          type: string
                          description: >-
                            A URL/resource name that uniquely identifies the
                            type of the serialized

                            protocol buffer message. This string must contain at
                            least

                            one "/" character. The last segment of the URL's
                            path must represent

                            the fully qualified name of the type (as in

                            `path/google.protobuf.Duration`). The name should be
                            in a canonical form

                            (e.g., leading "." is not accepted).


                            In practice, teams usually precompile into the
                            binary all types that they

                            expect it to use in the context of Any. However, for
                            URLs which use the

                            scheme `http`, `https`, or no scheme, one can
                            optionally set up a type

                            server that maps type URLs to message definitions as
                            follows:


                            * If no scheme is provided, `https` is assumed.

                            * An HTTP GET on the URL must yield a
                            [google.protobuf.Type][]
                              value in binary format, or produce an error.
                            * Applications are allowed to cache lookup results
                            based on the
                              URL, or have them precompiled into a binary to avoid any
                              lookup. Therefore, binary compatibility needs to be preserved
                              on changes to types. (Use versioned type names to manage
                              breaking changes.)

                            Note: this functionality is not currently available
                            in the official

                            protobuf release, and it is not used for type URLs
                            beginning with

                            type.googleapis.com.


                            Schemes other than `http`, `https` (or the empty
                            scheme) might be

                            used with implementation specific semantics.
                        value:
                          type: string
                          format: byte
                          description: >-
                            Must be a valid serialized protocol buffer of the
                            above specified type.
                      description: >-
                        `Any` contains an arbitrary serialized protocol buffer
                        message along with a

                        URL that describes the type of the serialized message.


                        Protobuf library provides support to pack/unpack Any
                        values in the form

                        of utility functions or additional generated methods of
                        the Any type.


                        Example 1: Pack and unpack a message in C++.

                            Foo foo = ...;
                            Any any;
                            any.PackFrom(foo);
                            ...
                            if (any.UnpackTo(&foo)) {
                              ...
                            }

                        Example 2: Pack and unpack a message in Java.

                            Foo foo = ...;
                            Any any = Any.pack(foo);
                            ...
                            if (any.is(Foo.class)) {
                              foo = any.unpack(Foo.class);
                            }

                         Example 3: Pack and unpack a message in Python.

                            foo = Foo(...)
                            any = Any()
                            any.Pack(foo)
                            ...
                            if any.Is(Foo.DESCRIPTOR):
                              any.Unpack(foo)
                              ...

                         Example 4: Pack and unpack a message in Go

                             foo := &pb.Foo{...}
                             any, err := ptypes.MarshalAny(foo)
                             ...
                             foo := &pb.Foo{}
                             if err := ptypes.UnmarshalAny(any, foo); err != nil {
                               ...
                             }

                        The pack methods provided by protobuf library will by
                        default use

                        'type.googleapis.com/full.type.name' as the type URL and
                        the unpack

                        methods only use the fully qualified type name after the
                        last '/'

                        in the type URL, for example "foo.bar.com/x/y.z" will
                        yield type

                        name "y.z".



                        JSON

                        ====

                        The JSON representation of an `Any` value uses the
                        regular

                        representation of the deserialized, embedded message,
                        with an

                        additional field `@type` which contains the type URL.
                        Example:

                            package google.profile;
                            message Person {
                              string first_name = 1;
                              string last_name = 2;
                            }

                            {
                              "@type": "type.googleapis.com/google.profile.Person",
                              "firstName": <string>,
                              "lastName": <string>
                            }

                        If the embedded message type is well-known and has a
                        custom JSON

                        representation, that representation will be embedded
                        adding a field

                        `value` which holds the custom JSON in addition to the
                        `@type`

                        field. Example (for message
                        [google.protobuf.Duration][]):

                            {
                              "@type": "type.googleapis.com/google.protobuf.Duration",
                              "value": "1.212s"
                            }
                    expiration:
                      type: string
                      format: date-time
                  title: >-
                    GrantAuthorization extends a grant with both the addresses
                    of the grantee and granter.

                    It is used in genesis.proto and query.proto
                description: grants is a list of grants granted by the granter.
              pagination:
                description: pagination defines an pagination for the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QueryGranterGrantsResponse is the response type for the
              Query/GranterGrants RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: granter
          in: path
          required: true
          type: string
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/feegrant/v1beta1/allowance/{granter}/{grantee}:
    get:
      summary: Allowance returns fee granted to the grantee by the granter.
      operationId: Allowance
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              allowance:
                description: allowance is a allowance granted for grantee by granter.
                type: object
                properties:
                  granter:
                    type: string
                    description: >-
                      granter is the address of the user granting an allowance
                      of their funds.
                  grantee:
                    type: string
                    description: >-
                      grantee is the address of the user being granted an
                      allowance of another user's funds.
                  allowance:
                    description: >-
                      allowance can be any of basic, periodic, allowed fee
                      allowance.
                    type: object
                    properties:
                      type_url:
                        type: string
                        description: >-
                          A URL/resource name that uniquely identifies the type
                          of the serialized

                          protocol buffer message. This string must contain at
                          least

                          one "/" character. The last segment of the URL's path
                          must represent

                          the fully qualified name of the type (as in

                          `path/google.protobuf.Duration`). The name should be
                          in a canonical form

                          (e.g., leading "." is not accepted).


                          In practice, teams usually precompile into the binary
                          all types that they

                          expect it to use in the context of Any. However, for
                          URLs which use the

                          scheme `http`, `https`, or no scheme, one can
                          optionally set up a type

                          server that maps type URLs to message definitions as
                          follows:


                          * If no scheme is provided, `https` is assumed.

                          * An HTTP GET on the URL must yield a
                          [google.protobuf.Type][]
                            value in binary format, or produce an error.
                          * Applications are allowed to cache lookup results
                          based on the
                            URL, or have them precompiled into a binary to avoid any
                            lookup. Therefore, binary compatibility needs to be preserved
                            on changes to types. (Use versioned type names to manage
                            breaking changes.)

                          Note: this functionality is not currently available in
                          the official

                          protobuf release, and it is not used for type URLs
                          beginning with

                          type.googleapis.com.


                          Schemes other than `http`, `https` (or the empty
                          scheme) might be

                          used with implementation specific semantics.
                      value:
                        type: string
                        format: byte
                        description: >-
                          Must be a valid serialized protocol buffer of the
                          above specified type.
                title: >-
                  Grant is stored in the KVStore to record a grant with full
                  context
            description: >-
              QueryAllowanceResponse is the response type for the
              Query/Allowance RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: granter
          description: >-
            granter is the address of the user granting an allowance of their
            funds.
          in: path
          required: true
          type: string
        - name: grantee
          description: >-
            grantee is the address of the user being granted an allowance of
            another user's funds.
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/feegrant/v1beta1/allowances/{grantee}:
    get:
      summary: Allowances returns all the grants for address.
      operationId: Allowances
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              allowances:
                type: array
                items:
                  type: object
                  properties:
                    granter:
                      type: string
                      description: >-
                        granter is the address of the user granting an allowance
                        of their funds.
                    grantee:
                      type: string
                      description: >-
                        grantee is the address of the user being granted an
                        allowance of another user's funds.
                    allowance:
                      description: >-
                        allowance can be any of basic, periodic, allowed fee
                        allowance.
                      type: object
                      properties:
                        type_url:
                          type: string
                          description: >-
                            A URL/resource name that uniquely identifies the
                            type of the serialized

                            protocol buffer message. This string must contain at
                            least

                            one "/" character. The last segment of the URL's
                            path must represent

                            the fully qualified name of the type (as in

                            `path/google.protobuf.Duration`). The name should be
                            in a canonical form

                            (e.g., leading "." is not accepted).


                            In practice, teams usually precompile into the
                            binary all types that they

                            expect it to use in the context of Any. However, for
                            URLs which use the

                            scheme `http`, `https`, or no scheme, one can
                            optionally set up a type

                            server that maps type URLs to message definitions as
                            follows:


                            * If no scheme is provided, `https` is assumed.

                            * An HTTP GET on the URL must yield a
                            [google.protobuf.Type][]
                              value in binary format, or produce an error.
                            * Applications are allowed to cache lookup results
                            based on the
                              URL, or have them precompiled into a binary to avoid any
                              lookup. Therefore, binary compatibility needs to be preserved
                              on changes to types. (Use versioned type names to manage
                              breaking changes.)

                            Note: this functionality is not currently available
                            in the official

                            protobuf release, and it is not used for type URLs
                            beginning with

                            type.googleapis.com.


                            Schemes other than `http`, `https` (or the empty
                            scheme) might be

                            used with implementation specific semantics.
                        value:
                          type: string
                          format: byte
                          description: >-
                            Must be a valid serialized protocol buffer of the
                            above specified type.
                  title: >-
                    Grant is stored in the KVStore to record a grant with full
                    context
                description: allowances are allowance's granted for grantee by granter.
              pagination:
                description: pagination defines an pagination for the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QueryAllowancesResponse is the response type for the
              Query/Allowances RPC method.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: grantee
          in: path
          required: true
          type: string
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/feegrant/v1beta1/issued/{granter}:
    get:
      summary: AllowancesByGranter returns all the grants given by an address
      description: 'Since: cosmos-sdk 0.46'
      operationId: AllowancesByGranter
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              allowances:
                type: array
                items:
                  type: object
                  properties:
                    granter:
                      type: string
                      description: >-
                        granter is the address of the user granting an allowance
                        of their funds.
                    grantee:
                      type: string
                      description: >-
                        grantee is the address of the user being granted an
                        allowance of another user's funds.
                    allowance:
                      description: >-
                        allowance can be any of basic, periodic, allowed fee
                        allowance.
                      type: object
                      properties:
                        type_url:
                          type: string
                          description: >-
                            A URL/resource name that uniquely identifies the
                            type of the serialized

                            protocol buffer message. This string must contain at
                            least

                            one "/" character. The last segment of the URL's
                            path must represent

                            the fully qualified name of the type (as in

                            `path/google.protobuf.Duration`). The name should be
                            in a canonical form

                            (e.g., leading "." is not accepted).


                            In practice, teams usually precompile into the
                            binary all types that they

                            expect it to use in the context of Any. However, for
                            URLs which use the

                            scheme `http`, `https`, or no scheme, one can
                            optionally set up a type

                            server that maps type URLs to message definitions as
                            follows:


                            * If no scheme is provided, `https` is assumed.

                            * An HTTP GET on the URL must yield a
                            [google.protobuf.Type][]
                              value in binary format, or produce an error.
                            * Applications are allowed to cache lookup results
                            based on the
                              URL, or have them precompiled into a binary to avoid any
                              lookup. Therefore, binary compatibility needs to be preserved
                              on changes to types. (Use versioned type names to manage
                              breaking changes.)

                            Note: this functionality is not currently available
                            in the official

                            protobuf release, and it is not used for type URLs
                            beginning with

                            type.googleapis.com.


                            Schemes other than `http`, `https` (or the empty
                            scheme) might be

                            used with implementation specific semantics.
                        value:
                          type: string
                          format: byte
                          description: >-
                            Must be a valid serialized protocol buffer of the
                            above specified type.
                  title: >-
                    Grant is stored in the KVStore to record a grant with full
                    context
                description: allowances that have been issued by the granter.
              pagination:
                description: pagination defines an pagination for the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QueryAllowancesByGranterResponse is the response type for the
              Query/AllowancesByGranter RPC method.


              Since: cosmos-sdk 0.46
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: granter
          in: path
          required: true
          type: string
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/nft/v1beta1/balance/{owner}/{class_id}:
    get:
      summary: >-
        Balance queries the number of NFTs of a given class owned by the owner,
        same as balanceOf in ERC721
      operationId: NftBalance
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              amount:
                type: string
                format: uint64
            title: >-
              QueryBalanceResponse is the response type for the Query/Balance
              RPC method
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: owner
          in: path
          required: true
          type: string
        - name: class_id
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/nft/v1beta1/classes:
    get:
      summary: Classes queries all NFT classes
      operationId: Classes
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              classes:
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: string
                      title: >-
                        id defines the unique identifier of the NFT
                        classification, similar to the contract address of
                        ERC721
                    name:
                      type: string
                      title: >-
                        name defines the human-readable name of the NFT
                        classification. Optional
                    symbol:
                      type: string
                      title: >-
                        symbol is an abbreviated name for nft classification.
                        Optional
                    description:
                      type: string
                      title: >-
                        description is a brief description of nft
                        classification. Optional
                    uri:
                      type: string
                      title: >-
                        uri for the class metadata stored off chain. It can
                        define schema for Class and NFT `Data` attributes.
                        Optional
                    uri_hash:
                      type: string
                      title: >-
                        uri_hash is a hash of the document pointed by uri.
                        Optional
                    data:
                      type: object
                      properties:
                        type_url:
                          type: string
                          description: >-
                            A URL/resource name that uniquely identifies the
                            type of the serialized

                            protocol buffer message. This string must contain at
                            least

                            one "/" character. The last segment of the URL's
                            path must represent

                            the fully qualified name of the type (as in

                            `path/google.protobuf.Duration`). The name should be
                            in a canonical form

                            (e.g., leading "." is not accepted).


                            In practice, teams usually precompile into the
                            binary all types that they

                            expect it to use in the context of Any. However, for
                            URLs which use the

                            scheme `http`, `https`, or no scheme, one can
                            optionally set up a type

                            server that maps type URLs to message definitions as
                            follows:


                            * If no scheme is provided, `https` is assumed.

                            * An HTTP GET on the URL must yield a
                            [google.protobuf.Type][]
                              value in binary format, or produce an error.
                            * Applications are allowed to cache lookup results
                            based on the
                              URL, or have them precompiled into a binary to avoid any
                              lookup. Therefore, binary compatibility needs to be preserved
                              on changes to types. (Use versioned type names to manage
                              breaking changes.)

                            Note: this functionality is not currently available
                            in the official

                            protobuf release, and it is not used for type URLs
                            beginning with

                            type.googleapis.com.


                            Schemes other than `http`, `https` (or the empty
                            scheme) might be

                            used with implementation specific semantics.
                        value:
                          type: string
                          format: byte
                          description: >-
                            Must be a valid serialized protocol buffer of the
                            above specified type.
                      description: >-
                        `Any` contains an arbitrary serialized protocol buffer
                        message along with a

                        URL that describes the type of the serialized message.


                        Protobuf library provides support to pack/unpack Any
                        values in the form

                        of utility functions or additional generated methods of
                        the Any type.


                        Example 1: Pack and unpack a message in C++.

                            Foo foo = ...;
                            Any any;
                            any.PackFrom(foo);
                            ...
                            if (any.UnpackTo(&foo)) {
                              ...
                            }

                        Example 2: Pack and unpack a message in Java.

                            Foo foo = ...;
                            Any any = Any.pack(foo);
                            ...
                            if (any.is(Foo.class)) {
                              foo = any.unpack(Foo.class);
                            }

                         Example 3: Pack and unpack a message in Python.

                            foo = Foo(...)
                            any = Any()
                            any.Pack(foo)
                            ...
                            if any.Is(Foo.DESCRIPTOR):
                              any.Unpack(foo)
                              ...

                         Example 4: Pack and unpack a message in Go

                             foo := &pb.Foo{...}
                             any, err := ptypes.MarshalAny(foo)
                             ...
                             foo := &pb.Foo{}
                             if err := ptypes.UnmarshalAny(any, foo); err != nil {
                               ...
                             }

                        The pack methods provided by protobuf library will by
                        default use

                        'type.googleapis.com/full.type.name' as the type URL and
                        the unpack

                        methods only use the fully qualified type name after the
                        last '/'

                        in the type URL, for example "foo.bar.com/x/y.z" will
                        yield type

                        name "y.z".



                        JSON

                        ====

                        The JSON representation of an `Any` value uses the
                        regular

                        representation of the deserialized, embedded message,
                        with an

                        additional field `@type` which contains the type URL.
                        Example:

                            package google.profile;
                            message Person {
                              string first_name = 1;
                              string last_name = 2;
                            }

                            {
                              "@type": "type.googleapis.com/google.profile.Person",
                              "firstName": <string>,
                              "lastName": <string>
                            }

                        If the embedded message type is well-known and has a
                        custom JSON

                        representation, that representation will be embedded
                        adding a field

                        `value` which holds the custom JSON in addition to the
                        `@type`

                        field. Example (for message
                        [google.protobuf.Duration][]):

                            {
                              "@type": "type.googleapis.com/google.protobuf.Duration",
                              "value": "1.212s"
                            }
                      title: >-
                        data is the app specific metadata of the NFT class.
                        Optional
                  description: Class defines the class of the nft type.
              pagination:
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
                description: >-
                  PageResponse is to be embedded in gRPC response messages where
                  the

                  corresponding request message has used PageRequest.

                   message SomeResponse {
                           repeated Bar results = 1;
                           PageResponse page = 2;
                   }
            title: >-
              QueryClassesResponse is the response type for the Query/Classes
              RPC method
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/nft/v1beta1/classes/{class_id}:
    get:
      summary: Class queries an NFT class based on its id
      operationId: Class
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              class:
                type: object
                properties:
                  id:
                    type: string
                    title: >-
                      id defines the unique identifier of the NFT
                      classification, similar to the contract address of ERC721
                  name:
                    type: string
                    title: >-
                      name defines the human-readable name of the NFT
                      classification. Optional
                  symbol:
                    type: string
                    title: >-
                      symbol is an abbreviated name for nft classification.
                      Optional
                  description:
                    type: string
                    title: >-
                      description is a brief description of nft classification.
                      Optional
                  uri:
                    type: string
                    title: >-
                      uri for the class metadata stored off chain. It can define
                      schema for Class and NFT `Data` attributes. Optional
                  uri_hash:
                    type: string
                    title: >-
                      uri_hash is a hash of the document pointed by uri.
                      Optional
                  data:
                    type: object
                    properties:
                      type_url:
                        type: string
                        description: >-
                          A URL/resource name that uniquely identifies the type
                          of the serialized

                          protocol buffer message. This string must contain at
                          least

                          one "/" character. The last segment of the URL's path
                          must represent

                          the fully qualified name of the type (as in

                          `path/google.protobuf.Duration`). The name should be
                          in a canonical form

                          (e.g., leading "." is not accepted).


                          In practice, teams usually precompile into the binary
                          all types that they

                          expect it to use in the context of Any. However, for
                          URLs which use the

                          scheme `http`, `https`, or no scheme, one can
                          optionally set up a type

                          server that maps type URLs to message definitions as
                          follows:


                          * If no scheme is provided, `https` is assumed.

                          * An HTTP GET on the URL must yield a
                          [google.protobuf.Type][]
                            value in binary format, or produce an error.
                          * Applications are allowed to cache lookup results
                          based on the
                            URL, or have them precompiled into a binary to avoid any
                            lookup. Therefore, binary compatibility needs to be preserved
                            on changes to types. (Use versioned type names to manage
                            breaking changes.)

                          Note: this functionality is not currently available in
                          the official

                          protobuf release, and it is not used for type URLs
                          beginning with

                          type.googleapis.com.


                          Schemes other than `http`, `https` (or the empty
                          scheme) might be

                          used with implementation specific semantics.
                      value:
                        type: string
                        format: byte
                        description: >-
                          Must be a valid serialized protocol buffer of the
                          above specified type.
                    description: >-
                      `Any` contains an arbitrary serialized protocol buffer
                      message along with a

                      URL that describes the type of the serialized message.


                      Protobuf library provides support to pack/unpack Any
                      values in the form

                      of utility functions or additional generated methods of
                      the Any type.


                      Example 1: Pack and unpack a message in C++.

                          Foo foo = ...;
                          Any any;
                          any.PackFrom(foo);
                          ...
                          if (any.UnpackTo(&foo)) {
                            ...
                          }

                      Example 2: Pack and unpack a message in Java.

                          Foo foo = ...;
                          Any any = Any.pack(foo);
                          ...
                          if (any.is(Foo.class)) {
                            foo = any.unpack(Foo.class);
                          }

                       Example 3: Pack and unpack a message in Python.

                          foo = Foo(...)
                          any = Any()
                          any.Pack(foo)
                          ...
                          if any.Is(Foo.DESCRIPTOR):
                            any.Unpack(foo)
                            ...

                       Example 4: Pack and unpack a message in Go

                           foo := &pb.Foo{...}
                           any, err := ptypes.MarshalAny(foo)
                           ...
                           foo := &pb.Foo{}
                           if err := ptypes.UnmarshalAny(any, foo); err != nil {
                             ...
                           }

                      The pack methods provided by protobuf library will by
                      default use

                      'type.googleapis.com/full.type.name' as the type URL and
                      the unpack

                      methods only use the fully qualified type name after the
                      last '/'

                      in the type URL, for example "foo.bar.com/x/y.z" will
                      yield type

                      name "y.z".



                      JSON

                      ====

                      The JSON representation of an `Any` value uses the regular

                      representation of the deserialized, embedded message, with
                      an

                      additional field `@type` which contains the type URL.
                      Example:

                          package google.profile;
                          message Person {
                            string first_name = 1;
                            string last_name = 2;
                          }

                          {
                            "@type": "type.googleapis.com/google.profile.Person",
                            "firstName": <string>,
                            "lastName": <string>
                          }

                      If the embedded message type is well-known and has a
                      custom JSON

                      representation, that representation will be embedded
                      adding a field

                      `value` which holds the custom JSON in addition to the
                      `@type`

                      field. Example (for message [google.protobuf.Duration][]):

                          {
                            "@type": "type.googleapis.com/google.protobuf.Duration",
                            "value": "1.212s"
                          }
                    title: >-
                      data is the app specific metadata of the NFT class.
                      Optional
                description: Class defines the class of the nft type.
            title: >-
              QueryClassResponse is the response type for the Query/Class RPC
              method
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: class_id
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/nft/v1beta1/nfts:
    get:
      summary: >-
        NFTs queries all NFTs of a given class or owner,choose at least one of
        the two, similar to tokenByIndex in

        ERC721Enumerable
      operationId: NFTs
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              nfts:
                type: array
                items:
                  type: object
                  properties:
                    class_id:
                      type: string
                      title: >-
                        class_id associated with the NFT, similar to the
                        contract address of ERC721
                    id:
                      type: string
                      title: id is a unique identifier of the NFT
                    uri:
                      type: string
                      title: uri for the NFT metadata stored off chain
                    uri_hash:
                      type: string
                      title: uri_hash is a hash of the document pointed by uri
                    data:
                      type: object
                      properties:
                        type_url:
                          type: string
                          description: >-
                            A URL/resource name that uniquely identifies the
                            type of the serialized

                            protocol buffer message. This string must contain at
                            least

                            one "/" character. The last segment of the URL's
                            path must represent

                            the fully qualified name of the type (as in

                            `path/google.protobuf.Duration`). The name should be
                            in a canonical form

                            (e.g., leading "." is not accepted).


                            In practice, teams usually precompile into the
                            binary all types that they

                            expect it to use in the context of Any. However, for
                            URLs which use the

                            scheme `http`, `https`, or no scheme, one can
                            optionally set up a type

                            server that maps type URLs to message definitions as
                            follows:


                            * If no scheme is provided, `https` is assumed.

                            * An HTTP GET on the URL must yield a
                            [google.protobuf.Type][]
                              value in binary format, or produce an error.
                            * Applications are allowed to cache lookup results
                            based on the
                              URL, or have them precompiled into a binary to avoid any
                              lookup. Therefore, binary compatibility needs to be preserved
                              on changes to types. (Use versioned type names to manage
                              breaking changes.)

                            Note: this functionality is not currently available
                            in the official

                            protobuf release, and it is not used for type URLs
                            beginning with

                            type.googleapis.com.


                            Schemes other than `http`, `https` (or the empty
                            scheme) might be

                            used with implementation specific semantics.
                        value:
                          type: string
                          format: byte
                          description: >-
                            Must be a valid serialized protocol buffer of the
                            above specified type.
                      description: >-
                        `Any` contains an arbitrary serialized protocol buffer
                        message along with a

                        URL that describes the type of the serialized message.


                        Protobuf library provides support to pack/unpack Any
                        values in the form

                        of utility functions or additional generated methods of
                        the Any type.


                        Example 1: Pack and unpack a message in C++.

                            Foo foo = ...;
                            Any any;
                            any.PackFrom(foo);
                            ...
                            if (any.UnpackTo(&foo)) {
                              ...
                            }

                        Example 2: Pack and unpack a message in Java.

                            Foo foo = ...;
                            Any any = Any.pack(foo);
                            ...
                            if (any.is(Foo.class)) {
                              foo = any.unpack(Foo.class);
                            }

                         Example 3: Pack and unpack a message in Python.

                            foo = Foo(...)
                            any = Any()
                            any.Pack(foo)
                            ...
                            if any.Is(Foo.DESCRIPTOR):
                              any.Unpack(foo)
                              ...

                         Example 4: Pack and unpack a message in Go

                             foo := &pb.Foo{...}
                             any, err := ptypes.MarshalAny(foo)
                             ...
                             foo := &pb.Foo{}
                             if err := ptypes.UnmarshalAny(any, foo); err != nil {
                               ...
                             }

                        The pack methods provided by protobuf library will by
                        default use

                        'type.googleapis.com/full.type.name' as the type URL and
                        the unpack

                        methods only use the fully qualified type name after the
                        last '/'

                        in the type URL, for example "foo.bar.com/x/y.z" will
                        yield type

                        name "y.z".



                        JSON

                        ====

                        The JSON representation of an `Any` value uses the
                        regular

                        representation of the deserialized, embedded message,
                        with an

                        additional field `@type` which contains the type URL.
                        Example:

                            package google.profile;
                            message Person {
                              string first_name = 1;
                              string last_name = 2;
                            }

                            {
                              "@type": "type.googleapis.com/google.profile.Person",
                              "firstName": <string>,
                              "lastName": <string>
                            }

                        If the embedded message type is well-known and has a
                        custom JSON

                        representation, that representation will be embedded
                        adding a field

                        `value` which holds the custom JSON in addition to the
                        `@type`

                        field. Example (for message
                        [google.protobuf.Duration][]):

                            {
                              "@type": "type.googleapis.com/google.protobuf.Duration",
                              "value": "1.212s"
                            }
                      title: data is an app specific data of the NFT. Optional
                  description: NFT defines the NFT.
              pagination:
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
                description: >-
                  PageResponse is to be embedded in gRPC response messages where
                  the

                  corresponding request message has used PageRequest.

                   message SomeResponse {
                           repeated Bar results = 1;
                           PageResponse page = 2;
                   }
            title: >-
              QueryNFTsResponse is the response type for the Query/NFTs RPC
              methods
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: class_id
          in: query
          required: false
          type: string
        - name: owner
          in: query
          required: false
          type: string
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/nft/v1beta1/nfts/{class_id}/{id}:
    get:
      summary: NFT queries an NFT based on its class and id.
      operationId: NFT
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              nft:
                type: object
                properties:
                  class_id:
                    type: string
                    title: >-
                      class_id associated with the NFT, similar to the contract
                      address of ERC721
                  id:
                    type: string
                    title: id is a unique identifier of the NFT
                  uri:
                    type: string
                    title: uri for the NFT metadata stored off chain
                  uri_hash:
                    type: string
                    title: uri_hash is a hash of the document pointed by uri
                  data:
                    type: object
                    properties:
                      type_url:
                        type: string
                        description: >-
                          A URL/resource name that uniquely identifies the type
                          of the serialized

                          protocol buffer message. This string must contain at
                          least

                          one "/" character. The last segment of the URL's path
                          must represent

                          the fully qualified name of the type (as in

                          `path/google.protobuf.Duration`). The name should be
                          in a canonical form

                          (e.g., leading "." is not accepted).


                          In practice, teams usually precompile into the binary
                          all types that they

                          expect it to use in the context of Any. However, for
                          URLs which use the

                          scheme `http`, `https`, or no scheme, one can
                          optionally set up a type

                          server that maps type URLs to message definitions as
                          follows:


                          * If no scheme is provided, `https` is assumed.

                          * An HTTP GET on the URL must yield a
                          [google.protobuf.Type][]
                            value in binary format, or produce an error.
                          * Applications are allowed to cache lookup results
                          based on the
                            URL, or have them precompiled into a binary to avoid any
                            lookup. Therefore, binary compatibility needs to be preserved
                            on changes to types. (Use versioned type names to manage
                            breaking changes.)

                          Note: this functionality is not currently available in
                          the official

                          protobuf release, and it is not used for type URLs
                          beginning with

                          type.googleapis.com.


                          Schemes other than `http`, `https` (or the empty
                          scheme) might be

                          used with implementation specific semantics.
                      value:
                        type: string
                        format: byte
                        description: >-
                          Must be a valid serialized protocol buffer of the
                          above specified type.
                    description: >-
                      `Any` contains an arbitrary serialized protocol buffer
                      message along with a

                      URL that describes the type of the serialized message.


                      Protobuf library provides support to pack/unpack Any
                      values in the form

                      of utility functions or additional generated methods of
                      the Any type.


                      Example 1: Pack and unpack a message in C++.

                          Foo foo = ...;
                          Any any;
                          any.PackFrom(foo);
                          ...
                          if (any.UnpackTo(&foo)) {
                            ...
                          }

                      Example 2: Pack and unpack a message in Java.

                          Foo foo = ...;
                          Any any = Any.pack(foo);
                          ...
                          if (any.is(Foo.class)) {
                            foo = any.unpack(Foo.class);
                          }

                       Example 3: Pack and unpack a message in Python.

                          foo = Foo(...)
                          any = Any()
                          any.Pack(foo)
                          ...
                          if any.Is(Foo.DESCRIPTOR):
                            any.Unpack(foo)
                            ...

                       Example 4: Pack and unpack a message in Go

                           foo := &pb.Foo{...}
                           any, err := ptypes.MarshalAny(foo)
                           ...
                           foo := &pb.Foo{}
                           if err := ptypes.UnmarshalAny(any, foo); err != nil {
                             ...
                           }

                      The pack methods provided by protobuf library will by
                      default use

                      'type.googleapis.com/full.type.name' as the type URL and
                      the unpack

                      methods only use the fully qualified type name after the
                      last '/'

                      in the type URL, for example "foo.bar.com/x/y.z" will
                      yield type

                      name "y.z".



                      JSON

                      ====

                      The JSON representation of an `Any` value uses the regular

                      representation of the deserialized, embedded message, with
                      an

                      additional field `@type` which contains the type URL.
                      Example:

                          package google.profile;
                          message Person {
                            string first_name = 1;
                            string last_name = 2;
                          }

                          {
                            "@type": "type.googleapis.com/google.profile.Person",
                            "firstName": <string>,
                            "lastName": <string>
                          }

                      If the embedded message type is well-known and has a
                      custom JSON

                      representation, that representation will be embedded
                      adding a field

                      `value` which holds the custom JSON in addition to the
                      `@type`

                      field. Example (for message [google.protobuf.Duration][]):

                          {
                            "@type": "type.googleapis.com/google.protobuf.Duration",
                            "value": "1.212s"
                          }
                    title: data is an app specific data of the NFT. Optional
                description: NFT defines the NFT.
            title: QueryNFTResponse is the response type for the Query/NFT RPC method
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: class_id
          in: path
          required: true
          type: string
        - name: id
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/nft/v1beta1/owner/{class_id}/{id}:
    get:
      summary: >-
        Owner queries the owner of the NFT based on its class and id, same as
        ownerOf in ERC721
      operationId: Owner
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              owner:
                type: string
            title: >-
              QueryOwnerResponse is the response type for the Query/Owner RPC
              method
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: class_id
          in: path
          required: true
          type: string
        - name: id
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/nft/v1beta1/supply/{class_id}:
    get:
      summary: >-
        Supply queries the number of NFTs from the given class, same as
        totalSupply of ERC721.
      operationId: Supply
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              amount:
                type: string
                format: uint64
            title: >-
              QuerySupplyResponse is the response type for the Query/Supply RPC
              method
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: class_id
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/group/v1/group_info/{group_id}:
    get:
      summary: GroupInfo queries group info based on group id.
      operationId: GroupInfo
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              info:
                description: info is the GroupInfo for the group.
                type: object
                properties:
                  id:
                    type: string
                    format: uint64
                    description: id is the unique ID of the group.
                  admin:
                    type: string
                    description: admin is the account address of the group's admin.
                  metadata:
                    type: string
                    description: >-
                      metadata is any arbitrary metadata to attached to the
                      group.
                  version:
                    type: string
                    format: uint64
                    title: >-
                      version is used to track changes to a group's membership
                      structure that

                      would break existing proposals. Whenever any members
                      weight is changed,

                      or any member is added or removed this version is
                      incremented and will

                      cause proposals based on older versions of this group to
                      fail
                  total_weight:
                    type: string
                    description: total_weight is the sum of the group members' weights.
                  created_at:
                    type: string
                    format: date-time
                    description: >-
                      created_at is a timestamp specifying when a group was
                      created.
            description: QueryGroupInfoResponse is the Query/GroupInfo response type.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: group_id
          description: group_id is the unique ID of the group.
          in: path
          required: true
          type: string
          format: uint64
      tags:
        - Query
  /cosmos/group/v1/group_members/{group_id}:
    get:
      summary: GroupMembers queries members of a group
      operationId: GroupMembers
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              members:
                type: array
                items:
                  type: object
                  properties:
                    group_id:
                      type: string
                      format: uint64
                      description: group_id is the unique ID of the group.
                    member:
                      description: member is the member data.
                      type: object
                      properties:
                        address:
                          type: string
                          description: address is the member's account address.
                        weight:
                          type: string
                          description: >-
                            weight is the member's voting weight that should be
                            greater than 0.
                        metadata:
                          type: string
                          description: >-
                            metadata is any arbitrary metadata attached to the
                            member.
                        added_at:
                          type: string
                          format: date-time
                          description: >-
                            added_at is a timestamp specifying when a member was
                            added.
                  description: >-
                    GroupMember represents the relationship between a group and
                    a member.
                description: members are the members of the group with given group_id.
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QueryGroupMembersResponse is the Query/GroupMembersResponse
              response type.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: group_id
          description: group_id is the unique ID of the group.
          in: path
          required: true
          type: string
          format: uint64
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/group/v1/group_policies_by_admin/{admin}:
    get:
      summary: GroupsByAdmin queries group policies by admin address.
      operationId: GroupPoliciesByAdmin
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              group_policies:
                type: array
                items:
                  type: object
                  properties:
                    address:
                      type: string
                      description: address is the account address of group policy.
                    group_id:
                      type: string
                      format: uint64
                      description: group_id is the unique ID of the group.
                    admin:
                      type: string
                      description: admin is the account address of the group admin.
                    metadata:
                      type: string
                      description: >-
                        metadata is any arbitrary metadata to attached to the
                        group policy.
                    version:
                      type: string
                      format: uint64
                      description: >-
                        version is used to track changes to a group's
                        GroupPolicyInfo structure that

                        would create a different result on a running proposal.
                    decision_policy:
                      type: object
                      properties:
                        type_url:
                          type: string
                          description: >-
                            A URL/resource name that uniquely identifies the
                            type of the serialized

                            protocol buffer message. This string must contain at
                            least

                            one "/" character. The last segment of the URL's
                            path must represent

                            the fully qualified name of the type (as in

                            `path/google.protobuf.Duration`). The name should be
                            in a canonical form

                            (e.g., leading "." is not accepted).


                            In practice, teams usually precompile into the
                            binary all types that they

                            expect it to use in the context of Any. However, for
                            URLs which use the

                            scheme `http`, `https`, or no scheme, one can
                            optionally set up a type

                            server that maps type URLs to message definitions as
                            follows:


                            * If no scheme is provided, `https` is assumed.

                            * An HTTP GET on the URL must yield a
                            [google.protobuf.Type][]
                              value in binary format, or produce an error.
                            * Applications are allowed to cache lookup results
                            based on the
                              URL, or have them precompiled into a binary to avoid any
                              lookup. Therefore, binary compatibility needs to be preserved
                              on changes to types. (Use versioned type names to manage
                              breaking changes.)

                            Note: this functionality is not currently available
                            in the official

                            protobuf release, and it is not used for type URLs
                            beginning with

                            type.googleapis.com.


                            Schemes other than `http`, `https` (or the empty
                            scheme) might be

                            used with implementation specific semantics.
                        value:
                          type: string
                          format: byte
                          description: >-
                            Must be a valid serialized protocol buffer of the
                            above specified type.
                      description: >-
                        `Any` contains an arbitrary serialized protocol buffer
                        message along with a

                        URL that describes the type of the serialized message.


                        Protobuf library provides support to pack/unpack Any
                        values in the form

                        of utility functions or additional generated methods of
                        the Any type.


                        Example 1: Pack and unpack a message in C++.

                            Foo foo = ...;
                            Any any;
                            any.PackFrom(foo);
                            ...
                            if (any.UnpackTo(&foo)) {
                              ...
                            }

                        Example 2: Pack and unpack a message in Java.

                            Foo foo = ...;
                            Any any = Any.pack(foo);
                            ...
                            if (any.is(Foo.class)) {
                              foo = any.unpack(Foo.class);
                            }

                         Example 3: Pack and unpack a message in Python.

                            foo = Foo(...)
                            any = Any()
                            any.Pack(foo)
                            ...
                            if any.Is(Foo.DESCRIPTOR):
                              any.Unpack(foo)
                              ...

                         Example 4: Pack and unpack a message in Go

                             foo := &pb.Foo{...}
                             any, err := ptypes.MarshalAny(foo)
                             ...
                             foo := &pb.Foo{}
                             if err := ptypes.UnmarshalAny(any, foo); err != nil {
                               ...
                             }

                        The pack methods provided by protobuf library will by
                        default use

                        'type.googleapis.com/full.type.name' as the type URL and
                        the unpack

                        methods only use the fully qualified type name after the
                        last '/'

                        in the type URL, for example "foo.bar.com/x/y.z" will
                        yield type

                        name "y.z".



                        JSON

                        ====

                        The JSON representation of an `Any` value uses the
                        regular

                        representation of the deserialized, embedded message,
                        with an

                        additional field `@type` which contains the type URL.
                        Example:

                            package google.profile;
                            message Person {
                              string first_name = 1;
                              string last_name = 2;
                            }

                            {
                              "@type": "type.googleapis.com/google.profile.Person",
                              "firstName": <string>,
                              "lastName": <string>
                            }

                        If the embedded message type is well-known and has a
                        custom JSON

                        representation, that representation will be embedded
                        adding a field

                        `value` which holds the custom JSON in addition to the
                        `@type`

                        field. Example (for message
                        [google.protobuf.Duration][]):

                            {
                              "@type": "type.googleapis.com/google.protobuf.Duration",
                              "value": "1.212s"
                            }
                    created_at:
                      type: string
                      format: date-time
                      description: >-
                        created_at is a timestamp specifying when a group policy
                        was created.
                  description: >-
                    GroupPolicyInfo represents the high-level on-chain
                    information for a group policy.
                description: >-
                  group_policies are the group policies info with provided
                  admin.
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QueryGroupPoliciesByAdminResponse is the
              Query/GroupPoliciesByAdmin response type.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: admin
          description: admin is the admin address of the group policy.
          in: path
          required: true
          type: string
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/group/v1/group_policies_by_group/{group_id}:
    get:
      summary: GroupPoliciesByGroup queries group policies by group id.
      operationId: GroupPoliciesByGroup
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              group_policies:
                type: array
                items:
                  type: object
                  properties:
                    address:
                      type: string
                      description: address is the account address of group policy.
                    group_id:
                      type: string
                      format: uint64
                      description: group_id is the unique ID of the group.
                    admin:
                      type: string
                      description: admin is the account address of the group admin.
                    metadata:
                      type: string
                      description: >-
                        metadata is any arbitrary metadata to attached to the
                        group policy.
                    version:
                      type: string
                      format: uint64
                      description: >-
                        version is used to track changes to a group's
                        GroupPolicyInfo structure that

                        would create a different result on a running proposal.
                    decision_policy:
                      type: object
                      properties:
                        type_url:
                          type: string
                          description: >-
                            A URL/resource name that uniquely identifies the
                            type of the serialized

                            protocol buffer message. This string must contain at
                            least

                            one "/" character. The last segment of the URL's
                            path must represent

                            the fully qualified name of the type (as in

                            `path/google.protobuf.Duration`). The name should be
                            in a canonical form

                            (e.g., leading "." is not accepted).


                            In practice, teams usually precompile into the
                            binary all types that they

                            expect it to use in the context of Any. However, for
                            URLs which use the

                            scheme `http`, `https`, or no scheme, one can
                            optionally set up a type

                            server that maps type URLs to message definitions as
                            follows:


                            * If no scheme is provided, `https` is assumed.

                            * An HTTP GET on the URL must yield a
                            [google.protobuf.Type][]
                              value in binary format, or produce an error.
                            * Applications are allowed to cache lookup results
                            based on the
                              URL, or have them precompiled into a binary to avoid any
                              lookup. Therefore, binary compatibility needs to be preserved
                              on changes to types. (Use versioned type names to manage
                              breaking changes.)

                            Note: this functionality is not currently available
                            in the official

                            protobuf release, and it is not used for type URLs
                            beginning with

                            type.googleapis.com.


                            Schemes other than `http`, `https` (or the empty
                            scheme) might be

                            used with implementation specific semantics.
                        value:
                          type: string
                          format: byte
                          description: >-
                            Must be a valid serialized protocol buffer of the
                            above specified type.
                      description: >-
                        `Any` contains an arbitrary serialized protocol buffer
                        message along with a

                        URL that describes the type of the serialized message.


                        Protobuf library provides support to pack/unpack Any
                        values in the form

                        of utility functions or additional generated methods of
                        the Any type.


                        Example 1: Pack and unpack a message in C++.

                            Foo foo = ...;
                            Any any;
                            any.PackFrom(foo);
                            ...
                            if (any.UnpackTo(&foo)) {
                              ...
                            }

                        Example 2: Pack and unpack a message in Java.

                            Foo foo = ...;
                            Any any = Any.pack(foo);
                            ...
                            if (any.is(Foo.class)) {
                              foo = any.unpack(Foo.class);
                            }

                         Example 3: Pack and unpack a message in Python.

                            foo = Foo(...)
                            any = Any()
                            any.Pack(foo)
                            ...
                            if any.Is(Foo.DESCRIPTOR):
                              any.Unpack(foo)
                              ...

                         Example 4: Pack and unpack a message in Go

                             foo := &pb.Foo{...}
                             any, err := ptypes.MarshalAny(foo)
                             ...
                             foo := &pb.Foo{}
                             if err := ptypes.UnmarshalAny(any, foo); err != nil {
                               ...
                             }

                        The pack methods provided by protobuf library will by
                        default use

                        'type.googleapis.com/full.type.name' as the type URL and
                        the unpack

                        methods only use the fully qualified type name after the
                        last '/'

                        in the type URL, for example "foo.bar.com/x/y.z" will
                        yield type

                        name "y.z".



                        JSON

                        ====

                        The JSON representation of an `Any` value uses the
                        regular

                        representation of the deserialized, embedded message,
                        with an

                        additional field `@type` which contains the type URL.
                        Example:

                            package google.profile;
                            message Person {
                              string first_name = 1;
                              string last_name = 2;
                            }

                            {
                              "@type": "type.googleapis.com/google.profile.Person",
                              "firstName": <string>,
                              "lastName": <string>
                            }

                        If the embedded message type is well-known and has a
                        custom JSON

                        representation, that representation will be embedded
                        adding a field

                        `value` which holds the custom JSON in addition to the
                        `@type`

                        field. Example (for message
                        [google.protobuf.Duration][]):

                            {
                              "@type": "type.googleapis.com/google.protobuf.Duration",
                              "value": "1.212s"
                            }
                    created_at:
                      type: string
                      format: date-time
                      description: >-
                        created_at is a timestamp specifying when a group policy
                        was created.
                  description: >-
                    GroupPolicyInfo represents the high-level on-chain
                    information for a group policy.
                description: >-
                  group_policies are the group policies info associated with the
                  provided group.
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QueryGroupPoliciesByGroupResponse is the
              Query/GroupPoliciesByGroup response type.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: group_id
          description: group_id is the unique ID of the group policy's group.
          in: path
          required: true
          type: string
          format: uint64
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/group/v1/group_policy_info/{address}:
    get:
      summary: >-
        GroupPolicyInfo queries group policy info based on account address of
        group policy.
      operationId: GroupPolicyInfo
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              info:
                type: object
                properties:
                  address:
                    type: string
                    description: address is the account address of group policy.
                  group_id:
                    type: string
                    format: uint64
                    description: group_id is the unique ID of the group.
                  admin:
                    type: string
                    description: admin is the account address of the group admin.
                  metadata:
                    type: string
                    description: >-
                      metadata is any arbitrary metadata to attached to the
                      group policy.
                  version:
                    type: string
                    format: uint64
                    description: >-
                      version is used to track changes to a group's
                      GroupPolicyInfo structure that

                      would create a different result on a running proposal.
                  decision_policy:
                    type: object
                    properties:
                      type_url:
                        type: string
                        description: >-
                          A URL/resource name that uniquely identifies the type
                          of the serialized

                          protocol buffer message. This string must contain at
                          least

                          one "/" character. The last segment of the URL's path
                          must represent

                          the fully qualified name of the type (as in

                          `path/google.protobuf.Duration`). The name should be
                          in a canonical form

                          (e.g., leading "." is not accepted).


                          In practice, teams usually precompile into the binary
                          all types that they

                          expect it to use in the context of Any. However, for
                          URLs which use the

                          scheme `http`, `https`, or no scheme, one can
                          optionally set up a type

                          server that maps type URLs to message definitions as
                          follows:


                          * If no scheme is provided, `https` is assumed.

                          * An HTTP GET on the URL must yield a
                          [google.protobuf.Type][]
                            value in binary format, or produce an error.
                          * Applications are allowed to cache lookup results
                          based on the
                            URL, or have them precompiled into a binary to avoid any
                            lookup. Therefore, binary compatibility needs to be preserved
                            on changes to types. (Use versioned type names to manage
                            breaking changes.)

                          Note: this functionality is not currently available in
                          the official

                          protobuf release, and it is not used for type URLs
                          beginning with

                          type.googleapis.com.


                          Schemes other than `http`, `https` (or the empty
                          scheme) might be

                          used with implementation specific semantics.
                      value:
                        type: string
                        format: byte
                        description: >-
                          Must be a valid serialized protocol buffer of the
                          above specified type.
                    description: >-
                      `Any` contains an arbitrary serialized protocol buffer
                      message along with a

                      URL that describes the type of the serialized message.


                      Protobuf library provides support to pack/unpack Any
                      values in the form

                      of utility functions or additional generated methods of
                      the Any type.


                      Example 1: Pack and unpack a message in C++.

                          Foo foo = ...;
                          Any any;
                          any.PackFrom(foo);
                          ...
                          if (any.UnpackTo(&foo)) {
                            ...
                          }

                      Example 2: Pack and unpack a message in Java.

                          Foo foo = ...;
                          Any any = Any.pack(foo);
                          ...
                          if (any.is(Foo.class)) {
                            foo = any.unpack(Foo.class);
                          }

                       Example 3: Pack and unpack a message in Python.

                          foo = Foo(...)
                          any = Any()
                          any.Pack(foo)
                          ...
                          if any.Is(Foo.DESCRIPTOR):
                            any.Unpack(foo)
                            ...

                       Example 4: Pack and unpack a message in Go

                           foo := &pb.Foo{...}
                           any, err := ptypes.MarshalAny(foo)
                           ...
                           foo := &pb.Foo{}
                           if err := ptypes.UnmarshalAny(any, foo); err != nil {
                             ...
                           }

                      The pack methods provided by protobuf library will by
                      default use

                      'type.googleapis.com/full.type.name' as the type URL and
                      the unpack

                      methods only use the fully qualified type name after the
                      last '/'

                      in the type URL, for example "foo.bar.com/x/y.z" will
                      yield type

                      name "y.z".



                      JSON

                      ====

                      The JSON representation of an `Any` value uses the regular

                      representation of the deserialized, embedded message, with
                      an

                      additional field `@type` which contains the type URL.
                      Example:

                          package google.profile;
                          message Person {
                            string first_name = 1;
                            string last_name = 2;
                          }

                          {
                            "@type": "type.googleapis.com/google.profile.Person",
                            "firstName": <string>,
                            "lastName": <string>
                          }

                      If the embedded message type is well-known and has a
                      custom JSON

                      representation, that representation will be embedded
                      adding a field

                      `value` which holds the custom JSON in addition to the
                      `@type`

                      field. Example (for message [google.protobuf.Duration][]):

                          {
                            "@type": "type.googleapis.com/google.protobuf.Duration",
                            "value": "1.212s"
                          }
                  created_at:
                    type: string
                    format: date-time
                    description: >-
                      created_at is a timestamp specifying when a group policy
                      was created.
                description: >-
                  GroupPolicyInfo represents the high-level on-chain information
                  for a group policy.
            description: >-
              QueryGroupPolicyInfoResponse is the Query/GroupPolicyInfo response
              type.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: address
          description: address is the account address of the group policy.
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/group/v1/groups_by_admin/{admin}:
    get:
      summary: GroupsByAdmin queries groups by admin address.
      operationId: GroupsByAdmin
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              groups:
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: string
                      format: uint64
                      description: id is the unique ID of the group.
                    admin:
                      type: string
                      description: admin is the account address of the group's admin.
                    metadata:
                      type: string
                      description: >-
                        metadata is any arbitrary metadata to attached to the
                        group.
                    version:
                      type: string
                      format: uint64
                      title: >-
                        version is used to track changes to a group's membership
                        structure that

                        would break existing proposals. Whenever any members
                        weight is changed,

                        or any member is added or removed this version is
                        incremented and will

                        cause proposals based on older versions of this group to
                        fail
                    total_weight:
                      type: string
                      description: total_weight is the sum of the group members' weights.
                    created_at:
                      type: string
                      format: date-time
                      description: >-
                        created_at is a timestamp specifying when a group was
                        created.
                  description: >-
                    GroupInfo represents the high-level on-chain information for
                    a group.
                description: groups are the groups info with the provided admin.
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QueryGroupsByAdminResponse is the Query/GroupsByAdminResponse
              response type.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: admin
          description: admin is the account address of a group's admin.
          in: path
          required: true
          type: string
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/group/v1/groups_by_member/{address}:
    get:
      summary: GroupsByMember queries groups by member address.
      operationId: GroupsByMember
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              groups:
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: string
                      format: uint64
                      description: id is the unique ID of the group.
                    admin:
                      type: string
                      description: admin is the account address of the group's admin.
                    metadata:
                      type: string
                      description: >-
                        metadata is any arbitrary metadata to attached to the
                        group.
                    version:
                      type: string
                      format: uint64
                      title: >-
                        version is used to track changes to a group's membership
                        structure that

                        would break existing proposals. Whenever any members
                        weight is changed,

                        or any member is added or removed this version is
                        incremented and will

                        cause proposals based on older versions of this group to
                        fail
                    total_weight:
                      type: string
                      description: total_weight is the sum of the group members' weights.
                    created_at:
                      type: string
                      format: date-time
                      description: >-
                        created_at is a timestamp specifying when a group was
                        created.
                  description: >-
                    GroupInfo represents the high-level on-chain information for
                    a group.
                description: groups are the groups info with the provided group member.
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QueryGroupsByMemberResponse is the Query/GroupsByMember response
              type.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: address
          description: address is the group member address.
          in: path
          required: true
          type: string
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/group/v1/proposal/{proposal_id}:
    get:
      summary: Proposal queries a proposal based on proposal id.
      operationId: GroupProposal
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              proposal:
                description: proposal is the proposal info.
                type: object
                properties:
                  id:
                    type: string
                    format: uint64
                    description: id is the unique id of the proposal.
                  group_policy_address:
                    type: string
                    description: >-
                      group_policy_address is the account address of group
                      policy.
                  metadata:
                    type: string
                    description: >-
                      metadata is any arbitrary metadata to attached to the
                      proposal.
                  proposers:
                    type: array
                    items:
                      type: string
                    description: proposers are the account addresses of the proposers.
                  submit_time:
                    type: string
                    format: date-time
                    description: >-
                      submit_time is a timestamp specifying when a proposal was
                      submitted.
                  group_version:
                    type: string
                    format: uint64
                    description: >-
                      group_version tracks the version of the group at proposal
                      submission.

                      This field is here for informational purposes only.
                  group_policy_version:
                    type: string
                    format: uint64
                    description: >-
                      group_policy_version tracks the version of the group
                      policy at proposal submission.

                      When a decision policy is changed, existing proposals from
                      previous policy

                      versions will become invalid with the `ABORTED` status.

                      This field is here for informational purposes only.
                  status:
                    description: >-
                      status represents the high level position in the life
                      cycle of the proposal. Initial value is Submitted.
                    type: string
                    enum:
                      - PROPOSAL_STATUS_UNSPECIFIED
                      - PROPOSAL_STATUS_SUBMITTED
                      - PROPOSAL_STATUS_ACCEPTED
                      - PROPOSAL_STATUS_REJECTED
                      - PROPOSAL_STATUS_ABORTED
                      - PROPOSAL_STATUS_WITHDRAWN
                    default: PROPOSAL_STATUS_UNSPECIFIED
                  final_tally_result:
                    description: >-
                      final_tally_result contains the sums of all weighted votes
                      for this

                      proposal for each vote option. It is empty at submission,
                      and only

                      populated after tallying, at voting period end or at
                      proposal execution,

                      whichever happens first.
                    type: object
                    properties:
                      yes_count:
                        type: string
                        description: yes_count is the weighted sum of yes votes.
                      abstain_count:
                        type: string
                        description: abstain_count is the weighted sum of abstainers.
                      no_count:
                        type: string
                        description: no_count is the weighted sum of no votes.
                      no_with_veto_count:
                        type: string
                        description: no_with_veto_count is the weighted sum of veto.
                  voting_period_end:
                    type: string
                    format: date-time
                    description: >-
                      voting_period_end is the timestamp before which voting
                      must be done.

                      Unless a successfull MsgExec is called before (to execute
                      a proposal whose

                      tally is successful before the voting period ends),
                      tallying will be done

                      at this point, and the `final_tally_result`and `status`
                      fields will be

                      accordingly updated.
                  executor_result:
                    description: >-
                      executor_result is the final result of the proposal
                      execution. Initial value is NotRun.
                    type: string
                    enum:
                      - PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED
                      - PROPOSAL_EXECUTOR_RESULT_NOT_RUN
                      - PROPOSAL_EXECUTOR_RESULT_SUCCESS
                      - PROPOSAL_EXECUTOR_RESULT_FAILURE
                    default: PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED
                  messages:
                    type: array
                    items:
                      type: object
                      properties:
                        type_url:
                          type: string
                          description: >-
                            A URL/resource name that uniquely identifies the
                            type of the serialized

                            protocol buffer message. This string must contain at
                            least

                            one "/" character. The last segment of the URL's
                            path must represent

                            the fully qualified name of the type (as in

                            `path/google.protobuf.Duration`). The name should be
                            in a canonical form

                            (e.g., leading "." is not accepted).


                            In practice, teams usually precompile into the
                            binary all types that they

                            expect it to use in the context of Any. However, for
                            URLs which use the

                            scheme `http`, `https`, or no scheme, one can
                            optionally set up a type

                            server that maps type URLs to message definitions as
                            follows:


                            * If no scheme is provided, `https` is assumed.

                            * An HTTP GET on the URL must yield a
                            [google.protobuf.Type][]
                              value in binary format, or produce an error.
                            * Applications are allowed to cache lookup results
                            based on the
                              URL, or have them precompiled into a binary to avoid any
                              lookup. Therefore, binary compatibility needs to be preserved
                              on changes to types. (Use versioned type names to manage
                              breaking changes.)

                            Note: this functionality is not currently available
                            in the official

                            protobuf release, and it is not used for type URLs
                            beginning with

                            type.googleapis.com.


                            Schemes other than `http`, `https` (or the empty
                            scheme) might be

                            used with implementation specific semantics.
                        value:
                          type: string
                          format: byte
                          description: >-
                            Must be a valid serialized protocol buffer of the
                            above specified type.
                      description: >-
                        `Any` contains an arbitrary serialized protocol buffer
                        message along with a

                        URL that describes the type of the serialized message.


                        Protobuf library provides support to pack/unpack Any
                        values in the form

                        of utility functions or additional generated methods of
                        the Any type.


                        Example 1: Pack and unpack a message in C++.

                            Foo foo = ...;
                            Any any;
                            any.PackFrom(foo);
                            ...
                            if (any.UnpackTo(&foo)) {
                              ...
                            }

                        Example 2: Pack and unpack a message in Java.

                            Foo foo = ...;
                            Any any = Any.pack(foo);
                            ...
                            if (any.is(Foo.class)) {
                              foo = any.unpack(Foo.class);
                            }

                         Example 3: Pack and unpack a message in Python.

                            foo = Foo(...)
                            any = Any()
                            any.Pack(foo)
                            ...
                            if any.Is(Foo.DESCRIPTOR):
                              any.Unpack(foo)
                              ...

                         Example 4: Pack and unpack a message in Go

                             foo := &pb.Foo{...}
                             any, err := ptypes.MarshalAny(foo)
                             ...
                             foo := &pb.Foo{}
                             if err := ptypes.UnmarshalAny(any, foo); err != nil {
                               ...
                             }

                        The pack methods provided by protobuf library will by
                        default use

                        'type.googleapis.com/full.type.name' as the type URL and
                        the unpack

                        methods only use the fully qualified type name after the
                        last '/'

                        in the type URL, for example "foo.bar.com/x/y.z" will
                        yield type

                        name "y.z".



                        JSON

                        ====

                        The JSON representation of an `Any` value uses the
                        regular

                        representation of the deserialized, embedded message,
                        with an

                        additional field `@type` which contains the type URL.
                        Example:

                            package google.profile;
                            message Person {
                              string first_name = 1;
                              string last_name = 2;
                            }

                            {
                              "@type": "type.googleapis.com/google.profile.Person",
                              "firstName": <string>,
                              "lastName": <string>
                            }

                        If the embedded message type is well-known and has a
                        custom JSON

                        representation, that representation will be embedded
                        adding a field

                        `value` which holds the custom JSON in addition to the
                        `@type`

                        field. Example (for message
                        [google.protobuf.Duration][]):

                            {
                              "@type": "type.googleapis.com/google.protobuf.Duration",
                              "value": "1.212s"
                            }
                    description: >-
                      messages is a list of `sdk.Msg`s that will be executed if
                      the proposal passes.
            description: QueryProposalResponse is the Query/Proposal response type.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: proposal_id
          description: proposal_id is the unique ID of a proposal.
          in: path
          required: true
          type: string
          format: uint64
      tags:
        - Query
  /cosmos/group/v1/proposals/{proposal_id}/tally:
    get:
      summary: >-
        TallyResult returns the tally result of a proposal. If the proposal is

        still in voting period, then this query computes the current tally
        state,

        which might not be final. On the other hand, if the proposal is final,

        then it simply returns the `final_tally_result` state stored in the

        proposal itself.
      operationId: GroupTallyResult
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              tally:
                description: tally defines the requested tally.
                type: object
                properties:
                  yes_count:
                    type: string
                    description: yes_count is the weighted sum of yes votes.
                  abstain_count:
                    type: string
                    description: abstain_count is the weighted sum of abstainers.
                  no_count:
                    type: string
                    description: no_count is the weighted sum of no votes.
                  no_with_veto_count:
                    type: string
                    description: no_with_veto_count is the weighted sum of veto.
            description: QueryTallyResultResponse is the Query/TallyResult response type.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: proposal_id
          description: proposal_id is the unique id of a proposal.
          in: path
          required: true
          type: string
          format: uint64
      tags:
        - Query
  /cosmos/group/v1/proposals_by_group_policy/{address}:
    get:
      summary: >-
        ProposalsByGroupPolicy queries proposals based on account address of
        group policy.
      operationId: ProposalsByGroupPolicy
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              proposals:
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: string
                      format: uint64
                      description: id is the unique id of the proposal.
                    group_policy_address:
                      type: string
                      description: >-
                        group_policy_address is the account address of group
                        policy.
                    metadata:
                      type: string
                      description: >-
                        metadata is any arbitrary metadata to attached to the
                        proposal.
                    proposers:
                      type: array
                      items:
                        type: string
                      description: proposers are the account addresses of the proposers.
                    submit_time:
                      type: string
                      format: date-time
                      description: >-
                        submit_time is a timestamp specifying when a proposal
                        was submitted.
                    group_version:
                      type: string
                      format: uint64
                      description: >-
                        group_version tracks the version of the group at
                        proposal submission.

                        This field is here for informational purposes only.
                    group_policy_version:
                      type: string
                      format: uint64
                      description: >-
                        group_policy_version tracks the version of the group
                        policy at proposal submission.

                        When a decision policy is changed, existing proposals
                        from previous policy

                        versions will become invalid with the `ABORTED` status.

                        This field is here for informational purposes only.
                    status:
                      description: >-
                        status represents the high level position in the life
                        cycle of the proposal. Initial value is Submitted.
                      type: string
                      enum:
                        - PROPOSAL_STATUS_UNSPECIFIED
                        - PROPOSAL_STATUS_SUBMITTED
                        - PROPOSAL_STATUS_ACCEPTED
                        - PROPOSAL_STATUS_REJECTED
                        - PROPOSAL_STATUS_ABORTED
                        - PROPOSAL_STATUS_WITHDRAWN
                      default: PROPOSAL_STATUS_UNSPECIFIED
                    final_tally_result:
                      description: >-
                        final_tally_result contains the sums of all weighted
                        votes for this

                        proposal for each vote option. It is empty at
                        submission, and only

                        populated after tallying, at voting period end or at
                        proposal execution,

                        whichever happens first.
                      type: object
                      properties:
                        yes_count:
                          type: string
                          description: yes_count is the weighted sum of yes votes.
                        abstain_count:
                          type: string
                          description: abstain_count is the weighted sum of abstainers.
                        no_count:
                          type: string
                          description: no_count is the weighted sum of no votes.
                        no_with_veto_count:
                          type: string
                          description: no_with_veto_count is the weighted sum of veto.
                    voting_period_end:
                      type: string
                      format: date-time
                      description: >-
                        voting_period_end is the timestamp before which voting
                        must be done.

                        Unless a successfull MsgExec is called before (to
                        execute a proposal whose

                        tally is successful before the voting period ends),
                        tallying will be done

                        at this point, and the `final_tally_result`and `status`
                        fields will be

                        accordingly updated.
                    executor_result:
                      description: >-
                        executor_result is the final result of the proposal
                        execution. Initial value is NotRun.
                      type: string
                      enum:
                        - PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED
                        - PROPOSAL_EXECUTOR_RESULT_NOT_RUN
                        - PROPOSAL_EXECUTOR_RESULT_SUCCESS
                        - PROPOSAL_EXECUTOR_RESULT_FAILURE
                      default: PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED
                    messages:
                      type: array
                      items:
                        type: object
                        properties:
                          type_url:
                            type: string
                            description: >-
                              A URL/resource name that uniquely identifies the
                              type of the serialized

                              protocol buffer message. This string must contain
                              at least

                              one "/" character. The last segment of the URL's
                              path must represent

                              the fully qualified name of the type (as in

                              `path/google.protobuf.Duration`). The name should
                              be in a canonical form

                              (e.g., leading "." is not accepted).


                              In practice, teams usually precompile into the
                              binary all types that they

                              expect it to use in the context of Any. However,
                              for URLs which use the

                              scheme `http`, `https`, or no scheme, one can
                              optionally set up a type

                              server that maps type URLs to message definitions
                              as follows:


                              * If no scheme is provided, `https` is assumed.

                              * An HTTP GET on the URL must yield a
                              [google.protobuf.Type][]
                                value in binary format, or produce an error.
                              * Applications are allowed to cache lookup results
                              based on the
                                URL, or have them precompiled into a binary to avoid any
                                lookup. Therefore, binary compatibility needs to be preserved
                                on changes to types. (Use versioned type names to manage
                                breaking changes.)

                              Note: this functionality is not currently
                              available in the official

                              protobuf release, and it is not used for type URLs
                              beginning with

                              type.googleapis.com.


                              Schemes other than `http`, `https` (or the empty
                              scheme) might be

                              used with implementation specific semantics.
                          value:
                            type: string
                            format: byte
                            description: >-
                              Must be a valid serialized protocol buffer of the
                              above specified type.
                        description: >-
                          `Any` contains an arbitrary serialized protocol buffer
                          message along with a

                          URL that describes the type of the serialized message.


                          Protobuf library provides support to pack/unpack Any
                          values in the form

                          of utility functions or additional generated methods
                          of the Any type.


                          Example 1: Pack and unpack a message in C++.

                              Foo foo = ...;
                              Any any;
                              any.PackFrom(foo);
                              ...
                              if (any.UnpackTo(&foo)) {
                                ...
                              }

                          Example 2: Pack and unpack a message in Java.

                              Foo foo = ...;
                              Any any = Any.pack(foo);
                              ...
                              if (any.is(Foo.class)) {
                                foo = any.unpack(Foo.class);
                              }

                           Example 3: Pack and unpack a message in Python.

                              foo = Foo(...)
                              any = Any()
                              any.Pack(foo)
                              ...
                              if any.Is(Foo.DESCRIPTOR):
                                any.Unpack(foo)
                                ...

                           Example 4: Pack and unpack a message in Go

                               foo := &pb.Foo{...}
                               any, err := ptypes.MarshalAny(foo)
                               ...
                               foo := &pb.Foo{}
                               if err := ptypes.UnmarshalAny(any, foo); err != nil {
                                 ...
                               }

                          The pack methods provided by protobuf library will by
                          default use

                          'type.googleapis.com/full.type.name' as the type URL
                          and the unpack

                          methods only use the fully qualified type name after
                          the last '/'

                          in the type URL, for example "foo.bar.com/x/y.z" will
                          yield type

                          name "y.z".



                          JSON

                          ====

                          The JSON representation of an `Any` value uses the
                          regular

                          representation of the deserialized, embedded message,
                          with an

                          additional field `@type` which contains the type URL.
                          Example:

                              package google.profile;
                              message Person {
                                string first_name = 1;
                                string last_name = 2;
                              }

                              {
                                "@type": "type.googleapis.com/google.profile.Person",
                                "firstName": <string>,
                                "lastName": <string>
                              }

                          If the embedded message type is well-known and has a
                          custom JSON

                          representation, that representation will be embedded
                          adding a field

                          `value` which holds the custom JSON in addition to the
                          `@type`

                          field. Example (for message
                          [google.protobuf.Duration][]):

                              {
                                "@type": "type.googleapis.com/google.protobuf.Duration",
                                "value": "1.212s"
                              }
                      description: >-
                        messages is a list of `sdk.Msg`s that will be executed
                        if the proposal passes.
                  description: >-
                    Proposal defines a group proposal. Any member of a group can
                    submit a proposal

                    for a group policy to decide upon.

                    A proposal consists of a set of `sdk.Msg`s that will be
                    executed if the proposal

                    passes as well as some optional metadata associated with the
                    proposal.
                description: proposals are the proposals with given group policy.
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QueryProposalsByGroupPolicyResponse is the
              Query/ProposalByGroupPolicy response type.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: address
          description: >-
            address is the account address of the group policy related to
            proposals.
          in: path
          required: true
          type: string
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/group/v1/vote_by_proposal_voter/{proposal_id}/{voter}:
    get:
      summary: VoteByProposalVoter queries a vote by proposal id and voter.
      operationId: VoteByProposalVoter
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              vote:
                description: vote is the vote with given proposal_id and voter.
                type: object
                properties:
                  proposal_id:
                    type: string
                    format: uint64
                    description: proposal is the unique ID of the proposal.
                  voter:
                    type: string
                    description: voter is the account address of the voter.
                  option:
                    description: option is the voter's choice on the proposal.
                    type: string
                    enum:
                      - VOTE_OPTION_UNSPECIFIED
                      - VOTE_OPTION_YES
                      - VOTE_OPTION_ABSTAIN
                      - VOTE_OPTION_NO
                      - VOTE_OPTION_NO_WITH_VETO
                    default: VOTE_OPTION_UNSPECIFIED
                  metadata:
                    type: string
                    description: >-
                      metadata is any arbitrary metadata to attached to the
                      vote.
                  submit_time:
                    type: string
                    format: date-time
                    description: submit_time is the timestamp when the vote was submitted.
            description: >-
              QueryVoteByProposalVoterResponse is the Query/VoteByProposalVoter
              response type.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: proposal_id
          description: proposal_id is the unique ID of a proposal.
          in: path
          required: true
          type: string
          format: uint64
        - name: voter
          description: voter is a proposal voter account address.
          in: path
          required: true
          type: string
      tags:
        - Query
  /cosmos/group/v1/votes_by_proposal/{proposal_id}:
    get:
      summary: VotesByProposal queries a vote by proposal.
      operationId: VotesByProposal
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              votes:
                type: array
                items:
                  type: object
                  properties:
                    proposal_id:
                      type: string
                      format: uint64
                      description: proposal is the unique ID of the proposal.
                    voter:
                      type: string
                      description: voter is the account address of the voter.
                    option:
                      description: option is the voter's choice on the proposal.
                      type: string
                      enum:
                        - VOTE_OPTION_UNSPECIFIED
                        - VOTE_OPTION_YES
                        - VOTE_OPTION_ABSTAIN
                        - VOTE_OPTION_NO
                        - VOTE_OPTION_NO_WITH_VETO
                      default: VOTE_OPTION_UNSPECIFIED
                    metadata:
                      type: string
                      description: >-
                        metadata is any arbitrary metadata to attached to the
                        vote.
                    submit_time:
                      type: string
                      format: date-time
                      description: >-
                        submit_time is the timestamp when the vote was
                        submitted.
                  description: Vote represents a vote for a proposal.
                description: votes are the list of votes for given proposal_id.
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: >-
              QueryVotesByProposalResponse is the Query/VotesByProposal response
              type.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: proposal_id
          description: proposal_id is the unique ID of a proposal.
          in: path
          required: true
          type: string
          format: uint64
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
  /cosmos/group/v1/votes_by_voter/{voter}:
    get:
      summary: VotesByVoter queries a vote by voter.
      operationId: VotesByVoter
      responses:
        '200':
          description: A successful response.
          schema:
            type: object
            properties:
              votes:
                type: array
                items:
                  type: object
                  properties:
                    proposal_id:
                      type: string
                      format: uint64
                      description: proposal is the unique ID of the proposal.
                    voter:
                      type: string
                      description: voter is the account address of the voter.
                    option:
                      description: option is the voter's choice on the proposal.
                      type: string
                      enum:
                        - VOTE_OPTION_UNSPECIFIED
                        - VOTE_OPTION_YES
                        - VOTE_OPTION_ABSTAIN
                        - VOTE_OPTION_NO
                        - VOTE_OPTION_NO_WITH_VETO
                      default: VOTE_OPTION_UNSPECIFIED
                    metadata:
                      type: string
                      description: >-
                        metadata is any arbitrary metadata to attached to the
                        vote.
                    submit_time:
                      type: string
                      format: date-time
                      description: >-
                        submit_time is the timestamp when the vote was
                        submitted.
                  description: Vote represents a vote for a proposal.
                description: votes are the list of votes by given voter.
              pagination:
                description: pagination defines the pagination in the response.
                type: object
                properties:
                  next_key:
                    type: string
                    format: byte
                    description: |-
                      next_key is the key to be passed to PageRequest.key to
                      query the next page most efficiently. It will be empty if
                      there are no more results.
                  total:
                    type: string
                    format: uint64
                    title: >-
                      total is total number of results available if
                      PageRequest.count_total

                      was set, its value is undefined otherwise
            description: QueryVotesByVoterResponse is the Query/VotesByVoter response type.
        default:
          description: An unexpected error response.
          schema:
            type: object
            properties:
              error:
                type: string
              code:
                type: integer
                format: int32
              message:
                type: string
              details:
                type: array
                items:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
      parameters:
        - name: voter
          description: voter is a proposal voter account address.
          in: path
          required: true
          type: string
        - name: pagination.key
          description: |-
            key is a value returned in PageResponse.next_key to begin
            querying the next page most efficiently. Only one of offset or key
            should be set.
          in: query
          required: false
          type: string
          format: byte
        - name: pagination.offset
          description: >-
            offset is a numeric offset that can be used when key is unavailable.

            It is less efficient than using key. Only one of offset or key
            should

            be set.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.limit
          description: >-
            limit is the total number of results to be returned in the result
            page.

            If left empty it will default to a value to be set by each app.
          in: query
          required: false
          type: string
          format: uint64
        - name: pagination.count_total
          description: >-
            count_total is set to true  to indicate that the result set should
            include

            a count of the total number of items available for pagination in
            UIs.

            count_total is only respected when offset is used. It is ignored
            when key

            is set.
          in: query
          required: false
          type: boolean
        - name: pagination.reverse
          description: >-
            reverse is set to true if results are to be returned in the
            descending order.


            Since: cosmos-sdk 0.43
          in: query
          required: false
          type: boolean
      tags:
        - Query
definitions:
  cosmos.auth.v1beta1.AddressBytesToStringResponse:
    type: object
    properties:
      address_string:
        type: string
    description: >-
      AddressBytesToStringResponse is the response type for AddressString rpc
      method.


      Since: cosmos-sdk 0.46
  cosmos.auth.v1beta1.AddressStringToBytesResponse:
    type: object
    properties:
      address_bytes:
        type: string
        format: byte
    description: >-
      AddressStringToBytesResponse is the response type for AddressBytes rpc
      method.


      Since: cosmos-sdk 0.46
  cosmos.auth.v1beta1.Bech32PrefixResponse:
    type: object
    properties:
      bech32_prefix:
        type: string
    description: |-
      Bech32PrefixResponse is the response type for Bech32Prefix rpc method.

      Since: cosmos-sdk 0.46
  cosmos.auth.v1beta1.Params:
    type: object
    properties:
      max_memo_characters:
        type: string
        format: uint64
      tx_sig_limit:
        type: string
        format: uint64
      tx_size_cost_per_byte:
        type: string
        format: uint64
      sig_verify_cost_ed25519:
        type: string
        format: uint64
      sig_verify_cost_secp256k1:
        type: string
        format: uint64
    description: Params defines the parameters for the auth module.
  cosmos.auth.v1beta1.QueryAccountAddressByIDResponse:
    type: object
    properties:
      account_address:
        type: string
    description: 'Since: cosmos-sdk 0.46.2'
    title: >-
      QueryAccountAddressByIDResponse is the response type for
      AccountAddressByID rpc method
  cosmos.auth.v1beta1.QueryAccountResponse:
    type: object
    properties:
      account:
        type: object
        properties:
          type_url:
            type: string
            description: >-
              A URL/resource name that uniquely identifies the type of the
              serialized

              protocol buffer message. This string must contain at least

              one "/" character. The last segment of the URL's path must
              represent

              the fully qualified name of the type (as in

              `path/google.protobuf.Duration`). The name should be in a
              canonical form

              (e.g., leading "." is not accepted).


              In practice, teams usually precompile into the binary all types
              that they

              expect it to use in the context of Any. However, for URLs which
              use the

              scheme `http`, `https`, or no scheme, one can optionally set up a
              type

              server that maps type URLs to message definitions as follows:


              * If no scheme is provided, `https` is assumed.

              * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                value in binary format, or produce an error.
              * Applications are allowed to cache lookup results based on the
                URL, or have them precompiled into a binary to avoid any
                lookup. Therefore, binary compatibility needs to be preserved
                on changes to types. (Use versioned type names to manage
                breaking changes.)

              Note: this functionality is not currently available in the
              official

              protobuf release, and it is not used for type URLs beginning with

              type.googleapis.com.


              Schemes other than `http`, `https` (or the empty scheme) might be

              used with implementation specific semantics.
          value:
            type: string
            format: byte
            description: >-
              Must be a valid serialized protocol buffer of the above specified
              type.
        description: >-
          `Any` contains an arbitrary serialized protocol buffer message along
          with a

          URL that describes the type of the serialized message.


          Protobuf library provides support to pack/unpack Any values in the
          form

          of utility functions or additional generated methods of the Any type.


          Example 1: Pack and unpack a message in C++.

              Foo foo = ...;
              Any any;
              any.PackFrom(foo);
              ...
              if (any.UnpackTo(&foo)) {
                ...
              }

          Example 2: Pack and unpack a message in Java.

              Foo foo = ...;
              Any any = Any.pack(foo);
              ...
              if (any.is(Foo.class)) {
                foo = any.unpack(Foo.class);
              }

           Example 3: Pack and unpack a message in Python.

              foo = Foo(...)
              any = Any()
              any.Pack(foo)
              ...
              if any.Is(Foo.DESCRIPTOR):
                any.Unpack(foo)
                ...

           Example 4: Pack and unpack a message in Go

               foo := &pb.Foo{...}
               any, err := ptypes.MarshalAny(foo)
               ...
               foo := &pb.Foo{}
               if err := ptypes.UnmarshalAny(any, foo); err != nil {
                 ...
               }

          The pack methods provided by protobuf library will by default use

          'type.googleapis.com/full.type.name' as the type URL and the unpack

          methods only use the fully qualified type name after the last '/'

          in the type URL, for example "foo.bar.com/x/y.z" will yield type

          name "y.z".



          JSON

          ====

          The JSON representation of an `Any` value uses the regular

          representation of the deserialized, embedded message, with an

          additional field `@type` which contains the type URL. Example:

              package google.profile;
              message Person {
                string first_name = 1;
                string last_name = 2;
              }

              {
                "@type": "type.googleapis.com/google.profile.Person",
                "firstName": <string>,
                "lastName": <string>
              }

          If the embedded message type is well-known and has a custom JSON

          representation, that representation will be embedded adding a field

          `value` which holds the custom JSON in addition to the `@type`

          field. Example (for message [google.protobuf.Duration][]):

              {
                "@type": "type.googleapis.com/google.protobuf.Duration",
                "value": "1.212s"
              }
    description: >-
      QueryAccountResponse is the response type for the Query/Account RPC
      method.
  cosmos.auth.v1beta1.QueryAccountsResponse:
    type: object
    properties:
      accounts:
        type: array
        items:
          type: object
          properties:
            type_url:
              type: string
              description: >-
                A URL/resource name that uniquely identifies the type of the
                serialized

                protocol buffer message. This string must contain at least

                one "/" character. The last segment of the URL's path must
                represent

                the fully qualified name of the type (as in

                `path/google.protobuf.Duration`). The name should be in a
                canonical form

                (e.g., leading "." is not accepted).


                In practice, teams usually precompile into the binary all types
                that they

                expect it to use in the context of Any. However, for URLs which
                use the

                scheme `http`, `https`, or no scheme, one can optionally set up
                a type

                server that maps type URLs to message definitions as follows:


                * If no scheme is provided, `https` is assumed.

                * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                  value in binary format, or produce an error.
                * Applications are allowed to cache lookup results based on the
                  URL, or have them precompiled into a binary to avoid any
                  lookup. Therefore, binary compatibility needs to be preserved
                  on changes to types. (Use versioned type names to manage
                  breaking changes.)

                Note: this functionality is not currently available in the
                official

                protobuf release, and it is not used for type URLs beginning
                with

                type.googleapis.com.


                Schemes other than `http`, `https` (or the empty scheme) might
                be

                used with implementation specific semantics.
            value:
              type: string
              format: byte
              description: >-
                Must be a valid serialized protocol buffer of the above
                specified type.
          description: >-
            `Any` contains an arbitrary serialized protocol buffer message along
            with a

            URL that describes the type of the serialized message.


            Protobuf library provides support to pack/unpack Any values in the
            form

            of utility functions or additional generated methods of the Any
            type.


            Example 1: Pack and unpack a message in C++.

                Foo foo = ...;
                Any any;
                any.PackFrom(foo);
                ...
                if (any.UnpackTo(&foo)) {
                  ...
                }

            Example 2: Pack and unpack a message in Java.

                Foo foo = ...;
                Any any = Any.pack(foo);
                ...
                if (any.is(Foo.class)) {
                  foo = any.unpack(Foo.class);
                }

             Example 3: Pack and unpack a message in Python.

                foo = Foo(...)
                any = Any()
                any.Pack(foo)
                ...
                if any.Is(Foo.DESCRIPTOR):
                  any.Unpack(foo)
                  ...

             Example 4: Pack and unpack a message in Go

                 foo := &pb.Foo{...}
                 any, err := ptypes.MarshalAny(foo)
                 ...
                 foo := &pb.Foo{}
                 if err := ptypes.UnmarshalAny(any, foo); err != nil {
                   ...
                 }

            The pack methods provided by protobuf library will by default use

            'type.googleapis.com/full.type.name' as the type URL and the unpack

            methods only use the fully qualified type name after the last '/'

            in the type URL, for example "foo.bar.com/x/y.z" will yield type

            name "y.z".



            JSON

            ====

            The JSON representation of an `Any` value uses the regular

            representation of the deserialized, embedded message, with an

            additional field `@type` which contains the type URL. Example:

                package google.profile;
                message Person {
                  string first_name = 1;
                  string last_name = 2;
                }

                {
                  "@type": "type.googleapis.com/google.profile.Person",
                  "firstName": <string>,
                  "lastName": <string>
                }

            If the embedded message type is well-known and has a custom JSON

            representation, that representation will be embedded adding a field

            `value` which holds the custom JSON in addition to the `@type`

            field. Example (for message [google.protobuf.Duration][]):

                {
                  "@type": "type.googleapis.com/google.protobuf.Duration",
                  "value": "1.212s"
                }
        title: accounts are the existing accounts
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: >-
      QueryAccountsResponse is the response type for the Query/Accounts RPC
      method.


      Since: cosmos-sdk 0.43
  cosmos.auth.v1beta1.QueryModuleAccountByNameResponse:
    type: object
    properties:
      account:
        type: object
        properties:
          type_url:
            type: string
            description: >-
              A URL/resource name that uniquely identifies the type of the
              serialized

              protocol buffer message. This string must contain at least

              one "/" character. The last segment of the URL's path must
              represent

              the fully qualified name of the type (as in

              `path/google.protobuf.Duration`). The name should be in a
              canonical form

              (e.g., leading "." is not accepted).


              In practice, teams usually precompile into the binary all types
              that they

              expect it to use in the context of Any. However, for URLs which
              use the

              scheme `http`, `https`, or no scheme, one can optionally set up a
              type

              server that maps type URLs to message definitions as follows:


              * If no scheme is provided, `https` is assumed.

              * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                value in binary format, or produce an error.
              * Applications are allowed to cache lookup results based on the
                URL, or have them precompiled into a binary to avoid any
                lookup. Therefore, binary compatibility needs to be preserved
                on changes to types. (Use versioned type names to manage
                breaking changes.)

              Note: this functionality is not currently available in the
              official

              protobuf release, and it is not used for type URLs beginning with

              type.googleapis.com.


              Schemes other than `http`, `https` (or the empty scheme) might be

              used with implementation specific semantics.
          value:
            type: string
            format: byte
            description: >-
              Must be a valid serialized protocol buffer of the above specified
              type.
        description: >-
          `Any` contains an arbitrary serialized protocol buffer message along
          with a

          URL that describes the type of the serialized message.


          Protobuf library provides support to pack/unpack Any values in the
          form

          of utility functions or additional generated methods of the Any type.


          Example 1: Pack and unpack a message in C++.

              Foo foo = ...;
              Any any;
              any.PackFrom(foo);
              ...
              if (any.UnpackTo(&foo)) {
                ...
              }

          Example 2: Pack and unpack a message in Java.

              Foo foo = ...;
              Any any = Any.pack(foo);
              ...
              if (any.is(Foo.class)) {
                foo = any.unpack(Foo.class);
              }

           Example 3: Pack and unpack a message in Python.

              foo = Foo(...)
              any = Any()
              any.Pack(foo)
              ...
              if any.Is(Foo.DESCRIPTOR):
                any.Unpack(foo)
                ...

           Example 4: Pack and unpack a message in Go

               foo := &pb.Foo{...}
               any, err := ptypes.MarshalAny(foo)
               ...
               foo := &pb.Foo{}
               if err := ptypes.UnmarshalAny(any, foo); err != nil {
                 ...
               }

          The pack methods provided by protobuf library will by default use

          'type.googleapis.com/full.type.name' as the type URL and the unpack

          methods only use the fully qualified type name after the last '/'

          in the type URL, for example "foo.bar.com/x/y.z" will yield type

          name "y.z".



          JSON

          ====

          The JSON representation of an `Any` value uses the regular

          representation of the deserialized, embedded message, with an

          additional field `@type` which contains the type URL. Example:

              package google.profile;
              message Person {
                string first_name = 1;
                string last_name = 2;
              }

              {
                "@type": "type.googleapis.com/google.profile.Person",
                "firstName": <string>,
                "lastName": <string>
              }

          If the embedded message type is well-known and has a custom JSON

          representation, that representation will be embedded adding a field

          `value` which holds the custom JSON in addition to the `@type`

          field. Example (for message [google.protobuf.Duration][]):

              {
                "@type": "type.googleapis.com/google.protobuf.Duration",
                "value": "1.212s"
              }
    description: >-
      QueryModuleAccountByNameResponse is the response type for the
      Query/ModuleAccountByName RPC method.
  cosmos.auth.v1beta1.QueryModuleAccountsResponse:
    type: object
    properties:
      accounts:
        type: array
        items:
          type: object
          properties:
            type_url:
              type: string
              description: >-
                A URL/resource name that uniquely identifies the type of the
                serialized

                protocol buffer message. This string must contain at least

                one "/" character. The last segment of the URL's path must
                represent

                the fully qualified name of the type (as in

                `path/google.protobuf.Duration`). The name should be in a
                canonical form

                (e.g., leading "." is not accepted).


                In practice, teams usually precompile into the binary all types
                that they

                expect it to use in the context of Any. However, for URLs which
                use the

                scheme `http`, `https`, or no scheme, one can optionally set up
                a type

                server that maps type URLs to message definitions as follows:


                * If no scheme is provided, `https` is assumed.

                * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                  value in binary format, or produce an error.
                * Applications are allowed to cache lookup results based on the
                  URL, or have them precompiled into a binary to avoid any
                  lookup. Therefore, binary compatibility needs to be preserved
                  on changes to types. (Use versioned type names to manage
                  breaking changes.)

                Note: this functionality is not currently available in the
                official

                protobuf release, and it is not used for type URLs beginning
                with

                type.googleapis.com.


                Schemes other than `http`, `https` (or the empty scheme) might
                be

                used with implementation specific semantics.
            value:
              type: string
              format: byte
              description: >-
                Must be a valid serialized protocol buffer of the above
                specified type.
          description: >-
            `Any` contains an arbitrary serialized protocol buffer message along
            with a

            URL that describes the type of the serialized message.


            Protobuf library provides support to pack/unpack Any values in the
            form

            of utility functions or additional generated methods of the Any
            type.


            Example 1: Pack and unpack a message in C++.

                Foo foo = ...;
                Any any;
                any.PackFrom(foo);
                ...
                if (any.UnpackTo(&foo)) {
                  ...
                }

            Example 2: Pack and unpack a message in Java.

                Foo foo = ...;
                Any any = Any.pack(foo);
                ...
                if (any.is(Foo.class)) {
                  foo = any.unpack(Foo.class);
                }

             Example 3: Pack and unpack a message in Python.

                foo = Foo(...)
                any = Any()
                any.Pack(foo)
                ...
                if any.Is(Foo.DESCRIPTOR):
                  any.Unpack(foo)
                  ...

             Example 4: Pack and unpack a message in Go

                 foo := &pb.Foo{...}
                 any, err := ptypes.MarshalAny(foo)
                 ...
                 foo := &pb.Foo{}
                 if err := ptypes.UnmarshalAny(any, foo); err != nil {
                   ...
                 }

            The pack methods provided by protobuf library will by default use

            'type.googleapis.com/full.type.name' as the type URL and the unpack

            methods only use the fully qualified type name after the last '/'

            in the type URL, for example "foo.bar.com/x/y.z" will yield type

            name "y.z".



            JSON

            ====

            The JSON representation of an `Any` value uses the regular

            representation of the deserialized, embedded message, with an

            additional field `@type` which contains the type URL. Example:

                package google.profile;
                message Person {
                  string first_name = 1;
                  string last_name = 2;
                }

                {
                  "@type": "type.googleapis.com/google.profile.Person",
                  "firstName": <string>,
                  "lastName": <string>
                }

            If the embedded message type is well-known and has a custom JSON

            representation, that representation will be embedded adding a field

            `value` which holds the custom JSON in addition to the `@type`

            field. Example (for message [google.protobuf.Duration][]):

                {
                  "@type": "type.googleapis.com/google.protobuf.Duration",
                  "value": "1.212s"
                }
    description: >-
      QueryModuleAccountsResponse is the response type for the
      Query/ModuleAccounts RPC method.


      Since: cosmos-sdk 0.46
  cosmos.auth.v1beta1.QueryParamsResponse:
    type: object
    properties:
      params:
        description: params defines the parameters of the module.
        type: object
        properties:
          max_memo_characters:
            type: string
            format: uint64
          tx_sig_limit:
            type: string
            format: uint64
          tx_size_cost_per_byte:
            type: string
            format: uint64
          sig_verify_cost_ed25519:
            type: string
            format: uint64
          sig_verify_cost_secp256k1:
            type: string
            format: uint64
    description: QueryParamsResponse is the response type for the Query/Params RPC method.
  cosmos.base.query.v1beta1.PageRequest:
    type: object
    properties:
      key:
        type: string
        format: byte
        description: |-
          key is a value returned in PageResponse.next_key to begin
          querying the next page most efficiently. Only one of offset or key
          should be set.
      offset:
        type: string
        format: uint64
        description: |-
          offset is a numeric offset that can be used when key is unavailable.
          It is less efficient than using key. Only one of offset or key should
          be set.
      limit:
        type: string
        format: uint64
        description: >-
          limit is the total number of results to be returned in the result
          page.

          If left empty it will default to a value to be set by each app.
      count_total:
        type: boolean
        description: >-
          count_total is set to true  to indicate that the result set should
          include

          a count of the total number of items available for pagination in UIs.

          count_total is only respected when offset is used. It is ignored when
          key

          is set.
      reverse:
        type: boolean
        description: >-
          reverse is set to true if results are to be returned in the descending
          order.


          Since: cosmos-sdk 0.43
    description: |-
      message SomeRequest {
               Foo some_parameter = 1;
               PageRequest pagination = 2;
       }
    title: |-
      PageRequest is to be embedded in gRPC request messages for efficient
      pagination. Ex:
  cosmos.base.query.v1beta1.PageResponse:
    type: object
    properties:
      next_key:
        type: string
        format: byte
        description: |-
          next_key is the key to be passed to PageRequest.key to
          query the next page most efficiently. It will be empty if
          there are no more results.
      total:
        type: string
        format: uint64
        title: |-
          total is total number of results available if PageRequest.count_total
          was set, its value is undefined otherwise
    description: |-
      PageResponse is to be embedded in gRPC response messages where the
      corresponding request message has used PageRequest.

       message SomeResponse {
               repeated Bar results = 1;
               PageResponse page = 2;
       }
  google.protobuf.Any:
    type: object
    properties:
      type_url:
        type: string
        description: >-
          A URL/resource name that uniquely identifies the type of the
          serialized

          protocol buffer message. This string must contain at least

          one "/" character. The last segment of the URL's path must represent

          the fully qualified name of the type (as in

          `path/google.protobuf.Duration`). The name should be in a canonical
          form

          (e.g., leading "." is not accepted).


          In practice, teams usually precompile into the binary all types that
          they

          expect it to use in the context of Any. However, for URLs which use
          the

          scheme `http`, `https`, or no scheme, one can optionally set up a type

          server that maps type URLs to message definitions as follows:


          * If no scheme is provided, `https` is assumed.

          * An HTTP GET on the URL must yield a [google.protobuf.Type][]
            value in binary format, or produce an error.
          * Applications are allowed to cache lookup results based on the
            URL, or have them precompiled into a binary to avoid any
            lookup. Therefore, binary compatibility needs to be preserved
            on changes to types. (Use versioned type names to manage
            breaking changes.)

          Note: this functionality is not currently available in the official

          protobuf release, and it is not used for type URLs beginning with

          type.googleapis.com.


          Schemes other than `http`, `https` (or the empty scheme) might be

          used with implementation specific semantics.
      value:
        type: string
        format: byte
        description: >-
          Must be a valid serialized protocol buffer of the above specified
          type.
    description: >-
      `Any` contains an arbitrary serialized protocol buffer message along with
      a

      URL that describes the type of the serialized message.


      Protobuf library provides support to pack/unpack Any values in the form

      of utility functions or additional generated methods of the Any type.


      Example 1: Pack and unpack a message in C++.

          Foo foo = ...;
          Any any;
          any.PackFrom(foo);
          ...
          if (any.UnpackTo(&foo)) {
            ...
          }

      Example 2: Pack and unpack a message in Java.

          Foo foo = ...;
          Any any = Any.pack(foo);
          ...
          if (any.is(Foo.class)) {
            foo = any.unpack(Foo.class);
          }

       Example 3: Pack and unpack a message in Python.

          foo = Foo(...)
          any = Any()
          any.Pack(foo)
          ...
          if any.Is(Foo.DESCRIPTOR):
            any.Unpack(foo)
            ...

       Example 4: Pack and unpack a message in Go

           foo := &pb.Foo{...}
           any, err := ptypes.MarshalAny(foo)
           ...
           foo := &pb.Foo{}
           if err := ptypes.UnmarshalAny(any, foo); err != nil {
             ...
           }

      The pack methods provided by protobuf library will by default use

      'type.googleapis.com/full.type.name' as the type URL and the unpack

      methods only use the fully qualified type name after the last '/'

      in the type URL, for example "foo.bar.com/x/y.z" will yield type

      name "y.z".



      JSON

      ====

      The JSON representation of an `Any` value uses the regular

      representation of the deserialized, embedded message, with an

      additional field `@type` which contains the type URL. Example:

          package google.profile;
          message Person {
            string first_name = 1;
            string last_name = 2;
          }

          {
            "@type": "type.googleapis.com/google.profile.Person",
            "firstName": <string>,
            "lastName": <string>
          }

      If the embedded message type is well-known and has a custom JSON

      representation, that representation will be embedded adding a field

      `value` which holds the custom JSON in addition to the `@type`

      field. Example (for message [google.protobuf.Duration][]):

          {
            "@type": "type.googleapis.com/google.protobuf.Duration",
            "value": "1.212s"
          }
  grpc.gateway.runtime.Error:
    type: object
    properties:
      error:
        type: string
      code:
        type: integer
        format: int32
      message:
        type: string
      details:
        type: array
        items:
          type: object
          properties:
            type_url:
              type: string
              description: >-
                A URL/resource name that uniquely identifies the type of the
                serialized

                protocol buffer message. This string must contain at least

                one "/" character. The last segment of the URL's path must
                represent

                the fully qualified name of the type (as in

                `path/google.protobuf.Duration`). The name should be in a
                canonical form

                (e.g., leading "." is not accepted).


                In practice, teams usually precompile into the binary all types
                that they

                expect it to use in the context of Any. However, for URLs which
                use the

                scheme `http`, `https`, or no scheme, one can optionally set up
                a type

                server that maps type URLs to message definitions as follows:


                * If no scheme is provided, `https` is assumed.

                * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                  value in binary format, or produce an error.
                * Applications are allowed to cache lookup results based on the
                  URL, or have them precompiled into a binary to avoid any
                  lookup. Therefore, binary compatibility needs to be preserved
                  on changes to types. (Use versioned type names to manage
                  breaking changes.)

                Note: this functionality is not currently available in the
                official

                protobuf release, and it is not used for type URLs beginning
                with

                type.googleapis.com.


                Schemes other than `http`, `https` (or the empty scheme) might
                be

                used with implementation specific semantics.
            value:
              type: string
              format: byte
              description: >-
                Must be a valid serialized protocol buffer of the above
                specified type.
          description: >-
            `Any` contains an arbitrary serialized protocol buffer message along
            with a

            URL that describes the type of the serialized message.


            Protobuf library provides support to pack/unpack Any values in the
            form

            of utility functions or additional generated methods of the Any
            type.


            Example 1: Pack and unpack a message in C++.

                Foo foo = ...;
                Any any;
                any.PackFrom(foo);
                ...
                if (any.UnpackTo(&foo)) {
                  ...
                }

            Example 2: Pack and unpack a message in Java.

                Foo foo = ...;
                Any any = Any.pack(foo);
                ...
                if (any.is(Foo.class)) {
                  foo = any.unpack(Foo.class);
                }

             Example 3: Pack and unpack a message in Python.

                foo = Foo(...)
                any = Any()
                any.Pack(foo)
                ...
                if any.Is(Foo.DESCRIPTOR):
                  any.Unpack(foo)
                  ...

             Example 4: Pack and unpack a message in Go

                 foo := &pb.Foo{...}
                 any, err := ptypes.MarshalAny(foo)
                 ...
                 foo := &pb.Foo{}
                 if err := ptypes.UnmarshalAny(any, foo); err != nil {
                   ...
                 }

            The pack methods provided by protobuf library will by default use

            'type.googleapis.com/full.type.name' as the type URL and the unpack

            methods only use the fully qualified type name after the last '/'

            in the type URL, for example "foo.bar.com/x/y.z" will yield type

            name "y.z".



            JSON

            ====

            The JSON representation of an `Any` value uses the regular

            representation of the deserialized, embedded message, with an

            additional field `@type` which contains the type URL. Example:

                package google.profile;
                message Person {
                  string first_name = 1;
                  string last_name = 2;
                }

                {
                  "@type": "type.googleapis.com/google.profile.Person",
                  "firstName": <string>,
                  "lastName": <string>
                }

            If the embedded message type is well-known and has a custom JSON

            representation, that representation will be embedded adding a field

            `value` which holds the custom JSON in addition to the `@type`

            field. Example (for message [google.protobuf.Duration][]):

                {
                  "@type": "type.googleapis.com/google.protobuf.Duration",
                  "value": "1.212s"
                }
  cosmos.bank.v1beta1.DenomOwner:
    type: object
    properties:
      address:
        type: string
        description: address defines the address that owns a particular denomination.
      balance:
        type: object
        properties:
          denom:
            type: string
          amount:
            type: string
        description: |-
          Coin defines a token with a denomination and an amount.

          NOTE: The amount field is an Int which implements the custom method
          signatures required by gogoproto.
    description: |-
      DenomOwner defines structure representing an account that owns or holds a
      particular denominated token. It contains the account address and account
      balance of the denominated token.

      Since: cosmos-sdk 0.46
  cosmos.bank.v1beta1.DenomUnit:
    type: object
    properties:
      denom:
        type: string
        description: denom represents the string name of the given denom unit (e.g uatom).
      exponent:
        type: integer
        format: int64
        description: >-
          exponent represents power of 10 exponent that one must

          raise the base_denom to in order to equal the given DenomUnit's denom

          1 denom = 10^exponent base_denom

          (e.g. with a base_denom of uatom, one can create a DenomUnit of 'atom'
          with

          exponent = 6, thus: 1 atom = 10^6 uatom).
      aliases:
        type: array
        items:
          type: string
        title: aliases is a list of string aliases for the given denom
    description: |-
      DenomUnit represents a struct that describes a given
      denomination unit of the basic token.
  cosmos.bank.v1beta1.Metadata:
    type: object
    properties:
      description:
        type: string
      denom_units:
        type: array
        items:
          type: object
          properties:
            denom:
              type: string
              description: >-
                denom represents the string name of the given denom unit (e.g
                uatom).
            exponent:
              type: integer
              format: int64
              description: >-
                exponent represents power of 10 exponent that one must

                raise the base_denom to in order to equal the given DenomUnit's
                denom

                1 denom = 10^exponent base_denom

                (e.g. with a base_denom of uatom, one can create a DenomUnit of
                'atom' with

                exponent = 6, thus: 1 atom = 10^6 uatom).
            aliases:
              type: array
              items:
                type: string
              title: aliases is a list of string aliases for the given denom
          description: |-
            DenomUnit represents a struct that describes a given
            denomination unit of the basic token.
        title: denom_units represents the list of DenomUnit's for a given coin
      base:
        type: string
        description: >-
          base represents the base denom (should be the DenomUnit with exponent
          = 0).
      display:
        type: string
        description: |-
          display indicates the suggested denom that should be
          displayed in clients.
      name:
        type: string
        description: 'Since: cosmos-sdk 0.43'
        title: 'name defines the name of the token (eg: Cosmos Atom)'
      symbol:
        type: string
        description: >-
          symbol is the token symbol usually shown on exchanges (eg: ATOM). This
          can

          be the same as the display.


          Since: cosmos-sdk 0.43
      uri:
        type: string
        description: >-
          URI to a document (on or off-chain) that contains additional
          information. Optional.


          Since: cosmos-sdk 0.46
      uri_hash:
        type: string
        description: >-
          URIHash is a sha256 hash of a document pointed by URI. It's used to
          verify that

          the document didn't change. Optional.


          Since: cosmos-sdk 0.46
    description: |-
      Metadata represents a struct that describes
      a basic token.
  cosmos.bank.v1beta1.Params:
    type: object
    properties:
      send_enabled:
        type: array
        items:
          type: object
          properties:
            denom:
              type: string
            enabled:
              type: boolean
          description: >-
            SendEnabled maps coin denom to a send_enabled status (whether a
            denom is

            sendable).
      default_send_enabled:
        type: boolean
    description: Params defines the parameters for the bank module.
  cosmos.bank.v1beta1.QueryAllBalancesResponse:
    type: object
    properties:
      balances:
        type: array
        items:
          type: object
          properties:
            denom:
              type: string
            amount:
              type: string
          description: |-
            Coin defines a token with a denomination and an amount.

            NOTE: The amount field is an Int which implements the custom method
            signatures required by gogoproto.
        description: balances is the balances of all the coins.
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: >-
      QueryAllBalancesResponse is the response type for the Query/AllBalances
      RPC

      method.
  cosmos.bank.v1beta1.QueryBalanceResponse:
    type: object
    properties:
      balance:
        type: object
        properties:
          denom:
            type: string
          amount:
            type: string
        description: |-
          Coin defines a token with a denomination and an amount.

          NOTE: The amount field is an Int which implements the custom method
          signatures required by gogoproto.
    description: >-
      QueryBalanceResponse is the response type for the Query/Balance RPC
      method.
  cosmos.bank.v1beta1.QueryDenomMetadataResponse:
    type: object
    properties:
      metadata:
        type: object
        properties:
          description:
            type: string
          denom_units:
            type: array
            items:
              type: object
              properties:
                denom:
                  type: string
                  description: >-
                    denom represents the string name of the given denom unit
                    (e.g uatom).
                exponent:
                  type: integer
                  format: int64
                  description: >-
                    exponent represents power of 10 exponent that one must

                    raise the base_denom to in order to equal the given
                    DenomUnit's denom

                    1 denom = 10^exponent base_denom

                    (e.g. with a base_denom of uatom, one can create a DenomUnit
                    of 'atom' with

                    exponent = 6, thus: 1 atom = 10^6 uatom).
                aliases:
                  type: array
                  items:
                    type: string
                  title: aliases is a list of string aliases for the given denom
              description: |-
                DenomUnit represents a struct that describes a given
                denomination unit of the basic token.
            title: denom_units represents the list of DenomUnit's for a given coin
          base:
            type: string
            description: >-
              base represents the base denom (should be the DenomUnit with
              exponent = 0).
          display:
            type: string
            description: |-
              display indicates the suggested denom that should be
              displayed in clients.
          name:
            type: string
            description: 'Since: cosmos-sdk 0.43'
            title: 'name defines the name of the token (eg: Cosmos Atom)'
          symbol:
            type: string
            description: >-
              symbol is the token symbol usually shown on exchanges (eg: ATOM).
              This can

              be the same as the display.


              Since: cosmos-sdk 0.43
          uri:
            type: string
            description: >-
              URI to a document (on or off-chain) that contains additional
              information. Optional.


              Since: cosmos-sdk 0.46
          uri_hash:
            type: string
            description: >-
              URIHash is a sha256 hash of a document pointed by URI. It's used
              to verify that

              the document didn't change. Optional.


              Since: cosmos-sdk 0.46
        description: |-
          Metadata represents a struct that describes
          a basic token.
    description: >-
      QueryDenomMetadataResponse is the response type for the
      Query/DenomMetadata RPC

      method.
  cosmos.bank.v1beta1.QueryDenomOwnersResponse:
    type: object
    properties:
      denom_owners:
        type: array
        items:
          type: object
          properties:
            address:
              type: string
              description: address defines the address that owns a particular denomination.
            balance:
              type: object
              properties:
                denom:
                  type: string
                amount:
                  type: string
              description: >-
                Coin defines a token with a denomination and an amount.


                NOTE: The amount field is an Int which implements the custom
                method

                signatures required by gogoproto.
          description: >-
            DenomOwner defines structure representing an account that owns or
            holds a

            particular denominated token. It contains the account address and
            account

            balance of the denominated token.


            Since: cosmos-sdk 0.46
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: >-
      QueryDenomOwnersResponse defines the RPC response of a DenomOwners RPC
      query.


      Since: cosmos-sdk 0.46
  cosmos.bank.v1beta1.QueryDenomsMetadataResponse:
    type: object
    properties:
      metadatas:
        type: array
        items:
          type: object
          properties:
            description:
              type: string
            denom_units:
              type: array
              items:
                type: object
                properties:
                  denom:
                    type: string
                    description: >-
                      denom represents the string name of the given denom unit
                      (e.g uatom).
                  exponent:
                    type: integer
                    format: int64
                    description: >-
                      exponent represents power of 10 exponent that one must

                      raise the base_denom to in order to equal the given
                      DenomUnit's denom

                      1 denom = 10^exponent base_denom

                      (e.g. with a base_denom of uatom, one can create a
                      DenomUnit of 'atom' with

                      exponent = 6, thus: 1 atom = 10^6 uatom).
                  aliases:
                    type: array
                    items:
                      type: string
                    title: aliases is a list of string aliases for the given denom
                description: |-
                  DenomUnit represents a struct that describes a given
                  denomination unit of the basic token.
              title: denom_units represents the list of DenomUnit's for a given coin
            base:
              type: string
              description: >-
                base represents the base denom (should be the DenomUnit with
                exponent = 0).
            display:
              type: string
              description: |-
                display indicates the suggested denom that should be
                displayed in clients.
            name:
              type: string
              description: 'Since: cosmos-sdk 0.43'
              title: 'name defines the name of the token (eg: Cosmos Atom)'
            symbol:
              type: string
              description: >-
                symbol is the token symbol usually shown on exchanges (eg:
                ATOM). This can

                be the same as the display.


                Since: cosmos-sdk 0.43
            uri:
              type: string
              description: >-
                URI to a document (on or off-chain) that contains additional
                information. Optional.


                Since: cosmos-sdk 0.46
            uri_hash:
              type: string
              description: >-
                URIHash is a sha256 hash of a document pointed by URI. It's used
                to verify that

                the document didn't change. Optional.


                Since: cosmos-sdk 0.46
          description: |-
            Metadata represents a struct that describes
            a basic token.
        description: >-
          metadata provides the client information for all the registered
          tokens.
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: >-
      QueryDenomsMetadataResponse is the response type for the
      Query/DenomsMetadata RPC

      method.
  cosmos.bank.v1beta1.QueryParamsResponse:
    type: object
    properties:
      params:
        type: object
        properties:
          send_enabled:
            type: array
            items:
              type: object
              properties:
                denom:
                  type: string
                enabled:
                  type: boolean
              description: >-
                SendEnabled maps coin denom to a send_enabled status (whether a
                denom is

                sendable).
          default_send_enabled:
            type: boolean
        description: Params defines the parameters for the bank module.
    description: >-
      QueryParamsResponse defines the response type for querying x/bank
      parameters.
  cosmos.bank.v1beta1.QuerySpendableBalancesResponse:
    type: object
    properties:
      balances:
        type: array
        items:
          type: object
          properties:
            denom:
              type: string
            amount:
              type: string
          description: |-
            Coin defines a token with a denomination and an amount.

            NOTE: The amount field is an Int which implements the custom method
            signatures required by gogoproto.
        description: balances is the spendable balances of all the coins.
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: >-
      QuerySpendableBalancesResponse defines the gRPC response structure for
      querying

      an account's spendable balances.


      Since: cosmos-sdk 0.46
  cosmos.bank.v1beta1.QuerySupplyOfResponse:
    type: object
    properties:
      amount:
        type: object
        properties:
          denom:
            type: string
          amount:
            type: string
        description: |-
          Coin defines a token with a denomination and an amount.

          NOTE: The amount field is an Int which implements the custom method
          signatures required by gogoproto.
    description: >-
      QuerySupplyOfResponse is the response type for the Query/SupplyOf RPC
      method.
  cosmos.bank.v1beta1.QueryTotalSupplyResponse:
    type: object
    properties:
      supply:
        type: array
        items:
          type: object
          properties:
            denom:
              type: string
            amount:
              type: string
          description: |-
            Coin defines a token with a denomination and an amount.

            NOTE: The amount field is an Int which implements the custom method
            signatures required by gogoproto.
        title: supply is the supply of the coins
      pagination:
        description: |-
          pagination defines the pagination in the response.

          Since: cosmos-sdk 0.43
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    title: >-
      QueryTotalSupplyResponse is the response type for the Query/TotalSupply
      RPC

      method
  cosmos.bank.v1beta1.SendEnabled:
    type: object
    properties:
      denom:
        type: string
      enabled:
        type: boolean
    description: |-
      SendEnabled maps coin denom to a send_enabled status (whether a denom is
      sendable).
  cosmos.base.v1beta1.Coin:
    type: object
    properties:
      denom:
        type: string
      amount:
        type: string
    description: |-
      Coin defines a token with a denomination and an amount.

      NOTE: The amount field is an Int which implements the custom method
      signatures required by gogoproto.
  cosmos.base.tendermint.v1beta1.ABCIQueryResponse:
    type: object
    properties:
      code:
        type: integer
        format: int64
      log:
        type: string
      info:
        type: string
      index:
        type: string
        format: int64
      key:
        type: string
        format: byte
      value:
        type: string
        format: byte
      proof_ops:
        type: object
        properties:
          ops:
            type: array
            items:
              type: object
              properties:
                type:
                  type: string
                key:
                  type: string
                  format: byte
                data:
                  type: string
                  format: byte
              description: >-
                ProofOp defines an operation used for calculating Merkle root.
                The data could

                be arbitrary format, providing nessecary data for example
                neighbouring node

                hash.


                Note: This type is a duplicate of the ProofOp proto type defined
                in

                Tendermint.
        description: |-
          ProofOps is Merkle proof defined by the list of ProofOps.

          Note: This type is a duplicate of the ProofOps proto type defined in
          Tendermint.
      height:
        type: string
        format: int64
      codespace:
        type: string
    description: |-
      ABCIQueryResponse defines the response structure for the ABCIQuery gRPC
      query.

      Note: This type is a duplicate of the ResponseQuery proto type defined in
      Tendermint.
  cosmos.base.tendermint.v1beta1.Block:
    type: object
    properties:
      header:
        type: object
        properties:
          version:
            title: basic block info
            type: object
            properties:
              block:
                type: string
                format: uint64
              app:
                type: string
                format: uint64
            description: >-
              Consensus captures the consensus rules for processing a block in
              the blockchain,

              including all blockchain data structures and the rules of the
              application's

              state transition machine.
          chain_id:
            type: string
          height:
            type: string
            format: int64
          time:
            type: string
            format: date-time
          last_block_id:
            type: object
            properties:
              hash:
                type: string
                format: byte
              part_set_header:
                type: object
                properties:
                  total:
                    type: integer
                    format: int64
                  hash:
                    type: string
                    format: byte
                title: PartsetHeader
            title: BlockID
          last_commit_hash:
            type: string
            format: byte
            title: hashes of block data
          data_hash:
            type: string
            format: byte
          validators_hash:
            type: string
            format: byte
            title: hashes from the app output from the prev block
          next_validators_hash:
            type: string
            format: byte
          consensus_hash:
            type: string
            format: byte
          app_hash:
            type: string
            format: byte
          last_results_hash:
            type: string
            format: byte
          evidence_hash:
            type: string
            format: byte
            title: consensus info
          proposer_address:
            type: string
            description: >-
              proposer_address is the original block proposer address, formatted
              as a Bech32 string.

              In Tendermint, this type is `bytes`, but in the SDK, we convert it
              to a Bech32 string

              for better UX.
        description: Header defines the structure of a Tendermint block header.
      data:
        type: object
        properties:
          txs:
            type: array
            items:
              type: string
              format: byte
            description: >-
              Txs that will be applied by state @ block.Height+1.

              NOTE: not all txs here are valid.  We're just agreeing on the
              order first.

              This means that block.AppHash does not include these txs.
        title: Data contains the set of transactions included in the block
      evidence:
        type: object
        properties:
          evidence:
            type: array
            items:
              type: object
              properties:
                duplicate_vote_evidence:
                  type: object
                  properties:
                    vote_a:
                      type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - SIGNED_MSG_TYPE_UNKNOWN
                            - SIGNED_MSG_TYPE_PREVOTE
                            - SIGNED_MSG_TYPE_PRECOMMIT
                            - SIGNED_MSG_TYPE_PROPOSAL
                          default: SIGNED_MSG_TYPE_UNKNOWN
                          description: >-
                            SignedMsgType is a type of signed message in the
                            consensus.

                             - SIGNED_MSG_TYPE_PREVOTE: Votes
                             - SIGNED_MSG_TYPE_PROPOSAL: Proposals
                        height:
                          type: string
                          format: int64
                        round:
                          type: integer
                          format: int32
                        block_id:
                          type: object
                          properties:
                            hash:
                              type: string
                              format: byte
                            part_set_header:
                              type: object
                              properties:
                                total:
                                  type: integer
                                  format: int64
                                hash:
                                  type: string
                                  format: byte
                              title: PartsetHeader
                          title: BlockID
                        timestamp:
                          type: string
                          format: date-time
                        validator_address:
                          type: string
                          format: byte
                        validator_index:
                          type: integer
                          format: int32
                        signature:
                          type: string
                          format: byte
                      description: >-
                        Vote represents a prevote, precommit, or commit vote
                        from validators for

                        consensus.
                    vote_b:
                      type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - SIGNED_MSG_TYPE_UNKNOWN
                            - SIGNED_MSG_TYPE_PREVOTE
                            - SIGNED_MSG_TYPE_PRECOMMIT
                            - SIGNED_MSG_TYPE_PROPOSAL
                          default: SIGNED_MSG_TYPE_UNKNOWN
                          description: >-
                            SignedMsgType is a type of signed message in the
                            consensus.

                             - SIGNED_MSG_TYPE_PREVOTE: Votes
                             - SIGNED_MSG_TYPE_PROPOSAL: Proposals
                        height:
                          type: string
                          format: int64
                        round:
                          type: integer
                          format: int32
                        block_id:
                          type: object
                          properties:
                            hash:
                              type: string
                              format: byte
                            part_set_header:
                              type: object
                              properties:
                                total:
                                  type: integer
                                  format: int64
                                hash:
                                  type: string
                                  format: byte
                              title: PartsetHeader
                          title: BlockID
                        timestamp:
                          type: string
                          format: date-time
                        validator_address:
                          type: string
                          format: byte
                        validator_index:
                          type: integer
                          format: int32
                        signature:
                          type: string
                          format: byte
                      description: >-
                        Vote represents a prevote, precommit, or commit vote
                        from validators for

                        consensus.
                    total_voting_power:
                      type: string
                      format: int64
                    validator_power:
                      type: string
                      format: int64
                    timestamp:
                      type: string
                      format: date-time
                  description: >-
                    DuplicateVoteEvidence contains evidence of a validator
                    signed two conflicting votes.
                light_client_attack_evidence:
                  type: object
                  properties:
                    conflicting_block:
                      type: object
                      properties:
                        signed_header:
                          type: object
                          properties:
                            header:
                              type: object
                              properties:
                                version:
                                  title: basic block info
                                  type: object
                                  properties:
                                    block:
                                      type: string
                                      format: uint64
                                    app:
                                      type: string
                                      format: uint64
                                  description: >-
                                    Consensus captures the consensus rules for
                                    processing a block in the blockchain,

                                    including all blockchain data structures and
                                    the rules of the application's

                                    state transition machine.
                                chain_id:
                                  type: string
                                height:
                                  type: string
                                  format: int64
                                time:
                                  type: string
                                  format: date-time
                                last_block_id:
                                  type: object
                                  properties:
                                    hash:
                                      type: string
                                      format: byte
                                    part_set_header:
                                      type: object
                                      properties:
                                        total:
                                          type: integer
                                          format: int64
                                        hash:
                                          type: string
                                          format: byte
                                      title: PartsetHeader
                                  title: BlockID
                                last_commit_hash:
                                  type: string
                                  format: byte
                                  title: hashes of block data
                                data_hash:
                                  type: string
                                  format: byte
                                validators_hash:
                                  type: string
                                  format: byte
                                  title: >-
                                    hashes from the app output from the prev
                                    block
                                next_validators_hash:
                                  type: string
                                  format: byte
                                consensus_hash:
                                  type: string
                                  format: byte
                                app_hash:
                                  type: string
                                  format: byte
                                last_results_hash:
                                  type: string
                                  format: byte
                                evidence_hash:
                                  type: string
                                  format: byte
                                  title: consensus info
                                proposer_address:
                                  type: string
                                  format: byte
                              description: >-
                                Header defines the structure of a Tendermint
                                block header.
                            commit:
                              type: object
                              properties:
                                height:
                                  type: string
                                  format: int64
                                round:
                                  type: integer
                                  format: int32
                                block_id:
                                  type: object
                                  properties:
                                    hash:
                                      type: string
                                      format: byte
                                    part_set_header:
                                      type: object
                                      properties:
                                        total:
                                          type: integer
                                          format: int64
                                        hash:
                                          type: string
                                          format: byte
                                      title: PartsetHeader
                                  title: BlockID
                                signatures:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      block_id_flag:
                                        type: string
                                        enum:
                                          - BLOCK_ID_FLAG_UNKNOWN
                                          - BLOCK_ID_FLAG_ABSENT
                                          - BLOCK_ID_FLAG_COMMIT
                                          - BLOCK_ID_FLAG_NIL
                                        default: BLOCK_ID_FLAG_UNKNOWN
                                        title: >-
                                          BlockIdFlag indicates which BlcokID the
                                          signature is for
                                      validator_address:
                                        type: string
                                        format: byte
                                      timestamp:
                                        type: string
                                        format: date-time
                                      signature:
                                        type: string
                                        format: byte
                                    description: >-
                                      CommitSig is a part of the Vote included
                                      in a Commit.
                              description: >-
                                Commit contains the evidence that a block was
                                committed by a set of validators.
                        validator_set:
                          type: object
                          properties:
                            validators:
                              type: array
                              items:
                                type: object
                                properties:
                                  address:
                                    type: string
                                    format: byte
                                  pub_key:
                                    type: object
                                    properties:
                                      ed25519:
                                        type: string
                                        format: byte
                                      secp256k1:
                                        type: string
                                        format: byte
                                    title: >-
                                      PublicKey defines the keys available for
                                      use with Tendermint Validators
                                  voting_power:
                                    type: string
                                    format: int64
                                  proposer_priority:
                                    type: string
                                    format: int64
                            proposer:
                              type: object
                              properties:
                                address:
                                  type: string
                                  format: byte
                                pub_key:
                                  type: object
                                  properties:
                                    ed25519:
                                      type: string
                                      format: byte
                                    secp256k1:
                                      type: string
                                      format: byte
                                  title: >-
                                    PublicKey defines the keys available for use
                                    with Tendermint Validators
                                voting_power:
                                  type: string
                                  format: int64
                                proposer_priority:
                                  type: string
                                  format: int64
                            total_voting_power:
                              type: string
                              format: int64
                    common_height:
                      type: string
                      format: int64
                    byzantine_validators:
                      type: array
                      items:
                        type: object
                        properties:
                          address:
                            type: string
                            format: byte
                          pub_key:
                            type: object
                            properties:
                              ed25519:
                                type: string
                                format: byte
                              secp256k1:
                                type: string
                                format: byte
                            title: >-
                              PublicKey defines the keys available for use with
                              Tendermint Validators
                          voting_power:
                            type: string
                            format: int64
                          proposer_priority:
                            type: string
                            format: int64
                    total_voting_power:
                      type: string
                      format: int64
                    timestamp:
                      type: string
                      format: date-time
                  description: >-
                    LightClientAttackEvidence contains evidence of a set of
                    validators attempting to mislead a light client.
      last_commit:
        type: object
        properties:
          height:
            type: string
            format: int64
          round:
            type: integer
            format: int32
          block_id:
            type: object
            properties:
              hash:
                type: string
                format: byte
              part_set_header:
                type: object
                properties:
                  total:
                    type: integer
                    format: int64
                  hash:
                    type: string
                    format: byte
                title: PartsetHeader
            title: BlockID
          signatures:
            type: array
            items:
              type: object
              properties:
                block_id_flag:
                  type: string
                  enum:
                    - BLOCK_ID_FLAG_UNKNOWN
                    - BLOCK_ID_FLAG_ABSENT
                    - BLOCK_ID_FLAG_COMMIT
                    - BLOCK_ID_FLAG_NIL
                  default: BLOCK_ID_FLAG_UNKNOWN
                  title: BlockIdFlag indicates which BlcokID the signature is for
                validator_address:
                  type: string
                  format: byte
                timestamp:
                  type: string
                  format: date-time
                signature:
                  type: string
                  format: byte
              description: CommitSig is a part of the Vote included in a Commit.
        description: >-
          Commit contains the evidence that a block was committed by a set of
          validators.
    description: |-
      Block is tendermint type Block, with the Header proposer address
      field converted to bech32 string.
  cosmos.base.tendermint.v1beta1.GetBlockByHeightResponse:
    type: object
    properties:
      block_id:
        type: object
        properties:
          hash:
            type: string
            format: byte
          part_set_header:
            type: object
            properties:
              total:
                type: integer
                format: int64
              hash:
                type: string
                format: byte
            title: PartsetHeader
        title: BlockID
      block:
        title: 'Deprecated: please use `sdk_block` instead'
        type: object
        properties:
          header:
            type: object
            properties:
              version:
                title: basic block info
                type: object
                properties:
                  block:
                    type: string
                    format: uint64
                  app:
                    type: string
                    format: uint64
                description: >-
                  Consensus captures the consensus rules for processing a block
                  in the blockchain,

                  including all blockchain data structures and the rules of the
                  application's

                  state transition machine.
              chain_id:
                type: string
              height:
                type: string
                format: int64
              time:
                type: string
                format: date-time
              last_block_id:
                type: object
                properties:
                  hash:
                    type: string
                    format: byte
                  part_set_header:
                    type: object
                    properties:
                      total:
                        type: integer
                        format: int64
                      hash:
                        type: string
                        format: byte
                    title: PartsetHeader
                title: BlockID
              last_commit_hash:
                type: string
                format: byte
                title: hashes of block data
              data_hash:
                type: string
                format: byte
              validators_hash:
                type: string
                format: byte
                title: hashes from the app output from the prev block
              next_validators_hash:
                type: string
                format: byte
              consensus_hash:
                type: string
                format: byte
              app_hash:
                type: string
                format: byte
              last_results_hash:
                type: string
                format: byte
              evidence_hash:
                type: string
                format: byte
                title: consensus info
              proposer_address:
                type: string
                format: byte
            description: Header defines the structure of a Tendermint block header.
          data:
            type: object
            properties:
              txs:
                type: array
                items:
                  type: string
                  format: byte
                description: >-
                  Txs that will be applied by state @ block.Height+1.

                  NOTE: not all txs here are valid.  We're just agreeing on the
                  order first.

                  This means that block.AppHash does not include these txs.
            title: Data contains the set of transactions included in the block
          evidence:
            type: object
            properties:
              evidence:
                type: array
                items:
                  type: object
                  properties:
                    duplicate_vote_evidence:
                      type: object
                      properties:
                        vote_a:
                          type: object
                          properties:
                            type:
                              type: string
                              enum:
                                - SIGNED_MSG_TYPE_UNKNOWN
                                - SIGNED_MSG_TYPE_PREVOTE
                                - SIGNED_MSG_TYPE_PRECOMMIT
                                - SIGNED_MSG_TYPE_PROPOSAL
                              default: SIGNED_MSG_TYPE_UNKNOWN
                              description: >-
                                SignedMsgType is a type of signed message in the
                                consensus.

                                 - SIGNED_MSG_TYPE_PREVOTE: Votes
                                 - SIGNED_MSG_TYPE_PROPOSAL: Proposals
                            height:
                              type: string
                              format: int64
                            round:
                              type: integer
                              format: int32
                            block_id:
                              type: object
                              properties:
                                hash:
                                  type: string
                                  format: byte
                                part_set_header:
                                  type: object
                                  properties:
                                    total:
                                      type: integer
                                      format: int64
                                    hash:
                                      type: string
                                      format: byte
                                  title: PartsetHeader
                              title: BlockID
                            timestamp:
                              type: string
                              format: date-time
                            validator_address:
                              type: string
                              format: byte
                            validator_index:
                              type: integer
                              format: int32
                            signature:
                              type: string
                              format: byte
                          description: >-
                            Vote represents a prevote, precommit, or commit vote
                            from validators for

                            consensus.
                        vote_b:
                          type: object
                          properties:
                            type:
                              type: string
                              enum:
                                - SIGNED_MSG_TYPE_UNKNOWN
                                - SIGNED_MSG_TYPE_PREVOTE
                                - SIGNED_MSG_TYPE_PRECOMMIT
                                - SIGNED_MSG_TYPE_PROPOSAL
                              default: SIGNED_MSG_TYPE_UNKNOWN
                              description: >-
                                SignedMsgType is a type of signed message in the
                                consensus.

                                 - SIGNED_MSG_TYPE_PREVOTE: Votes
                                 - SIGNED_MSG_TYPE_PROPOSAL: Proposals
                            height:
                              type: string
                              format: int64
                            round:
                              type: integer
                              format: int32
                            block_id:
                              type: object
                              properties:
                                hash:
                                  type: string
                                  format: byte
                                part_set_header:
                                  type: object
                                  properties:
                                    total:
                                      type: integer
                                      format: int64
                                    hash:
                                      type: string
                                      format: byte
                                  title: PartsetHeader
                              title: BlockID
                            timestamp:
                              type: string
                              format: date-time
                            validator_address:
                              type: string
                              format: byte
                            validator_index:
                              type: integer
                              format: int32
                            signature:
                              type: string
                              format: byte
                          description: >-
                            Vote represents a prevote, precommit, or commit vote
                            from validators for

                            consensus.
                        total_voting_power:
                          type: string
                          format: int64
                        validator_power:
                          type: string
                          format: int64
                        timestamp:
                          type: string
                          format: date-time
                      description: >-
                        DuplicateVoteEvidence contains evidence of a validator
                        signed two conflicting votes.
                    light_client_attack_evidence:
                      type: object
                      properties:
                        conflicting_block:
                          type: object
                          properties:
                            signed_header:
                              type: object
                              properties:
                                header:
                                  type: object
                                  properties:
                                    version:
                                      title: basic block info
                                      type: object
                                      properties:
                                        block:
                                          type: string
                                          format: uint64
                                        app:
                                          type: string
                                          format: uint64
                                      description: >-
                                        Consensus captures the consensus rules
                                        for processing a block in the
                                        blockchain,

                                        including all blockchain data structures
                                        and the rules of the application's

                                        state transition machine.
                                    chain_id:
                                      type: string
                                    height:
                                      type: string
                                      format: int64
                                    time:
                                      type: string
                                      format: date-time
                                    last_block_id:
                                      type: object
                                      properties:
                                        hash:
                                          type: string
                                          format: byte
                                        part_set_header:
                                          type: object
                                          properties:
                                            total:
                                              type: integer
                                              format: int64
                                            hash:
                                              type: string
                                              format: byte
                                          title: PartsetHeader
                                      title: BlockID
                                    last_commit_hash:
                                      type: string
                                      format: byte
                                      title: hashes of block data
                                    data_hash:
                                      type: string
                                      format: byte
                                    validators_hash:
                                      type: string
                                      format: byte
                                      title: >-
                                        hashes from the app output from the prev
                                        block
                                    next_validators_hash:
                                      type: string
                                      format: byte
                                    consensus_hash:
                                      type: string
                                      format: byte
                                    app_hash:
                                      type: string
                                      format: byte
                                    last_results_hash:
                                      type: string
                                      format: byte
                                    evidence_hash:
                                      type: string
                                      format: byte
                                      title: consensus info
                                    proposer_address:
                                      type: string
                                      format: byte
                                  description: >-
                                    Header defines the structure of a Tendermint
                                    block header.
                                commit:
                                  type: object
                                  properties:
                                    height:
                                      type: string
                                      format: int64
                                    round:
                                      type: integer
                                      format: int32
                                    block_id:
                                      type: object
                                      properties:
                                        hash:
                                          type: string
                                          format: byte
                                        part_set_header:
                                          type: object
                                          properties:
                                            total:
                                              type: integer
                                              format: int64
                                            hash:
                                              type: string
                                              format: byte
                                          title: PartsetHeader
                                      title: BlockID
                                    signatures:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          block_id_flag:
                                            type: string
                                            enum:
                                              - BLOCK_ID_FLAG_UNKNOWN
                                              - BLOCK_ID_FLAG_ABSENT
                                              - BLOCK_ID_FLAG_COMMIT
                                              - BLOCK_ID_FLAG_NIL
                                            default: BLOCK_ID_FLAG_UNKNOWN
                                            title: >-
                                              BlockIdFlag indicates which BlcokID the
                                              signature is for
                                          validator_address:
                                            type: string
                                            format: byte
                                          timestamp:
                                            type: string
                                            format: date-time
                                          signature:
                                            type: string
                                            format: byte
                                        description: >-
                                          CommitSig is a part of the Vote included
                                          in a Commit.
                                  description: >-
                                    Commit contains the evidence that a block
                                    was committed by a set of validators.
                            validator_set:
                              type: object
                              properties:
                                validators:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      address:
                                        type: string
                                        format: byte
                                      pub_key:
                                        type: object
                                        properties:
                                          ed25519:
                                            type: string
                                            format: byte
                                          secp256k1:
                                            type: string
                                            format: byte
                                        title: >-
                                          PublicKey defines the keys available for
                                          use with Tendermint Validators
                                      voting_power:
                                        type: string
                                        format: int64
                                      proposer_priority:
                                        type: string
                                        format: int64
                                proposer:
                                  type: object
                                  properties:
                                    address:
                                      type: string
                                      format: byte
                                    pub_key:
                                      type: object
                                      properties:
                                        ed25519:
                                          type: string
                                          format: byte
                                        secp256k1:
                                          type: string
                                          format: byte
                                      title: >-
                                        PublicKey defines the keys available for
                                        use with Tendermint Validators
                                    voting_power:
                                      type: string
                                      format: int64
                                    proposer_priority:
                                      type: string
                                      format: int64
                                total_voting_power:
                                  type: string
                                  format: int64
                        common_height:
                          type: string
                          format: int64
                        byzantine_validators:
                          type: array
                          items:
                            type: object
                            properties:
                              address:
                                type: string
                                format: byte
                              pub_key:
                                type: object
                                properties:
                                  ed25519:
                                    type: string
                                    format: byte
                                  secp256k1:
                                    type: string
                                    format: byte
                                title: >-
                                  PublicKey defines the keys available for use
                                  with Tendermint Validators
                              voting_power:
                                type: string
                                format: int64
                              proposer_priority:
                                type: string
                                format: int64
                        total_voting_power:
                          type: string
                          format: int64
                        timestamp:
                          type: string
                          format: date-time
                      description: >-
                        LightClientAttackEvidence contains evidence of a set of
                        validators attempting to mislead a light client.
          last_commit:
            type: object
            properties:
              height:
                type: string
                format: int64
              round:
                type: integer
                format: int32
              block_id:
                type: object
                properties:
                  hash:
                    type: string
                    format: byte
                  part_set_header:
                    type: object
                    properties:
                      total:
                        type: integer
                        format: int64
                      hash:
                        type: string
                        format: byte
                    title: PartsetHeader
                title: BlockID
              signatures:
                type: array
                items:
                  type: object
                  properties:
                    block_id_flag:
                      type: string
                      enum:
                        - BLOCK_ID_FLAG_UNKNOWN
                        - BLOCK_ID_FLAG_ABSENT
                        - BLOCK_ID_FLAG_COMMIT
                        - BLOCK_ID_FLAG_NIL
                      default: BLOCK_ID_FLAG_UNKNOWN
                      title: BlockIdFlag indicates which BlcokID the signature is for
                    validator_address:
                      type: string
                      format: byte
                    timestamp:
                      type: string
                      format: date-time
                    signature:
                      type: string
                      format: byte
                  description: CommitSig is a part of the Vote included in a Commit.
            description: >-
              Commit contains the evidence that a block was committed by a set
              of validators.
      sdk_block:
        title: 'Since: cosmos-sdk 0.47'
        type: object
        properties:
          header:
            type: object
            properties:
              version:
                title: basic block info
                type: object
                properties:
                  block:
                    type: string
                    format: uint64
                  app:
                    type: string
                    format: uint64
                description: >-
                  Consensus captures the consensus rules for processing a block
                  in the blockchain,

                  including all blockchain data structures and the rules of the
                  application's

                  state transition machine.
              chain_id:
                type: string
              height:
                type: string
                format: int64
              time:
                type: string
                format: date-time
              last_block_id:
                type: object
                properties:
                  hash:
                    type: string
                    format: byte
                  part_set_header:
                    type: object
                    properties:
                      total:
                        type: integer
                        format: int64
                      hash:
                        type: string
                        format: byte
                    title: PartsetHeader
                title: BlockID
              last_commit_hash:
                type: string
                format: byte
                title: hashes of block data
              data_hash:
                type: string
                format: byte
              validators_hash:
                type: string
                format: byte
                title: hashes from the app output from the prev block
              next_validators_hash:
                type: string
                format: byte
              consensus_hash:
                type: string
                format: byte
              app_hash:
                type: string
                format: byte
              last_results_hash:
                type: string
                format: byte
              evidence_hash:
                type: string
                format: byte
                title: consensus info
              proposer_address:
                type: string
                description: >-
                  proposer_address is the original block proposer address,
                  formatted as a Bech32 string.

                  In Tendermint, this type is `bytes`, but in the SDK, we
                  convert it to a Bech32 string

                  for better UX.
            description: Header defines the structure of a Tendermint block header.
          data:
            type: object
            properties:
              txs:
                type: array
                items:
                  type: string
                  format: byte
                description: >-
                  Txs that will be applied by state @ block.Height+1.

                  NOTE: not all txs here are valid.  We're just agreeing on the
                  order first.

                  This means that block.AppHash does not include these txs.
            title: Data contains the set of transactions included in the block
          evidence:
            type: object
            properties:
              evidence:
                type: array
                items:
                  type: object
                  properties:
                    duplicate_vote_evidence:
                      type: object
                      properties:
                        vote_a:
                          type: object
                          properties:
                            type:
                              type: string
                              enum:
                                - SIGNED_MSG_TYPE_UNKNOWN
                                - SIGNED_MSG_TYPE_PREVOTE
                                - SIGNED_MSG_TYPE_PRECOMMIT
                                - SIGNED_MSG_TYPE_PROPOSAL
                              default: SIGNED_MSG_TYPE_UNKNOWN
                              description: >-
                                SignedMsgType is a type of signed message in the
                                consensus.

                                 - SIGNED_MSG_TYPE_PREVOTE: Votes
                                 - SIGNED_MSG_TYPE_PROPOSAL: Proposals
                            height:
                              type: string
                              format: int64
                            round:
                              type: integer
                              format: int32
                            block_id:
                              type: object
                              properties:
                                hash:
                                  type: string
                                  format: byte
                                part_set_header:
                                  type: object
                                  properties:
                                    total:
                                      type: integer
                                      format: int64
                                    hash:
                                      type: string
                                      format: byte
                                  title: PartsetHeader
                              title: BlockID
                            timestamp:
                              type: string
                              format: date-time
                            validator_address:
                              type: string
                              format: byte
                            validator_index:
                              type: integer
                              format: int32
                            signature:
                              type: string
                              format: byte
                          description: >-
                            Vote represents a prevote, precommit, or commit vote
                            from validators for

                            consensus.
                        vote_b:
                          type: object
                          properties:
                            type:
                              type: string
                              enum:
                                - SIGNED_MSG_TYPE_UNKNOWN
                                - SIGNED_MSG_TYPE_PREVOTE
                                - SIGNED_MSG_TYPE_PRECOMMIT
                                - SIGNED_MSG_TYPE_PROPOSAL
                              default: SIGNED_MSG_TYPE_UNKNOWN
                              description: >-
                                SignedMsgType is a type of signed message in the
                                consensus.

                                 - SIGNED_MSG_TYPE_PREVOTE: Votes
                                 - SIGNED_MSG_TYPE_PROPOSAL: Proposals
                            height:
                              type: string
                              format: int64
                            round:
                              type: integer
                              format: int32
                            block_id:
                              type: object
                              properties:
                                hash:
                                  type: string
                                  format: byte
                                part_set_header:
                                  type: object
                                  properties:
                                    total:
                                      type: integer
                                      format: int64
                                    hash:
                                      type: string
                                      format: byte
                                  title: PartsetHeader
                              title: BlockID
                            timestamp:
                              type: string
                              format: date-time
                            validator_address:
                              type: string
                              format: byte
                            validator_index:
                              type: integer
                              format: int32
                            signature:
                              type: string
                              format: byte
                          description: >-
                            Vote represents a prevote, precommit, or commit vote
                            from validators for

                            consensus.
                        total_voting_power:
                          type: string
                          format: int64
                        validator_power:
                          type: string
                          format: int64
                        timestamp:
                          type: string
                          format: date-time
                      description: >-
                        DuplicateVoteEvidence contains evidence of a validator
                        signed two conflicting votes.
                    light_client_attack_evidence:
                      type: object
                      properties:
                        conflicting_block:
                          type: object
                          properties:
                            signed_header:
                              type: object
                              properties:
                                header:
                                  type: object
                                  properties:
                                    version:
                                      title: basic block info
                                      type: object
                                      properties:
                                        block:
                                          type: string
                                          format: uint64
                                        app:
                                          type: string
                                          format: uint64
                                      description: >-
                                        Consensus captures the consensus rules
                                        for processing a block in the
                                        blockchain,

                                        including all blockchain data structures
                                        and the rules of the application's

                                        state transition machine.
                                    chain_id:
                                      type: string
                                    height:
                                      type: string
                                      format: int64
                                    time:
                                      type: string
                                      format: date-time
                                    last_block_id:
                                      type: object
                                      properties:
                                        hash:
                                          type: string
                                          format: byte
                                        part_set_header:
                                          type: object
                                          properties:
                                            total:
                                              type: integer
                                              format: int64
                                            hash:
                                              type: string
                                              format: byte
                                          title: PartsetHeader
                                      title: BlockID
                                    last_commit_hash:
                                      type: string
                                      format: byte
                                      title: hashes of block data
                                    data_hash:
                                      type: string
                                      format: byte
                                    validators_hash:
                                      type: string
                                      format: byte
                                      title: >-
                                        hashes from the app output from the prev
                                        block
                                    next_validators_hash:
                                      type: string
                                      format: byte
                                    consensus_hash:
                                      type: string
                                      format: byte
                                    app_hash:
                                      type: string
                                      format: byte
                                    last_results_hash:
                                      type: string
                                      format: byte
                                    evidence_hash:
                                      type: string
                                      format: byte
                                      title: consensus info
                                    proposer_address:
                                      type: string
                                      format: byte
                                  description: >-
                                    Header defines the structure of a Tendermint
                                    block header.
                                commit:
                                  type: object
                                  properties:
                                    height:
                                      type: string
                                      format: int64
                                    round:
                                      type: integer
                                      format: int32
                                    block_id:
                                      type: object
                                      properties:
                                        hash:
                                          type: string
                                          format: byte
                                        part_set_header:
                                          type: object
                                          properties:
                                            total:
                                              type: integer
                                              format: int64
                                            hash:
                                              type: string
                                              format: byte
                                          title: PartsetHeader
                                      title: BlockID
                                    signatures:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          block_id_flag:
                                            type: string
                                            enum:
                                              - BLOCK_ID_FLAG_UNKNOWN
                                              - BLOCK_ID_FLAG_ABSENT
                                              - BLOCK_ID_FLAG_COMMIT
                                              - BLOCK_ID_FLAG_NIL
                                            default: BLOCK_ID_FLAG_UNKNOWN
                                            title: >-
                                              BlockIdFlag indicates which BlcokID the
                                              signature is for
                                          validator_address:
                                            type: string
                                            format: byte
                                          timestamp:
                                            type: string
                                            format: date-time
                                          signature:
                                            type: string
                                            format: byte
                                        description: >-
                                          CommitSig is a part of the Vote included
                                          in a Commit.
                                  description: >-
                                    Commit contains the evidence that a block
                                    was committed by a set of validators.
                            validator_set:
                              type: object
                              properties:
                                validators:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      address:
                                        type: string
                                        format: byte
                                      pub_key:
                                        type: object
                                        properties:
                                          ed25519:
                                            type: string
                                            format: byte
                                          secp256k1:
                                            type: string
                                            format: byte
                                        title: >-
                                          PublicKey defines the keys available for
                                          use with Tendermint Validators
                                      voting_power:
                                        type: string
                                        format: int64
                                      proposer_priority:
                                        type: string
                                        format: int64
                                proposer:
                                  type: object
                                  properties:
                                    address:
                                      type: string
                                      format: byte
                                    pub_key:
                                      type: object
                                      properties:
                                        ed25519:
                                          type: string
                                          format: byte
                                        secp256k1:
                                          type: string
                                          format: byte
                                      title: >-
                                        PublicKey defines the keys available for
                                        use with Tendermint Validators
                                    voting_power:
                                      type: string
                                      format: int64
                                    proposer_priority:
                                      type: string
                                      format: int64
                                total_voting_power:
                                  type: string
                                  format: int64
                        common_height:
                          type: string
                          format: int64
                        byzantine_validators:
                          type: array
                          items:
                            type: object
                            properties:
                              address:
                                type: string
                                format: byte
                              pub_key:
                                type: object
                                properties:
                                  ed25519:
                                    type: string
                                    format: byte
                                  secp256k1:
                                    type: string
                                    format: byte
                                title: >-
                                  PublicKey defines the keys available for use
                                  with Tendermint Validators
                              voting_power:
                                type: string
                                format: int64
                              proposer_priority:
                                type: string
                                format: int64
                        total_voting_power:
                          type: string
                          format: int64
                        timestamp:
                          type: string
                          format: date-time
                      description: >-
                        LightClientAttackEvidence contains evidence of a set of
                        validators attempting to mislead a light client.
          last_commit:
            type: object
            properties:
              height:
                type: string
                format: int64
              round:
                type: integer
                format: int32
              block_id:
                type: object
                properties:
                  hash:
                    type: string
                    format: byte
                  part_set_header:
                    type: object
                    properties:
                      total:
                        type: integer
                        format: int64
                      hash:
                        type: string
                        format: byte
                    title: PartsetHeader
                title: BlockID
              signatures:
                type: array
                items:
                  type: object
                  properties:
                    block_id_flag:
                      type: string
                      enum:
                        - BLOCK_ID_FLAG_UNKNOWN
                        - BLOCK_ID_FLAG_ABSENT
                        - BLOCK_ID_FLAG_COMMIT
                        - BLOCK_ID_FLAG_NIL
                      default: BLOCK_ID_FLAG_UNKNOWN
                      title: BlockIdFlag indicates which BlcokID the signature is for
                    validator_address:
                      type: string
                      format: byte
                    timestamp:
                      type: string
                      format: date-time
                    signature:
                      type: string
                      format: byte
                  description: CommitSig is a part of the Vote included in a Commit.
            description: >-
              Commit contains the evidence that a block was committed by a set
              of validators.
        description: |-
          Block is tendermint type Block, with the Header proposer address
          field converted to bech32 string.
    description: >-
      GetBlockByHeightResponse is the response type for the
      Query/GetBlockByHeight

      RPC method.
  cosmos.base.tendermint.v1beta1.GetLatestBlockResponse:
    type: object
    properties:
      block_id:
        type: object
        properties:
          hash:
            type: string
            format: byte
          part_set_header:
            type: object
            properties:
              total:
                type: integer
                format: int64
              hash:
                type: string
                format: byte
            title: PartsetHeader
        title: BlockID
      block:
        title: 'Deprecated: please use `sdk_block` instead'
        type: object
        properties:
          header:
            type: object
            properties:
              version:
                title: basic block info
                type: object
                properties:
                  block:
                    type: string
                    format: uint64
                  app:
                    type: string
                    format: uint64
                description: >-
                  Consensus captures the consensus rules for processing a block
                  in the blockchain,

                  including all blockchain data structures and the rules of the
                  application's

                  state transition machine.
              chain_id:
                type: string
              height:
                type: string
                format: int64
              time:
                type: string
                format: date-time
              last_block_id:
                type: object
                properties:
                  hash:
                    type: string
                    format: byte
                  part_set_header:
                    type: object
                    properties:
                      total:
                        type: integer
                        format: int64
                      hash:
                        type: string
                        format: byte
                    title: PartsetHeader
                title: BlockID
              last_commit_hash:
                type: string
                format: byte
                title: hashes of block data
              data_hash:
                type: string
                format: byte
              validators_hash:
                type: string
                format: byte
                title: hashes from the app output from the prev block
              next_validators_hash:
                type: string
                format: byte
              consensus_hash:
                type: string
                format: byte
              app_hash:
                type: string
                format: byte
              last_results_hash:
                type: string
                format: byte
              evidence_hash:
                type: string
                format: byte
                title: consensus info
              proposer_address:
                type: string
                format: byte
            description: Header defines the structure of a Tendermint block header.
          data:
            type: object
            properties:
              txs:
                type: array
                items:
                  type: string
                  format: byte
                description: >-
                  Txs that will be applied by state @ block.Height+1.

                  NOTE: not all txs here are valid.  We're just agreeing on the
                  order first.

                  This means that block.AppHash does not include these txs.
            title: Data contains the set of transactions included in the block
          evidence:
            type: object
            properties:
              evidence:
                type: array
                items:
                  type: object
                  properties:
                    duplicate_vote_evidence:
                      type: object
                      properties:
                        vote_a:
                          type: object
                          properties:
                            type:
                              type: string
                              enum:
                                - SIGNED_MSG_TYPE_UNKNOWN
                                - SIGNED_MSG_TYPE_PREVOTE
                                - SIGNED_MSG_TYPE_PRECOMMIT
                                - SIGNED_MSG_TYPE_PROPOSAL
                              default: SIGNED_MSG_TYPE_UNKNOWN
                              description: >-
                                SignedMsgType is a type of signed message in the
                                consensus.

                                 - SIGNED_MSG_TYPE_PREVOTE: Votes
                                 - SIGNED_MSG_TYPE_PROPOSAL: Proposals
                            height:
                              type: string
                              format: int64
                            round:
                              type: integer
                              format: int32
                            block_id:
                              type: object
                              properties:
                                hash:
                                  type: string
                                  format: byte
                                part_set_header:
                                  type: object
                                  properties:
                                    total:
                                      type: integer
                                      format: int64
                                    hash:
                                      type: string
                                      format: byte
                                  title: PartsetHeader
                              title: BlockID
                            timestamp:
                              type: string
                              format: date-time
                            validator_address:
                              type: string
                              format: byte
                            validator_index:
                              type: integer
                              format: int32
                            signature:
                              type: string
                              format: byte
                          description: >-
                            Vote represents a prevote, precommit, or commit vote
                            from validators for

                            consensus.
                        vote_b:
                          type: object
                          properties:
                            type:
                              type: string
                              enum:
                                - SIGNED_MSG_TYPE_UNKNOWN
                                - SIGNED_MSG_TYPE_PREVOTE
                                - SIGNED_MSG_TYPE_PRECOMMIT
                                - SIGNED_MSG_TYPE_PROPOSAL
                              default: SIGNED_MSG_TYPE_UNKNOWN
                              description: >-
                                SignedMsgType is a type of signed message in the
                                consensus.

                                 - SIGNED_MSG_TYPE_PREVOTE: Votes
                                 - SIGNED_MSG_TYPE_PROPOSAL: Proposals
                            height:
                              type: string
                              format: int64
                            round:
                              type: integer
                              format: int32
                            block_id:
                              type: object
                              properties:
                                hash:
                                  type: string
                                  format: byte
                                part_set_header:
                                  type: object
                                  properties:
                                    total:
                                      type: integer
                                      format: int64
                                    hash:
                                      type: string
                                      format: byte
                                  title: PartsetHeader
                              title: BlockID
                            timestamp:
                              type: string
                              format: date-time
                            validator_address:
                              type: string
                              format: byte
                            validator_index:
                              type: integer
                              format: int32
                            signature:
                              type: string
                              format: byte
                          description: >-
                            Vote represents a prevote, precommit, or commit vote
                            from validators for

                            consensus.
                        total_voting_power:
                          type: string
                          format: int64
                        validator_power:
                          type: string
                          format: int64
                        timestamp:
                          type: string
                          format: date-time
                      description: >-
                        DuplicateVoteEvidence contains evidence of a validator
                        signed two conflicting votes.
                    light_client_attack_evidence:
                      type: object
                      properties:
                        conflicting_block:
                          type: object
                          properties:
                            signed_header:
                              type: object
                              properties:
                                header:
                                  type: object
                                  properties:
                                    version:
                                      title: basic block info
                                      type: object
                                      properties:
                                        block:
                                          type: string
                                          format: uint64
                                        app:
                                          type: string
                                          format: uint64
                                      description: >-
                                        Consensus captures the consensus rules
                                        for processing a block in the
                                        blockchain,

                                        including all blockchain data structures
                                        and the rules of the application's

                                        state transition machine.
                                    chain_id:
                                      type: string
                                    height:
                                      type: string
                                      format: int64
                                    time:
                                      type: string
                                      format: date-time
                                    last_block_id:
                                      type: object
                                      properties:
                                        hash:
                                          type: string
                                          format: byte
                                        part_set_header:
                                          type: object
                                          properties:
                                            total:
                                              type: integer
                                              format: int64
                                            hash:
                                              type: string
                                              format: byte
                                          title: PartsetHeader
                                      title: BlockID
                                    last_commit_hash:
                                      type: string
                                      format: byte
                                      title: hashes of block data
                                    data_hash:
                                      type: string
                                      format: byte
                                    validators_hash:
                                      type: string
                                      format: byte
                                      title: >-
                                        hashes from the app output from the prev
                                        block
                                    next_validators_hash:
                                      type: string
                                      format: byte
                                    consensus_hash:
                                      type: string
                                      format: byte
                                    app_hash:
                                      type: string
                                      format: byte
                                    last_results_hash:
                                      type: string
                                      format: byte
                                    evidence_hash:
                                      type: string
                                      format: byte
                                      title: consensus info
                                    proposer_address:
                                      type: string
                                      format: byte
                                  description: >-
                                    Header defines the structure of a Tendermint
                                    block header.
                                commit:
                                  type: object
                                  properties:
                                    height:
                                      type: string
                                      format: int64
                                    round:
                                      type: integer
                                      format: int32
                                    block_id:
                                      type: object
                                      properties:
                                        hash:
                                          type: string
                                          format: byte
                                        part_set_header:
                                          type: object
                                          properties:
                                            total:
                                              type: integer
                                              format: int64
                                            hash:
                                              type: string
                                              format: byte
                                          title: PartsetHeader
                                      title: BlockID
                                    signatures:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          block_id_flag:
                                            type: string
                                            enum:
                                              - BLOCK_ID_FLAG_UNKNOWN
                                              - BLOCK_ID_FLAG_ABSENT
                                              - BLOCK_ID_FLAG_COMMIT
                                              - BLOCK_ID_FLAG_NIL
                                            default: BLOCK_ID_FLAG_UNKNOWN
                                            title: >-
                                              BlockIdFlag indicates which BlcokID the
                                              signature is for
                                          validator_address:
                                            type: string
                                            format: byte
                                          timestamp:
                                            type: string
                                            format: date-time
                                          signature:
                                            type: string
                                            format: byte
                                        description: >-
                                          CommitSig is a part of the Vote included
                                          in a Commit.
                                  description: >-
                                    Commit contains the evidence that a block
                                    was committed by a set of validators.
                            validator_set:
                              type: object
                              properties:
                                validators:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      address:
                                        type: string
                                        format: byte
                                      pub_key:
                                        type: object
                                        properties:
                                          ed25519:
                                            type: string
                                            format: byte
                                          secp256k1:
                                            type: string
                                            format: byte
                                        title: >-
                                          PublicKey defines the keys available for
                                          use with Tendermint Validators
                                      voting_power:
                                        type: string
                                        format: int64
                                      proposer_priority:
                                        type: string
                                        format: int64
                                proposer:
                                  type: object
                                  properties:
                                    address:
                                      type: string
                                      format: byte
                                    pub_key:
                                      type: object
                                      properties:
                                        ed25519:
                                          type: string
                                          format: byte
                                        secp256k1:
                                          type: string
                                          format: byte
                                      title: >-
                                        PublicKey defines the keys available for
                                        use with Tendermint Validators
                                    voting_power:
                                      type: string
                                      format: int64
                                    proposer_priority:
                                      type: string
                                      format: int64
                                total_voting_power:
                                  type: string
                                  format: int64
                        common_height:
                          type: string
                          format: int64
                        byzantine_validators:
                          type: array
                          items:
                            type: object
                            properties:
                              address:
                                type: string
                                format: byte
                              pub_key:
                                type: object
                                properties:
                                  ed25519:
                                    type: string
                                    format: byte
                                  secp256k1:
                                    type: string
                                    format: byte
                                title: >-
                                  PublicKey defines the keys available for use
                                  with Tendermint Validators
                              voting_power:
                                type: string
                                format: int64
                              proposer_priority:
                                type: string
                                format: int64
                        total_voting_power:
                          type: string
                          format: int64
                        timestamp:
                          type: string
                          format: date-time
                      description: >-
                        LightClientAttackEvidence contains evidence of a set of
                        validators attempting to mislead a light client.
          last_commit:
            type: object
            properties:
              height:
                type: string
                format: int64
              round:
                type: integer
                format: int32
              block_id:
                type: object
                properties:
                  hash:
                    type: string
                    format: byte
                  part_set_header:
                    type: object
                    properties:
                      total:
                        type: integer
                        format: int64
                      hash:
                        type: string
                        format: byte
                    title: PartsetHeader
                title: BlockID
              signatures:
                type: array
                items:
                  type: object
                  properties:
                    block_id_flag:
                      type: string
                      enum:
                        - BLOCK_ID_FLAG_UNKNOWN
                        - BLOCK_ID_FLAG_ABSENT
                        - BLOCK_ID_FLAG_COMMIT
                        - BLOCK_ID_FLAG_NIL
                      default: BLOCK_ID_FLAG_UNKNOWN
                      title: BlockIdFlag indicates which BlcokID the signature is for
                    validator_address:
                      type: string
                      format: byte
                    timestamp:
                      type: string
                      format: date-time
                    signature:
                      type: string
                      format: byte
                  description: CommitSig is a part of the Vote included in a Commit.
            description: >-
              Commit contains the evidence that a block was committed by a set
              of validators.
      sdk_block:
        title: 'Since: cosmos-sdk 0.47'
        type: object
        properties:
          header:
            type: object
            properties:
              version:
                title: basic block info
                type: object
                properties:
                  block:
                    type: string
                    format: uint64
                  app:
                    type: string
                    format: uint64
                description: >-
                  Consensus captures the consensus rules for processing a block
                  in the blockchain,

                  including all blockchain data structures and the rules of the
                  application's

                  state transition machine.
              chain_id:
                type: string
              height:
                type: string
                format: int64
              time:
                type: string
                format: date-time
              last_block_id:
                type: object
                properties:
                  hash:
                    type: string
                    format: byte
                  part_set_header:
                    type: object
                    properties:
                      total:
                        type: integer
                        format: int64
                      hash:
                        type: string
                        format: byte
                    title: PartsetHeader
                title: BlockID
              last_commit_hash:
                type: string
                format: byte
                title: hashes of block data
              data_hash:
                type: string
                format: byte
              validators_hash:
                type: string
                format: byte
                title: hashes from the app output from the prev block
              next_validators_hash:
                type: string
                format: byte
              consensus_hash:
                type: string
                format: byte
              app_hash:
                type: string
                format: byte
              last_results_hash:
                type: string
                format: byte
              evidence_hash:
                type: string
                format: byte
                title: consensus info
              proposer_address:
                type: string
                description: >-
                  proposer_address is the original block proposer address,
                  formatted as a Bech32 string.

                  In Tendermint, this type is `bytes`, but in the SDK, we
                  convert it to a Bech32 string

                  for better UX.
            description: Header defines the structure of a Tendermint block header.
          data:
            type: object
            properties:
              txs:
                type: array
                items:
                  type: string
                  format: byte
                description: >-
                  Txs that will be applied by state @ block.Height+1.

                  NOTE: not all txs here are valid.  We're just agreeing on the
                  order first.

                  This means that block.AppHash does not include these txs.
            title: Data contains the set of transactions included in the block
          evidence:
            type: object
            properties:
              evidence:
                type: array
                items:
                  type: object
                  properties:
                    duplicate_vote_evidence:
                      type: object
                      properties:
                        vote_a:
                          type: object
                          properties:
                            type:
                              type: string
                              enum:
                                - SIGNED_MSG_TYPE_UNKNOWN
                                - SIGNED_MSG_TYPE_PREVOTE
                                - SIGNED_MSG_TYPE_PRECOMMIT
                                - SIGNED_MSG_TYPE_PROPOSAL
                              default: SIGNED_MSG_TYPE_UNKNOWN
                              description: >-
                                SignedMsgType is a type of signed message in the
                                consensus.

                                 - SIGNED_MSG_TYPE_PREVOTE: Votes
                                 - SIGNED_MSG_TYPE_PROPOSAL: Proposals
                            height:
                              type: string
                              format: int64
                            round:
                              type: integer
                              format: int32
                            block_id:
                              type: object
                              properties:
                                hash:
                                  type: string
                                  format: byte
                                part_set_header:
                                  type: object
                                  properties:
                                    total:
                                      type: integer
                                      format: int64
                                    hash:
                                      type: string
                                      format: byte
                                  title: PartsetHeader
                              title: BlockID
                            timestamp:
                              type: string
                              format: date-time
                            validator_address:
                              type: string
                              format: byte
                            validator_index:
                              type: integer
                              format: int32
                            signature:
                              type: string
                              format: byte
                          description: >-
                            Vote represents a prevote, precommit, or commit vote
                            from validators for

                            consensus.
                        vote_b:
                          type: object
                          properties:
                            type:
                              type: string
                              enum:
                                - SIGNED_MSG_TYPE_UNKNOWN
                                - SIGNED_MSG_TYPE_PREVOTE
                                - SIGNED_MSG_TYPE_PRECOMMIT
                                - SIGNED_MSG_TYPE_PROPOSAL
                              default: SIGNED_MSG_TYPE_UNKNOWN
                              description: >-
                                SignedMsgType is a type of signed message in the
                                consensus.

                                 - SIGNED_MSG_TYPE_PREVOTE: Votes
                                 - SIGNED_MSG_TYPE_PROPOSAL: Proposals
                            height:
                              type: string
                              format: int64
                            round:
                              type: integer
                              format: int32
                            block_id:
                              type: object
                              properties:
                                hash:
                                  type: string
                                  format: byte
                                part_set_header:
                                  type: object
                                  properties:
                                    total:
                                      type: integer
                                      format: int64
                                    hash:
                                      type: string
                                      format: byte
                                  title: PartsetHeader
                              title: BlockID
                            timestamp:
                              type: string
                              format: date-time
                            validator_address:
                              type: string
                              format: byte
                            validator_index:
                              type: integer
                              format: int32
                            signature:
                              type: string
                              format: byte
                          description: >-
                            Vote represents a prevote, precommit, or commit vote
                            from validators for

                            consensus.
                        total_voting_power:
                          type: string
                          format: int64
                        validator_power:
                          type: string
                          format: int64
                        timestamp:
                          type: string
                          format: date-time
                      description: >-
                        DuplicateVoteEvidence contains evidence of a validator
                        signed two conflicting votes.
                    light_client_attack_evidence:
                      type: object
                      properties:
                        conflicting_block:
                          type: object
                          properties:
                            signed_header:
                              type: object
                              properties:
                                header:
                                  type: object
                                  properties:
                                    version:
                                      title: basic block info
                                      type: object
                                      properties:
                                        block:
                                          type: string
                                          format: uint64
                                        app:
                                          type: string
                                          format: uint64
                                      description: >-
                                        Consensus captures the consensus rules
                                        for processing a block in the
                                        blockchain,

                                        including all blockchain data structures
                                        and the rules of the application's

                                        state transition machine.
                                    chain_id:
                                      type: string
                                    height:
                                      type: string
                                      format: int64
                                    time:
                                      type: string
                                      format: date-time
                                    last_block_id:
                                      type: object
                                      properties:
                                        hash:
                                          type: string
                                          format: byte
                                        part_set_header:
                                          type: object
                                          properties:
                                            total:
                                              type: integer
                                              format: int64
                                            hash:
                                              type: string
                                              format: byte
                                          title: PartsetHeader
                                      title: BlockID
                                    last_commit_hash:
                                      type: string
                                      format: byte
                                      title: hashes of block data
                                    data_hash:
                                      type: string
                                      format: byte
                                    validators_hash:
                                      type: string
                                      format: byte
                                      title: >-
                                        hashes from the app output from the prev
                                        block
                                    next_validators_hash:
                                      type: string
                                      format: byte
                                    consensus_hash:
                                      type: string
                                      format: byte
                                    app_hash:
                                      type: string
                                      format: byte
                                    last_results_hash:
                                      type: string
                                      format: byte
                                    evidence_hash:
                                      type: string
                                      format: byte
                                      title: consensus info
                                    proposer_address:
                                      type: string
                                      format: byte
                                  description: >-
                                    Header defines the structure of a Tendermint
                                    block header.
                                commit:
                                  type: object
                                  properties:
                                    height:
                                      type: string
                                      format: int64
                                    round:
                                      type: integer
                                      format: int32
                                    block_id:
                                      type: object
                                      properties:
                                        hash:
                                          type: string
                                          format: byte
                                        part_set_header:
                                          type: object
                                          properties:
                                            total:
                                              type: integer
                                              format: int64
                                            hash:
                                              type: string
                                              format: byte
                                          title: PartsetHeader
                                      title: BlockID
                                    signatures:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          block_id_flag:
                                            type: string
                                            enum:
                                              - BLOCK_ID_FLAG_UNKNOWN
                                              - BLOCK_ID_FLAG_ABSENT
                                              - BLOCK_ID_FLAG_COMMIT
                                              - BLOCK_ID_FLAG_NIL
                                            default: BLOCK_ID_FLAG_UNKNOWN
                                            title: >-
                                              BlockIdFlag indicates which BlcokID the
                                              signature is for
                                          validator_address:
                                            type: string
                                            format: byte
                                          timestamp:
                                            type: string
                                            format: date-time
                                          signature:
                                            type: string
                                            format: byte
                                        description: >-
                                          CommitSig is a part of the Vote included
                                          in a Commit.
                                  description: >-
                                    Commit contains the evidence that a block
                                    was committed by a set of validators.
                            validator_set:
                              type: object
                              properties:
                                validators:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      address:
                                        type: string
                                        format: byte
                                      pub_key:
                                        type: object
                                        properties:
                                          ed25519:
                                            type: string
                                            format: byte
                                          secp256k1:
                                            type: string
                                            format: byte
                                        title: >-
                                          PublicKey defines the keys available for
                                          use with Tendermint Validators
                                      voting_power:
                                        type: string
                                        format: int64
                                      proposer_priority:
                                        type: string
                                        format: int64
                                proposer:
                                  type: object
                                  properties:
                                    address:
                                      type: string
                                      format: byte
                                    pub_key:
                                      type: object
                                      properties:
                                        ed25519:
                                          type: string
                                          format: byte
                                        secp256k1:
                                          type: string
                                          format: byte
                                      title: >-
                                        PublicKey defines the keys available for
                                        use with Tendermint Validators
                                    voting_power:
                                      type: string
                                      format: int64
                                    proposer_priority:
                                      type: string
                                      format: int64
                                total_voting_power:
                                  type: string
                                  format: int64
                        common_height:
                          type: string
                          format: int64
                        byzantine_validators:
                          type: array
                          items:
                            type: object
                            properties:
                              address:
                                type: string
                                format: byte
                              pub_key:
                                type: object
                                properties:
                                  ed25519:
                                    type: string
                                    format: byte
                                  secp256k1:
                                    type: string
                                    format: byte
                                title: >-
                                  PublicKey defines the keys available for use
                                  with Tendermint Validators
                              voting_power:
                                type: string
                                format: int64
                              proposer_priority:
                                type: string
                                format: int64
                        total_voting_power:
                          type: string
                          format: int64
                        timestamp:
                          type: string
                          format: date-time
                      description: >-
                        LightClientAttackEvidence contains evidence of a set of
                        validators attempting to mislead a light client.
          last_commit:
            type: object
            properties:
              height:
                type: string
                format: int64
              round:
                type: integer
                format: int32
              block_id:
                type: object
                properties:
                  hash:
                    type: string
                    format: byte
                  part_set_header:
                    type: object
                    properties:
                      total:
                        type: integer
                        format: int64
                      hash:
                        type: string
                        format: byte
                    title: PartsetHeader
                title: BlockID
              signatures:
                type: array
                items:
                  type: object
                  properties:
                    block_id_flag:
                      type: string
                      enum:
                        - BLOCK_ID_FLAG_UNKNOWN
                        - BLOCK_ID_FLAG_ABSENT
                        - BLOCK_ID_FLAG_COMMIT
                        - BLOCK_ID_FLAG_NIL
                      default: BLOCK_ID_FLAG_UNKNOWN
                      title: BlockIdFlag indicates which BlcokID the signature is for
                    validator_address:
                      type: string
                      format: byte
                    timestamp:
                      type: string
                      format: date-time
                    signature:
                      type: string
                      format: byte
                  description: CommitSig is a part of the Vote included in a Commit.
            description: >-
              Commit contains the evidence that a block was committed by a set
              of validators.
        description: |-
          Block is tendermint type Block, with the Header proposer address
          field converted to bech32 string.
    description: >-
      GetLatestBlockResponse is the response type for the Query/GetLatestBlock
      RPC

      method.
  cosmos.base.tendermint.v1beta1.GetLatestValidatorSetResponse:
    type: object
    properties:
      block_height:
        type: string
        format: int64
      validators:
        type: array
        items:
          type: object
          properties:
            address:
              type: string
            pub_key:
              type: object
              properties:
                type_url:
                  type: string
                  description: >-
                    A URL/resource name that uniquely identifies the type of the
                    serialized

                    protocol buffer message. This string must contain at least

                    one "/" character. The last segment of the URL's path must
                    represent

                    the fully qualified name of the type (as in

                    `path/google.protobuf.Duration`). The name should be in a
                    canonical form

                    (e.g., leading "." is not accepted).


                    In practice, teams usually precompile into the binary all
                    types that they

                    expect it to use in the context of Any. However, for URLs
                    which use the

                    scheme `http`, `https`, or no scheme, one can optionally set
                    up a type

                    server that maps type URLs to message definitions as
                    follows:


                    * If no scheme is provided, `https` is assumed.

                    * An HTTP GET on the URL must yield a
                    [google.protobuf.Type][]
                      value in binary format, or produce an error.
                    * Applications are allowed to cache lookup results based on
                    the
                      URL, or have them precompiled into a binary to avoid any
                      lookup. Therefore, binary compatibility needs to be preserved
                      on changes to types. (Use versioned type names to manage
                      breaking changes.)

                    Note: this functionality is not currently available in the
                    official

                    protobuf release, and it is not used for type URLs beginning
                    with

                    type.googleapis.com.


                    Schemes other than `http`, `https` (or the empty scheme)
                    might be

                    used with implementation specific semantics.
                value:
                  type: string
                  format: byte
                  description: >-
                    Must be a valid serialized protocol buffer of the above
                    specified type.
              description: >-
                `Any` contains an arbitrary serialized protocol buffer message
                along with a

                URL that describes the type of the serialized message.


                Protobuf library provides support to pack/unpack Any values in
                the form

                of utility functions or additional generated methods of the Any
                type.


                Example 1: Pack and unpack a message in C++.

                    Foo foo = ...;
                    Any any;
                    any.PackFrom(foo);
                    ...
                    if (any.UnpackTo(&foo)) {
                      ...
                    }

                Example 2: Pack and unpack a message in Java.

                    Foo foo = ...;
                    Any any = Any.pack(foo);
                    ...
                    if (any.is(Foo.class)) {
                      foo = any.unpack(Foo.class);
                    }

                 Example 3: Pack and unpack a message in Python.

                    foo = Foo(...)
                    any = Any()
                    any.Pack(foo)
                    ...
                    if any.Is(Foo.DESCRIPTOR):
                      any.Unpack(foo)
                      ...

                 Example 4: Pack and unpack a message in Go

                     foo := &pb.Foo{...}
                     any, err := ptypes.MarshalAny(foo)
                     ...
                     foo := &pb.Foo{}
                     if err := ptypes.UnmarshalAny(any, foo); err != nil {
                       ...
                     }

                The pack methods provided by protobuf library will by default
                use

                'type.googleapis.com/full.type.name' as the type URL and the
                unpack

                methods only use the fully qualified type name after the last
                '/'

                in the type URL, for example "foo.bar.com/x/y.z" will yield type

                name "y.z".



                JSON

                ====

                The JSON representation of an `Any` value uses the regular

                representation of the deserialized, embedded message, with an

                additional field `@type` which contains the type URL. Example:

                    package google.profile;
                    message Person {
                      string first_name = 1;
                      string last_name = 2;
                    }

                    {
                      "@type": "type.googleapis.com/google.profile.Person",
                      "firstName": <string>,
                      "lastName": <string>
                    }

                If the embedded message type is well-known and has a custom JSON

                representation, that representation will be embedded adding a
                field

                `value` which holds the custom JSON in addition to the `@type`

                field. Example (for message [google.protobuf.Duration][]):

                    {
                      "@type": "type.googleapis.com/google.protobuf.Duration",
                      "value": "1.212s"
                    }
            voting_power:
              type: string
              format: int64
            proposer_priority:
              type: string
              format: int64
          description: Validator is the type for the validator-set.
      pagination:
        description: pagination defines an pagination for the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: |-
      GetLatestValidatorSetResponse is the response type for the
      Query/GetValidatorSetByHeight RPC method.
  cosmos.base.tendermint.v1beta1.GetNodeInfoResponse:
    type: object
    properties:
      default_node_info:
        type: object
        properties:
          protocol_version:
            type: object
            properties:
              p2p:
                type: string
                format: uint64
              block:
                type: string
                format: uint64
              app:
                type: string
                format: uint64
          default_node_id:
            type: string
          listen_addr:
            type: string
          network:
            type: string
          version:
            type: string
          channels:
            type: string
            format: byte
          moniker:
            type: string
          other:
            type: object
            properties:
              tx_index:
                type: string
              rpc_address:
                type: string
      application_version:
        type: object
        properties:
          name:
            type: string
          app_name:
            type: string
          version:
            type: string
          git_commit:
            type: string
          build_tags:
            type: string
          go_version:
            type: string
          build_deps:
            type: array
            items:
              type: object
              properties:
                path:
                  type: string
                  title: module path
                version:
                  type: string
                  title: module version
                sum:
                  type: string
                  title: checksum
              title: Module is the type for VersionInfo
          cosmos_sdk_version:
            type: string
            title: 'Since: cosmos-sdk 0.43'
        description: VersionInfo is the type for the GetNodeInfoResponse message.
    description: |-
      GetNodeInfoResponse is the response type for the Query/GetNodeInfo RPC
      method.
  cosmos.base.tendermint.v1beta1.GetSyncingResponse:
    type: object
    properties:
      syncing:
        type: boolean
    description: >-
      GetSyncingResponse is the response type for the Query/GetSyncing RPC
      method.
  cosmos.base.tendermint.v1beta1.GetValidatorSetByHeightResponse:
    type: object
    properties:
      block_height:
        type: string
        format: int64
      validators:
        type: array
        items:
          type: object
          properties:
            address:
              type: string
            pub_key:
              type: object
              properties:
                type_url:
                  type: string
                  description: >-
                    A URL/resource name that uniquely identifies the type of the
                    serialized

                    protocol buffer message. This string must contain at least

                    one "/" character. The last segment of the URL's path must
                    represent

                    the fully qualified name of the type (as in

                    `path/google.protobuf.Duration`). The name should be in a
                    canonical form

                    (e.g., leading "." is not accepted).


                    In practice, teams usually precompile into the binary all
                    types that they

                    expect it to use in the context of Any. However, for URLs
                    which use the

                    scheme `http`, `https`, or no scheme, one can optionally set
                    up a type

                    server that maps type URLs to message definitions as
                    follows:


                    * If no scheme is provided, `https` is assumed.

                    * An HTTP GET on the URL must yield a
                    [google.protobuf.Type][]
                      value in binary format, or produce an error.
                    * Applications are allowed to cache lookup results based on
                    the
                      URL, or have them precompiled into a binary to avoid any
                      lookup. Therefore, binary compatibility needs to be preserved
                      on changes to types. (Use versioned type names to manage
                      breaking changes.)

                    Note: this functionality is not currently available in the
                    official

                    protobuf release, and it is not used for type URLs beginning
                    with

                    type.googleapis.com.


                    Schemes other than `http`, `https` (or the empty scheme)
                    might be

                    used with implementation specific semantics.
                value:
                  type: string
                  format: byte
                  description: >-
                    Must be a valid serialized protocol buffer of the above
                    specified type.
              description: >-
                `Any` contains an arbitrary serialized protocol buffer message
                along with a

                URL that describes the type of the serialized message.


                Protobuf library provides support to pack/unpack Any values in
                the form

                of utility functions or additional generated methods of the Any
                type.


                Example 1: Pack and unpack a message in C++.

                    Foo foo = ...;
                    Any any;
                    any.PackFrom(foo);
                    ...
                    if (any.UnpackTo(&foo)) {
                      ...
                    }

                Example 2: Pack and unpack a message in Java.

                    Foo foo = ...;
                    Any any = Any.pack(foo);
                    ...
                    if (any.is(Foo.class)) {
                      foo = any.unpack(Foo.class);
                    }

                 Example 3: Pack and unpack a message in Python.

                    foo = Foo(...)
                    any = Any()
                    any.Pack(foo)
                    ...
                    if any.Is(Foo.DESCRIPTOR):
                      any.Unpack(foo)
                      ...

                 Example 4: Pack and unpack a message in Go

                     foo := &pb.Foo{...}
                     any, err := ptypes.MarshalAny(foo)
                     ...
                     foo := &pb.Foo{}
                     if err := ptypes.UnmarshalAny(any, foo); err != nil {
                       ...
                     }

                The pack methods provided by protobuf library will by default
                use

                'type.googleapis.com/full.type.name' as the type URL and the
                unpack

                methods only use the fully qualified type name after the last
                '/'

                in the type URL, for example "foo.bar.com/x/y.z" will yield type

                name "y.z".



                JSON

                ====

                The JSON representation of an `Any` value uses the regular

                representation of the deserialized, embedded message, with an

                additional field `@type` which contains the type URL. Example:

                    package google.profile;
                    message Person {
                      string first_name = 1;
                      string last_name = 2;
                    }

                    {
                      "@type": "type.googleapis.com/google.profile.Person",
                      "firstName": <string>,
                      "lastName": <string>
                    }

                If the embedded message type is well-known and has a custom JSON

                representation, that representation will be embedded adding a
                field

                `value` which holds the custom JSON in addition to the `@type`

                field. Example (for message [google.protobuf.Duration][]):

                    {
                      "@type": "type.googleapis.com/google.protobuf.Duration",
                      "value": "1.212s"
                    }
            voting_power:
              type: string
              format: int64
            proposer_priority:
              type: string
              format: int64
          description: Validator is the type for the validator-set.
      pagination:
        description: pagination defines an pagination for the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: |-
      GetValidatorSetByHeightResponse is the response type for the
      Query/GetValidatorSetByHeight RPC method.
  cosmos.base.tendermint.v1beta1.Header:
    type: object
    properties:
      version:
        title: basic block info
        type: object
        properties:
          block:
            type: string
            format: uint64
          app:
            type: string
            format: uint64
        description: >-
          Consensus captures the consensus rules for processing a block in the
          blockchain,

          including all blockchain data structures and the rules of the
          application's

          state transition machine.
      chain_id:
        type: string
      height:
        type: string
        format: int64
      time:
        type: string
        format: date-time
      last_block_id:
        type: object
        properties:
          hash:
            type: string
            format: byte
          part_set_header:
            type: object
            properties:
              total:
                type: integer
                format: int64
              hash:
                type: string
                format: byte
            title: PartsetHeader
        title: BlockID
      last_commit_hash:
        type: string
        format: byte
        title: hashes of block data
      data_hash:
        type: string
        format: byte
      validators_hash:
        type: string
        format: byte
        title: hashes from the app output from the prev block
      next_validators_hash:
        type: string
        format: byte
      consensus_hash:
        type: string
        format: byte
      app_hash:
        type: string
        format: byte
      last_results_hash:
        type: string
        format: byte
      evidence_hash:
        type: string
        format: byte
        title: consensus info
      proposer_address:
        type: string
        description: >-
          proposer_address is the original block proposer address, formatted as
          a Bech32 string.

          In Tendermint, this type is `bytes`, but in the SDK, we convert it to
          a Bech32 string

          for better UX.
    description: Header defines the structure of a Tendermint block header.
  cosmos.base.tendermint.v1beta1.Module:
    type: object
    properties:
      path:
        type: string
        title: module path
      version:
        type: string
        title: module version
      sum:
        type: string
        title: checksum
    title: Module is the type for VersionInfo
  cosmos.base.tendermint.v1beta1.ProofOp:
    type: object
    properties:
      type:
        type: string
      key:
        type: string
        format: byte
      data:
        type: string
        format: byte
    description: >-
      ProofOp defines an operation used for calculating Merkle root. The data
      could

      be arbitrary format, providing nessecary data for example neighbouring
      node

      hash.


      Note: This type is a duplicate of the ProofOp proto type defined in

      Tendermint.
  cosmos.base.tendermint.v1beta1.ProofOps:
    type: object
    properties:
      ops:
        type: array
        items:
          type: object
          properties:
            type:
              type: string
            key:
              type: string
              format: byte
            data:
              type: string
              format: byte
          description: >-
            ProofOp defines an operation used for calculating Merkle root. The
            data could

            be arbitrary format, providing nessecary data for example
            neighbouring node

            hash.


            Note: This type is a duplicate of the ProofOp proto type defined in

            Tendermint.
    description: |-
      ProofOps is Merkle proof defined by the list of ProofOps.

      Note: This type is a duplicate of the ProofOps proto type defined in
      Tendermint.
  cosmos.base.tendermint.v1beta1.Validator:
    type: object
    properties:
      address:
        type: string
      pub_key:
        type: object
        properties:
          type_url:
            type: string
            description: >-
              A URL/resource name that uniquely identifies the type of the
              serialized

              protocol buffer message. This string must contain at least

              one "/" character. The last segment of the URL's path must
              represent

              the fully qualified name of the type (as in

              `path/google.protobuf.Duration`). The name should be in a
              canonical form

              (e.g., leading "." is not accepted).


              In practice, teams usually precompile into the binary all types
              that they

              expect it to use in the context of Any. However, for URLs which
              use the

              scheme `http`, `https`, or no scheme, one can optionally set up a
              type

              server that maps type URLs to message definitions as follows:


              * If no scheme is provided, `https` is assumed.

              * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                value in binary format, or produce an error.
              * Applications are allowed to cache lookup results based on the
                URL, or have them precompiled into a binary to avoid any
                lookup. Therefore, binary compatibility needs to be preserved
                on changes to types. (Use versioned type names to manage
                breaking changes.)

              Note: this functionality is not currently available in the
              official

              protobuf release, and it is not used for type URLs beginning with

              type.googleapis.com.


              Schemes other than `http`, `https` (or the empty scheme) might be

              used with implementation specific semantics.
          value:
            type: string
            format: byte
            description: >-
              Must be a valid serialized protocol buffer of the above specified
              type.
        description: >-
          `Any` contains an arbitrary serialized protocol buffer message along
          with a

          URL that describes the type of the serialized message.


          Protobuf library provides support to pack/unpack Any values in the
          form

          of utility functions or additional generated methods of the Any type.


          Example 1: Pack and unpack a message in C++.

              Foo foo = ...;
              Any any;
              any.PackFrom(foo);
              ...
              if (any.UnpackTo(&foo)) {
                ...
              }

          Example 2: Pack and unpack a message in Java.

              Foo foo = ...;
              Any any = Any.pack(foo);
              ...
              if (any.is(Foo.class)) {
                foo = any.unpack(Foo.class);
              }

           Example 3: Pack and unpack a message in Python.

              foo = Foo(...)
              any = Any()
              any.Pack(foo)
              ...
              if any.Is(Foo.DESCRIPTOR):
                any.Unpack(foo)
                ...

           Example 4: Pack and unpack a message in Go

               foo := &pb.Foo{...}
               any, err := ptypes.MarshalAny(foo)
               ...
               foo := &pb.Foo{}
               if err := ptypes.UnmarshalAny(any, foo); err != nil {
                 ...
               }

          The pack methods provided by protobuf library will by default use

          'type.googleapis.com/full.type.name' as the type URL and the unpack

          methods only use the fully qualified type name after the last '/'

          in the type URL, for example "foo.bar.com/x/y.z" will yield type

          name "y.z".



          JSON

          ====

          The JSON representation of an `Any` value uses the regular

          representation of the deserialized, embedded message, with an

          additional field `@type` which contains the type URL. Example:

              package google.profile;
              message Person {
                string first_name = 1;
                string last_name = 2;
              }

              {
                "@type": "type.googleapis.com/google.profile.Person",
                "firstName": <string>,
                "lastName": <string>
              }

          If the embedded message type is well-known and has a custom JSON

          representation, that representation will be embedded adding a field

          `value` which holds the custom JSON in addition to the `@type`

          field. Example (for message [google.protobuf.Duration][]):

              {
                "@type": "type.googleapis.com/google.protobuf.Duration",
                "value": "1.212s"
              }
      voting_power:
        type: string
        format: int64
      proposer_priority:
        type: string
        format: int64
    description: Validator is the type for the validator-set.
  cosmos.base.tendermint.v1beta1.VersionInfo:
    type: object
    properties:
      name:
        type: string
      app_name:
        type: string
      version:
        type: string
      git_commit:
        type: string
      build_tags:
        type: string
      go_version:
        type: string
      build_deps:
        type: array
        items:
          type: object
          properties:
            path:
              type: string
              title: module path
            version:
              type: string
              title: module version
            sum:
              type: string
              title: checksum
          title: Module is the type for VersionInfo
      cosmos_sdk_version:
        type: string
        title: 'Since: cosmos-sdk 0.43'
    description: VersionInfo is the type for the GetNodeInfoResponse message.
  tendermint.crypto.PublicKey:
    type: object
    properties:
      ed25519:
        type: string
        format: byte
      secp256k1:
        type: string
        format: byte
    title: PublicKey defines the keys available for use with Tendermint Validators
  tendermint.p2p.DefaultNodeInfo:
    type: object
    properties:
      protocol_version:
        type: object
        properties:
          p2p:
            type: string
            format: uint64
          block:
            type: string
            format: uint64
          app:
            type: string
            format: uint64
      default_node_id:
        type: string
      listen_addr:
        type: string
      network:
        type: string
      version:
        type: string
      channels:
        type: string
        format: byte
      moniker:
        type: string
      other:
        type: object
        properties:
          tx_index:
            type: string
          rpc_address:
            type: string
  tendermint.p2p.DefaultNodeInfoOther:
    type: object
    properties:
      tx_index:
        type: string
      rpc_address:
        type: string
  tendermint.p2p.ProtocolVersion:
    type: object
    properties:
      p2p:
        type: string
        format: uint64
      block:
        type: string
        format: uint64
      app:
        type: string
        format: uint64
  tendermint.types.Block:
    type: object
    properties:
      header:
        type: object
        properties:
          version:
            title: basic block info
            type: object
            properties:
              block:
                type: string
                format: uint64
              app:
                type: string
                format: uint64
            description: >-
              Consensus captures the consensus rules for processing a block in
              the blockchain,

              including all blockchain data structures and the rules of the
              application's

              state transition machine.
          chain_id:
            type: string
          height:
            type: string
            format: int64
          time:
            type: string
            format: date-time
          last_block_id:
            type: object
            properties:
              hash:
                type: string
                format: byte
              part_set_header:
                type: object
                properties:
                  total:
                    type: integer
                    format: int64
                  hash:
                    type: string
                    format: byte
                title: PartsetHeader
            title: BlockID
          last_commit_hash:
            type: string
            format: byte
            title: hashes of block data
          data_hash:
            type: string
            format: byte
          validators_hash:
            type: string
            format: byte
            title: hashes from the app output from the prev block
          next_validators_hash:
            type: string
            format: byte
          consensus_hash:
            type: string
            format: byte
          app_hash:
            type: string
            format: byte
          last_results_hash:
            type: string
            format: byte
          evidence_hash:
            type: string
            format: byte
            title: consensus info
          proposer_address:
            type: string
            format: byte
        description: Header defines the structure of a Tendermint block header.
      data:
        type: object
        properties:
          txs:
            type: array
            items:
              type: string
              format: byte
            description: >-
              Txs that will be applied by state @ block.Height+1.

              NOTE: not all txs here are valid.  We're just agreeing on the
              order first.

              This means that block.AppHash does not include these txs.
        title: Data contains the set of transactions included in the block
      evidence:
        type: object
        properties:
          evidence:
            type: array
            items:
              type: object
              properties:
                duplicate_vote_evidence:
                  type: object
                  properties:
                    vote_a:
                      type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - SIGNED_MSG_TYPE_UNKNOWN
                            - SIGNED_MSG_TYPE_PREVOTE
                            - SIGNED_MSG_TYPE_PRECOMMIT
                            - SIGNED_MSG_TYPE_PROPOSAL
                          default: SIGNED_MSG_TYPE_UNKNOWN
                          description: >-
                            SignedMsgType is a type of signed message in the
                            consensus.

                             - SIGNED_MSG_TYPE_PREVOTE: Votes
                             - SIGNED_MSG_TYPE_PROPOSAL: Proposals
                        height:
                          type: string
                          format: int64
                        round:
                          type: integer
                          format: int32
                        block_id:
                          type: object
                          properties:
                            hash:
                              type: string
                              format: byte
                            part_set_header:
                              type: object
                              properties:
                                total:
                                  type: integer
                                  format: int64
                                hash:
                                  type: string
                                  format: byte
                              title: PartsetHeader
                          title: BlockID
                        timestamp:
                          type: string
                          format: date-time
                        validator_address:
                          type: string
                          format: byte
                        validator_index:
                          type: integer
                          format: int32
                        signature:
                          type: string
                          format: byte
                      description: >-
                        Vote represents a prevote, precommit, or commit vote
                        from validators for

                        consensus.
                    vote_b:
                      type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - SIGNED_MSG_TYPE_UNKNOWN
                            - SIGNED_MSG_TYPE_PREVOTE
                            - SIGNED_MSG_TYPE_PRECOMMIT
                            - SIGNED_MSG_TYPE_PROPOSAL
                          default: SIGNED_MSG_TYPE_UNKNOWN
                          description: >-
                            SignedMsgType is a type of signed message in the
                            consensus.

                             - SIGNED_MSG_TYPE_PREVOTE: Votes
                             - SIGNED_MSG_TYPE_PROPOSAL: Proposals
                        height:
                          type: string
                          format: int64
                        round:
                          type: integer
                          format: int32
                        block_id:
                          type: object
                          properties:
                            hash:
                              type: string
                              format: byte
                            part_set_header:
                              type: object
                              properties:
                                total:
                                  type: integer
                                  format: int64
                                hash:
                                  type: string
                                  format: byte
                              title: PartsetHeader
                          title: BlockID
                        timestamp:
                          type: string
                          format: date-time
                        validator_address:
                          type: string
                          format: byte
                        validator_index:
                          type: integer
                          format: int32
                        signature:
                          type: string
                          format: byte
                      description: >-
                        Vote represents a prevote, precommit, or commit vote
                        from validators for

                        consensus.
                    total_voting_power:
                      type: string
                      format: int64
                    validator_power:
                      type: string
                      format: int64
                    timestamp:
                      type: string
                      format: date-time
                  description: >-
                    DuplicateVoteEvidence contains evidence of a validator
                    signed two conflicting votes.
                light_client_attack_evidence:
                  type: object
                  properties:
                    conflicting_block:
                      type: object
                      properties:
                        signed_header:
                          type: object
                          properties:
                            header:
                              type: object
                              properties:
                                version:
                                  title: basic block info
                                  type: object
                                  properties:
                                    block:
                                      type: string
                                      format: uint64
                                    app:
                                      type: string
                                      format: uint64
                                  description: >-
                                    Consensus captures the consensus rules for
                                    processing a block in the blockchain,

                                    including all blockchain data structures and
                                    the rules of the application's

                                    state transition machine.
                                chain_id:
                                  type: string
                                height:
                                  type: string
                                  format: int64
                                time:
                                  type: string
                                  format: date-time
                                last_block_id:
                                  type: object
                                  properties:
                                    hash:
                                      type: string
                                      format: byte
                                    part_set_header:
                                      type: object
                                      properties:
                                        total:
                                          type: integer
                                          format: int64
                                        hash:
                                          type: string
                                          format: byte
                                      title: PartsetHeader
                                  title: BlockID
                                last_commit_hash:
                                  type: string
                                  format: byte
                                  title: hashes of block data
                                data_hash:
                                  type: string
                                  format: byte
                                validators_hash:
                                  type: string
                                  format: byte
                                  title: >-
                                    hashes from the app output from the prev
                                    block
                                next_validators_hash:
                                  type: string
                                  format: byte
                                consensus_hash:
                                  type: string
                                  format: byte
                                app_hash:
                                  type: string
                                  format: byte
                                last_results_hash:
                                  type: string
                                  format: byte
                                evidence_hash:
                                  type: string
                                  format: byte
                                  title: consensus info
                                proposer_address:
                                  type: string
                                  format: byte
                              description: >-
                                Header defines the structure of a Tendermint
                                block header.
                            commit:
                              type: object
                              properties:
                                height:
                                  type: string
                                  format: int64
                                round:
                                  type: integer
                                  format: int32
                                block_id:
                                  type: object
                                  properties:
                                    hash:
                                      type: string
                                      format: byte
                                    part_set_header:
                                      type: object
                                      properties:
                                        total:
                                          type: integer
                                          format: int64
                                        hash:
                                          type: string
                                          format: byte
                                      title: PartsetHeader
                                  title: BlockID
                                signatures:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      block_id_flag:
                                        type: string
                                        enum:
                                          - BLOCK_ID_FLAG_UNKNOWN
                                          - BLOCK_ID_FLAG_ABSENT
                                          - BLOCK_ID_FLAG_COMMIT
                                          - BLOCK_ID_FLAG_NIL
                                        default: BLOCK_ID_FLAG_UNKNOWN
                                        title: >-
                                          BlockIdFlag indicates which BlcokID the
                                          signature is for
                                      validator_address:
                                        type: string
                                        format: byte
                                      timestamp:
                                        type: string
                                        format: date-time
                                      signature:
                                        type: string
                                        format: byte
                                    description: >-
                                      CommitSig is a part of the Vote included
                                      in a Commit.
                              description: >-
                                Commit contains the evidence that a block was
                                committed by a set of validators.
                        validator_set:
                          type: object
                          properties:
                            validators:
                              type: array
                              items:
                                type: object
                                properties:
                                  address:
                                    type: string
                                    format: byte
                                  pub_key:
                                    type: object
                                    properties:
                                      ed25519:
                                        type: string
                                        format: byte
                                      secp256k1:
                                        type: string
                                        format: byte
                                    title: >-
                                      PublicKey defines the keys available for
                                      use with Tendermint Validators
                                  voting_power:
                                    type: string
                                    format: int64
                                  proposer_priority:
                                    type: string
                                    format: int64
                            proposer:
                              type: object
                              properties:
                                address:
                                  type: string
                                  format: byte
                                pub_key:
                                  type: object
                                  properties:
                                    ed25519:
                                      type: string
                                      format: byte
                                    secp256k1:
                                      type: string
                                      format: byte
                                  title: >-
                                    PublicKey defines the keys available for use
                                    with Tendermint Validators
                                voting_power:
                                  type: string
                                  format: int64
                                proposer_priority:
                                  type: string
                                  format: int64
                            total_voting_power:
                              type: string
                              format: int64
                    common_height:
                      type: string
                      format: int64
                    byzantine_validators:
                      type: array
                      items:
                        type: object
                        properties:
                          address:
                            type: string
                            format: byte
                          pub_key:
                            type: object
                            properties:
                              ed25519:
                                type: string
                                format: byte
                              secp256k1:
                                type: string
                                format: byte
                            title: >-
                              PublicKey defines the keys available for use with
                              Tendermint Validators
                          voting_power:
                            type: string
                            format: int64
                          proposer_priority:
                            type: string
                            format: int64
                    total_voting_power:
                      type: string
                      format: int64
                    timestamp:
                      type: string
                      format: date-time
                  description: >-
                    LightClientAttackEvidence contains evidence of a set of
                    validators attempting to mislead a light client.
      last_commit:
        type: object
        properties:
          height:
            type: string
            format: int64
          round:
            type: integer
            format: int32
          block_id:
            type: object
            properties:
              hash:
                type: string
                format: byte
              part_set_header:
                type: object
                properties:
                  total:
                    type: integer
                    format: int64
                  hash:
                    type: string
                    format: byte
                title: PartsetHeader
            title: BlockID
          signatures:
            type: array
            items:
              type: object
              properties:
                block_id_flag:
                  type: string
                  enum:
                    - BLOCK_ID_FLAG_UNKNOWN
                    - BLOCK_ID_FLAG_ABSENT
                    - BLOCK_ID_FLAG_COMMIT
                    - BLOCK_ID_FLAG_NIL
                  default: BLOCK_ID_FLAG_UNKNOWN
                  title: BlockIdFlag indicates which BlcokID the signature is for
                validator_address:
                  type: string
                  format: byte
                timestamp:
                  type: string
                  format: date-time
                signature:
                  type: string
                  format: byte
              description: CommitSig is a part of the Vote included in a Commit.
        description: >-
          Commit contains the evidence that a block was committed by a set of
          validators.
  tendermint.types.BlockID:
    type: object
    properties:
      hash:
        type: string
        format: byte
      part_set_header:
        type: object
        properties:
          total:
            type: integer
            format: int64
          hash:
            type: string
            format: byte
        title: PartsetHeader
    title: BlockID
  tendermint.types.BlockIDFlag:
    type: string
    enum:
      - BLOCK_ID_FLAG_UNKNOWN
      - BLOCK_ID_FLAG_ABSENT
      - BLOCK_ID_FLAG_COMMIT
      - BLOCK_ID_FLAG_NIL
    default: BLOCK_ID_FLAG_UNKNOWN
    title: BlockIdFlag indicates which BlcokID the signature is for
  tendermint.types.Commit:
    type: object
    properties:
      height:
        type: string
        format: int64
      round:
        type: integer
        format: int32
      block_id:
        type: object
        properties:
          hash:
            type: string
            format: byte
          part_set_header:
            type: object
            properties:
              total:
                type: integer
                format: int64
              hash:
                type: string
                format: byte
            title: PartsetHeader
        title: BlockID
      signatures:
        type: array
        items:
          type: object
          properties:
            block_id_flag:
              type: string
              enum:
                - BLOCK_ID_FLAG_UNKNOWN
                - BLOCK_ID_FLAG_ABSENT
                - BLOCK_ID_FLAG_COMMIT
                - BLOCK_ID_FLAG_NIL
              default: BLOCK_ID_FLAG_UNKNOWN
              title: BlockIdFlag indicates which BlcokID the signature is for
            validator_address:
              type: string
              format: byte
            timestamp:
              type: string
              format: date-time
            signature:
              type: string
              format: byte
          description: CommitSig is a part of the Vote included in a Commit.
    description: >-
      Commit contains the evidence that a block was committed by a set of
      validators.
  tendermint.types.CommitSig:
    type: object
    properties:
      block_id_flag:
        type: string
        enum:
          - BLOCK_ID_FLAG_UNKNOWN
          - BLOCK_ID_FLAG_ABSENT
          - BLOCK_ID_FLAG_COMMIT
          - BLOCK_ID_FLAG_NIL
        default: BLOCK_ID_FLAG_UNKNOWN
        title: BlockIdFlag indicates which BlcokID the signature is for
      validator_address:
        type: string
        format: byte
      timestamp:
        type: string
        format: date-time
      signature:
        type: string
        format: byte
    description: CommitSig is a part of the Vote included in a Commit.
  tendermint.types.Data:
    type: object
    properties:
      txs:
        type: array
        items:
          type: string
          format: byte
        description: >-
          Txs that will be applied by state @ block.Height+1.

          NOTE: not all txs here are valid.  We're just agreeing on the order
          first.

          This means that block.AppHash does not include these txs.
    title: Data contains the set of transactions included in the block
  tendermint.types.DuplicateVoteEvidence:
    type: object
    properties:
      vote_a:
        type: object
        properties:
          type:
            type: string
            enum:
              - SIGNED_MSG_TYPE_UNKNOWN
              - SIGNED_MSG_TYPE_PREVOTE
              - SIGNED_MSG_TYPE_PRECOMMIT
              - SIGNED_MSG_TYPE_PROPOSAL
            default: SIGNED_MSG_TYPE_UNKNOWN
            description: |-
              SignedMsgType is a type of signed message in the consensus.

               - SIGNED_MSG_TYPE_PREVOTE: Votes
               - SIGNED_MSG_TYPE_PROPOSAL: Proposals
          height:
            type: string
            format: int64
          round:
            type: integer
            format: int32
          block_id:
            type: object
            properties:
              hash:
                type: string
                format: byte
              part_set_header:
                type: object
                properties:
                  total:
                    type: integer
                    format: int64
                  hash:
                    type: string
                    format: byte
                title: PartsetHeader
            title: BlockID
          timestamp:
            type: string
            format: date-time
          validator_address:
            type: string
            format: byte
          validator_index:
            type: integer
            format: int32
          signature:
            type: string
            format: byte
        description: >-
          Vote represents a prevote, precommit, or commit vote from validators
          for

          consensus.
      vote_b:
        type: object
        properties:
          type:
            type: string
            enum:
              - SIGNED_MSG_TYPE_UNKNOWN
              - SIGNED_MSG_TYPE_PREVOTE
              - SIGNED_MSG_TYPE_PRECOMMIT
              - SIGNED_MSG_TYPE_PROPOSAL
            default: SIGNED_MSG_TYPE_UNKNOWN
            description: |-
              SignedMsgType is a type of signed message in the consensus.

               - SIGNED_MSG_TYPE_PREVOTE: Votes
               - SIGNED_MSG_TYPE_PROPOSAL: Proposals
          height:
            type: string
            format: int64
          round:
            type: integer
            format: int32
          block_id:
            type: object
            properties:
              hash:
                type: string
                format: byte
              part_set_header:
                type: object
                properties:
                  total:
                    type: integer
                    format: int64
                  hash:
                    type: string
                    format: byte
                title: PartsetHeader
            title: BlockID
          timestamp:
            type: string
            format: date-time
          validator_address:
            type: string
            format: byte
          validator_index:
            type: integer
            format: int32
          signature:
            type: string
            format: byte
        description: >-
          Vote represents a prevote, precommit, or commit vote from validators
          for

          consensus.
      total_voting_power:
        type: string
        format: int64
      validator_power:
        type: string
        format: int64
      timestamp:
        type: string
        format: date-time
    description: >-
      DuplicateVoteEvidence contains evidence of a validator signed two
      conflicting votes.
  tendermint.types.Evidence:
    type: object
    properties:
      duplicate_vote_evidence:
        type: object
        properties:
          vote_a:
            type: object
            properties:
              type:
                type: string
                enum:
                  - SIGNED_MSG_TYPE_UNKNOWN
                  - SIGNED_MSG_TYPE_PREVOTE
                  - SIGNED_MSG_TYPE_PRECOMMIT
                  - SIGNED_MSG_TYPE_PROPOSAL
                default: SIGNED_MSG_TYPE_UNKNOWN
                description: |-
                  SignedMsgType is a type of signed message in the consensus.

                   - SIGNED_MSG_TYPE_PREVOTE: Votes
                   - SIGNED_MSG_TYPE_PROPOSAL: Proposals
              height:
                type: string
                format: int64
              round:
                type: integer
                format: int32
              block_id:
                type: object
                properties:
                  hash:
                    type: string
                    format: byte
                  part_set_header:
                    type: object
                    properties:
                      total:
                        type: integer
                        format: int64
                      hash:
                        type: string
                        format: byte
                    title: PartsetHeader
                title: BlockID
              timestamp:
                type: string
                format: date-time
              validator_address:
                type: string
                format: byte
              validator_index:
                type: integer
                format: int32
              signature:
                type: string
                format: byte
            description: >-
              Vote represents a prevote, precommit, or commit vote from
              validators for

              consensus.
          vote_b:
            type: object
            properties:
              type:
                type: string
                enum:
                  - SIGNED_MSG_TYPE_UNKNOWN
                  - SIGNED_MSG_TYPE_PREVOTE
                  - SIGNED_MSG_TYPE_PRECOMMIT
                  - SIGNED_MSG_TYPE_PROPOSAL
                default: SIGNED_MSG_TYPE_UNKNOWN
                description: |-
                  SignedMsgType is a type of signed message in the consensus.

                   - SIGNED_MSG_TYPE_PREVOTE: Votes
                   - SIGNED_MSG_TYPE_PROPOSAL: Proposals
              height:
                type: string
                format: int64
              round:
                type: integer
                format: int32
              block_id:
                type: object
                properties:
                  hash:
                    type: string
                    format: byte
                  part_set_header:
                    type: object
                    properties:
                      total:
                        type: integer
                        format: int64
                      hash:
                        type: string
                        format: byte
                    title: PartsetHeader
                title: BlockID
              timestamp:
                type: string
                format: date-time
              validator_address:
                type: string
                format: byte
              validator_index:
                type: integer
                format: int32
              signature:
                type: string
                format: byte
            description: >-
              Vote represents a prevote, precommit, or commit vote from
              validators for

              consensus.
          total_voting_power:
            type: string
            format: int64
          validator_power:
            type: string
            format: int64
          timestamp:
            type: string
            format: date-time
        description: >-
          DuplicateVoteEvidence contains evidence of a validator signed two
          conflicting votes.
      light_client_attack_evidence:
        type: object
        properties:
          conflicting_block:
            type: object
            properties:
              signed_header:
                type: object
                properties:
                  header:
                    type: object
                    properties:
                      version:
                        title: basic block info
                        type: object
                        properties:
                          block:
                            type: string
                            format: uint64
                          app:
                            type: string
                            format: uint64
                        description: >-
                          Consensus captures the consensus rules for processing
                          a block in the blockchain,

                          including all blockchain data structures and the rules
                          of the application's

                          state transition machine.
                      chain_id:
                        type: string
                      height:
                        type: string
                        format: int64
                      time:
                        type: string
                        format: date-time
                      last_block_id:
                        type: object
                        properties:
                          hash:
                            type: string
                            format: byte
                          part_set_header:
                            type: object
                            properties:
                              total:
                                type: integer
                                format: int64
                              hash:
                                type: string
                                format: byte
                            title: PartsetHeader
                        title: BlockID
                      last_commit_hash:
                        type: string
                        format: byte
                        title: hashes of block data
                      data_hash:
                        type: string
                        format: byte
                      validators_hash:
                        type: string
                        format: byte
                        title: hashes from the app output from the prev block
                      next_validators_hash:
                        type: string
                        format: byte
                      consensus_hash:
                        type: string
                        format: byte
                      app_hash:
                        type: string
                        format: byte
                      last_results_hash:
                        type: string
                        format: byte
                      evidence_hash:
                        type: string
                        format: byte
                        title: consensus info
                      proposer_address:
                        type: string
                        format: byte
                    description: Header defines the structure of a Tendermint block header.
                  commit:
                    type: object
                    properties:
                      height:
                        type: string
                        format: int64
                      round:
                        type: integer
                        format: int32
                      block_id:
                        type: object
                        properties:
                          hash:
                            type: string
                            format: byte
                          part_set_header:
                            type: object
                            properties:
                              total:
                                type: integer
                                format: int64
                              hash:
                                type: string
                                format: byte
                            title: PartsetHeader
                        title: BlockID
                      signatures:
                        type: array
                        items:
                          type: object
                          properties:
                            block_id_flag:
                              type: string
                              enum:
                                - BLOCK_ID_FLAG_UNKNOWN
                                - BLOCK_ID_FLAG_ABSENT
                                - BLOCK_ID_FLAG_COMMIT
                                - BLOCK_ID_FLAG_NIL
                              default: BLOCK_ID_FLAG_UNKNOWN
                              title: >-
                                BlockIdFlag indicates which BlcokID the
                                signature is for
                            validator_address:
                              type: string
                              format: byte
                            timestamp:
                              type: string
                              format: date-time
                            signature:
                              type: string
                              format: byte
                          description: >-
                            CommitSig is a part of the Vote included in a
                            Commit.
                    description: >-
                      Commit contains the evidence that a block was committed by
                      a set of validators.
              validator_set:
                type: object
                properties:
                  validators:
                    type: array
                    items:
                      type: object
                      properties:
                        address:
                          type: string
                          format: byte
                        pub_key:
                          type: object
                          properties:
                            ed25519:
                              type: string
                              format: byte
                            secp256k1:
                              type: string
                              format: byte
                          title: >-
                            PublicKey defines the keys available for use with
                            Tendermint Validators
                        voting_power:
                          type: string
                          format: int64
                        proposer_priority:
                          type: string
                          format: int64
                  proposer:
                    type: object
                    properties:
                      address:
                        type: string
                        format: byte
                      pub_key:
                        type: object
                        properties:
                          ed25519:
                            type: string
                            format: byte
                          secp256k1:
                            type: string
                            format: byte
                        title: >-
                          PublicKey defines the keys available for use with
                          Tendermint Validators
                      voting_power:
                        type: string
                        format: int64
                      proposer_priority:
                        type: string
                        format: int64
                  total_voting_power:
                    type: string
                    format: int64
          common_height:
            type: string
            format: int64
          byzantine_validators:
            type: array
            items:
              type: object
              properties:
                address:
                  type: string
                  format: byte
                pub_key:
                  type: object
                  properties:
                    ed25519:
                      type: string
                      format: byte
                    secp256k1:
                      type: string
                      format: byte
                  title: >-
                    PublicKey defines the keys available for use with Tendermint
                    Validators
                voting_power:
                  type: string
                  format: int64
                proposer_priority:
                  type: string
                  format: int64
          total_voting_power:
            type: string
            format: int64
          timestamp:
            type: string
            format: date-time
        description: >-
          LightClientAttackEvidence contains evidence of a set of validators
          attempting to mislead a light client.
  tendermint.types.EvidenceList:
    type: object
    properties:
      evidence:
        type: array
        items:
          type: object
          properties:
            duplicate_vote_evidence:
              type: object
              properties:
                vote_a:
                  type: object
                  properties:
                    type:
                      type: string
                      enum:
                        - SIGNED_MSG_TYPE_UNKNOWN
                        - SIGNED_MSG_TYPE_PREVOTE
                        - SIGNED_MSG_TYPE_PRECOMMIT
                        - SIGNED_MSG_TYPE_PROPOSAL
                      default: SIGNED_MSG_TYPE_UNKNOWN
                      description: >-
                        SignedMsgType is a type of signed message in the
                        consensus.

                         - SIGNED_MSG_TYPE_PREVOTE: Votes
                         - SIGNED_MSG_TYPE_PROPOSAL: Proposals
                    height:
                      type: string
                      format: int64
                    round:
                      type: integer
                      format: int32
                    block_id:
                      type: object
                      properties:
                        hash:
                          type: string
                          format: byte
                        part_set_header:
                          type: object
                          properties:
                            total:
                              type: integer
                              format: int64
                            hash:
                              type: string
                              format: byte
                          title: PartsetHeader
                      title: BlockID
                    timestamp:
                      type: string
                      format: date-time
                    validator_address:
                      type: string
                      format: byte
                    validator_index:
                      type: integer
                      format: int32
                    signature:
                      type: string
                      format: byte
                  description: >-
                    Vote represents a prevote, precommit, or commit vote from
                    validators for

                    consensus.
                vote_b:
                  type: object
                  properties:
                    type:
                      type: string
                      enum:
                        - SIGNED_MSG_TYPE_UNKNOWN
                        - SIGNED_MSG_TYPE_PREVOTE
                        - SIGNED_MSG_TYPE_PRECOMMIT
                        - SIGNED_MSG_TYPE_PROPOSAL
                      default: SIGNED_MSG_TYPE_UNKNOWN
                      description: >-
                        SignedMsgType is a type of signed message in the
                        consensus.

                         - SIGNED_MSG_TYPE_PREVOTE: Votes
                         - SIGNED_MSG_TYPE_PROPOSAL: Proposals
                    height:
                      type: string
                      format: int64
                    round:
                      type: integer
                      format: int32
                    block_id:
                      type: object
                      properties:
                        hash:
                          type: string
                          format: byte
                        part_set_header:
                          type: object
                          properties:
                            total:
                              type: integer
                              format: int64
                            hash:
                              type: string
                              format: byte
                          title: PartsetHeader
                      title: BlockID
                    timestamp:
                      type: string
                      format: date-time
                    validator_address:
                      type: string
                      format: byte
                    validator_index:
                      type: integer
                      format: int32
                    signature:
                      type: string
                      format: byte
                  description: >-
                    Vote represents a prevote, precommit, or commit vote from
                    validators for

                    consensus.
                total_voting_power:
                  type: string
                  format: int64
                validator_power:
                  type: string
                  format: int64
                timestamp:
                  type: string
                  format: date-time
              description: >-
                DuplicateVoteEvidence contains evidence of a validator signed
                two conflicting votes.
            light_client_attack_evidence:
              type: object
              properties:
                conflicting_block:
                  type: object
                  properties:
                    signed_header:
                      type: object
                      properties:
                        header:
                          type: object
                          properties:
                            version:
                              title: basic block info
                              type: object
                              properties:
                                block:
                                  type: string
                                  format: uint64
                                app:
                                  type: string
                                  format: uint64
                              description: >-
                                Consensus captures the consensus rules for
                                processing a block in the blockchain,

                                including all blockchain data structures and the
                                rules of the application's

                                state transition machine.
                            chain_id:
                              type: string
                            height:
                              type: string
                              format: int64
                            time:
                              type: string
                              format: date-time
                            last_block_id:
                              type: object
                              properties:
                                hash:
                                  type: string
                                  format: byte
                                part_set_header:
                                  type: object
                                  properties:
                                    total:
                                      type: integer
                                      format: int64
                                    hash:
                                      type: string
                                      format: byte
                                  title: PartsetHeader
                              title: BlockID
                            last_commit_hash:
                              type: string
                              format: byte
                              title: hashes of block data
                            data_hash:
                              type: string
                              format: byte
                            validators_hash:
                              type: string
                              format: byte
                              title: hashes from the app output from the prev block
                            next_validators_hash:
                              type: string
                              format: byte
                            consensus_hash:
                              type: string
                              format: byte
                            app_hash:
                              type: string
                              format: byte
                            last_results_hash:
                              type: string
                              format: byte
                            evidence_hash:
                              type: string
                              format: byte
                              title: consensus info
                            proposer_address:
                              type: string
                              format: byte
                          description: >-
                            Header defines the structure of a Tendermint block
                            header.
                        commit:
                          type: object
                          properties:
                            height:
                              type: string
                              format: int64
                            round:
                              type: integer
                              format: int32
                            block_id:
                              type: object
                              properties:
                                hash:
                                  type: string
                                  format: byte
                                part_set_header:
                                  type: object
                                  properties:
                                    total:
                                      type: integer
                                      format: int64
                                    hash:
                                      type: string
                                      format: byte
                                  title: PartsetHeader
                              title: BlockID
                            signatures:
                              type: array
                              items:
                                type: object
                                properties:
                                  block_id_flag:
                                    type: string
                                    enum:
                                      - BLOCK_ID_FLAG_UNKNOWN
                                      - BLOCK_ID_FLAG_ABSENT
                                      - BLOCK_ID_FLAG_COMMIT
                                      - BLOCK_ID_FLAG_NIL
                                    default: BLOCK_ID_FLAG_UNKNOWN
                                    title: >-
                                      BlockIdFlag indicates which BlcokID the
                                      signature is for
                                  validator_address:
                                    type: string
                                    format: byte
                                  timestamp:
                                    type: string
                                    format: date-time
                                  signature:
                                    type: string
                                    format: byte
                                description: >-
                                  CommitSig is a part of the Vote included in a
                                  Commit.
                          description: >-
                            Commit contains the evidence that a block was
                            committed by a set of validators.
                    validator_set:
                      type: object
                      properties:
                        validators:
                          type: array
                          items:
                            type: object
                            properties:
                              address:
                                type: string
                                format: byte
                              pub_key:
                                type: object
                                properties:
                                  ed25519:
                                    type: string
                                    format: byte
                                  secp256k1:
                                    type: string
                                    format: byte
                                title: >-
                                  PublicKey defines the keys available for use
                                  with Tendermint Validators
                              voting_power:
                                type: string
                                format: int64
                              proposer_priority:
                                type: string
                                format: int64
                        proposer:
                          type: object
                          properties:
                            address:
                              type: string
                              format: byte
                            pub_key:
                              type: object
                              properties:
                                ed25519:
                                  type: string
                                  format: byte
                                secp256k1:
                                  type: string
                                  format: byte
                              title: >-
                                PublicKey defines the keys available for use
                                with Tendermint Validators
                            voting_power:
                              type: string
                              format: int64
                            proposer_priority:
                              type: string
                              format: int64
                        total_voting_power:
                          type: string
                          format: int64
                common_height:
                  type: string
                  format: int64
                byzantine_validators:
                  type: array
                  items:
                    type: object
                    properties:
                      address:
                        type: string
                        format: byte
                      pub_key:
                        type: object
                        properties:
                          ed25519:
                            type: string
                            format: byte
                          secp256k1:
                            type: string
                            format: byte
                        title: >-
                          PublicKey defines the keys available for use with
                          Tendermint Validators
                      voting_power:
                        type: string
                        format: int64
                      proposer_priority:
                        type: string
                        format: int64
                total_voting_power:
                  type: string
                  format: int64
                timestamp:
                  type: string
                  format: date-time
              description: >-
                LightClientAttackEvidence contains evidence of a set of
                validators attempting to mislead a light client.
  tendermint.types.Header:
    type: object
    properties:
      version:
        title: basic block info
        type: object
        properties:
          block:
            type: string
            format: uint64
          app:
            type: string
            format: uint64
        description: >-
          Consensus captures the consensus rules for processing a block in the
          blockchain,

          including all blockchain data structures and the rules of the
          application's

          state transition machine.
      chain_id:
        type: string
      height:
        type: string
        format: int64
      time:
        type: string
        format: date-time
      last_block_id:
        type: object
        properties:
          hash:
            type: string
            format: byte
          part_set_header:
            type: object
            properties:
              total:
                type: integer
                format: int64
              hash:
                type: string
                format: byte
            title: PartsetHeader
        title: BlockID
      last_commit_hash:
        type: string
        format: byte
        title: hashes of block data
      data_hash:
        type: string
        format: byte
      validators_hash:
        type: string
        format: byte
        title: hashes from the app output from the prev block
      next_validators_hash:
        type: string
        format: byte
      consensus_hash:
        type: string
        format: byte
      app_hash:
        type: string
        format: byte
      last_results_hash:
        type: string
        format: byte
      evidence_hash:
        type: string
        format: byte
        title: consensus info
      proposer_address:
        type: string
        format: byte
    description: Header defines the structure of a Tendermint block header.
  tendermint.types.LightBlock:
    type: object
    properties:
      signed_header:
        type: object
        properties:
          header:
            type: object
            properties:
              version:
                title: basic block info
                type: object
                properties:
                  block:
                    type: string
                    format: uint64
                  app:
                    type: string
                    format: uint64
                description: >-
                  Consensus captures the consensus rules for processing a block
                  in the blockchain,

                  including all blockchain data structures and the rules of the
                  application's

                  state transition machine.
              chain_id:
                type: string
              height:
                type: string
                format: int64
              time:
                type: string
                format: date-time
              last_block_id:
                type: object
                properties:
                  hash:
                    type: string
                    format: byte
                  part_set_header:
                    type: object
                    properties:
                      total:
                        type: integer
                        format: int64
                      hash:
                        type: string
                        format: byte
                    title: PartsetHeader
                title: BlockID
              last_commit_hash:
                type: string
                format: byte
                title: hashes of block data
              data_hash:
                type: string
                format: byte
              validators_hash:
                type: string
                format: byte
                title: hashes from the app output from the prev block
              next_validators_hash:
                type: string
                format: byte
              consensus_hash:
                type: string
                format: byte
              app_hash:
                type: string
                format: byte
              last_results_hash:
                type: string
                format: byte
              evidence_hash:
                type: string
                format: byte
                title: consensus info
              proposer_address:
                type: string
                format: byte
            description: Header defines the structure of a Tendermint block header.
          commit:
            type: object
            properties:
              height:
                type: string
                format: int64
              round:
                type: integer
                format: int32
              block_id:
                type: object
                properties:
                  hash:
                    type: string
                    format: byte
                  part_set_header:
                    type: object
                    properties:
                      total:
                        type: integer
                        format: int64
                      hash:
                        type: string
                        format: byte
                    title: PartsetHeader
                title: BlockID
              signatures:
                type: array
                items:
                  type: object
                  properties:
                    block_id_flag:
                      type: string
                      enum:
                        - BLOCK_ID_FLAG_UNKNOWN
                        - BLOCK_ID_FLAG_ABSENT
                        - BLOCK_ID_FLAG_COMMIT
                        - BLOCK_ID_FLAG_NIL
                      default: BLOCK_ID_FLAG_UNKNOWN
                      title: BlockIdFlag indicates which BlcokID the signature is for
                    validator_address:
                      type: string
                      format: byte
                    timestamp:
                      type: string
                      format: date-time
                    signature:
                      type: string
                      format: byte
                  description: CommitSig is a part of the Vote included in a Commit.
            description: >-
              Commit contains the evidence that a block was committed by a set
              of validators.
      validator_set:
        type: object
        properties:
          validators:
            type: array
            items:
              type: object
              properties:
                address:
                  type: string
                  format: byte
                pub_key:
                  type: object
                  properties:
                    ed25519:
                      type: string
                      format: byte
                    secp256k1:
                      type: string
                      format: byte
                  title: >-
                    PublicKey defines the keys available for use with Tendermint
                    Validators
                voting_power:
                  type: string
                  format: int64
                proposer_priority:
                  type: string
                  format: int64
          proposer:
            type: object
            properties:
              address:
                type: string
                format: byte
              pub_key:
                type: object
                properties:
                  ed25519:
                    type: string
                    format: byte
                  secp256k1:
                    type: string
                    format: byte
                title: >-
                  PublicKey defines the keys available for use with Tendermint
                  Validators
              voting_power:
                type: string
                format: int64
              proposer_priority:
                type: string
                format: int64
          total_voting_power:
            type: string
            format: int64
  tendermint.types.LightClientAttackEvidence:
    type: object
    properties:
      conflicting_block:
        type: object
        properties:
          signed_header:
            type: object
            properties:
              header:
                type: object
                properties:
                  version:
                    title: basic block info
                    type: object
                    properties:
                      block:
                        type: string
                        format: uint64
                      app:
                        type: string
                        format: uint64
                    description: >-
                      Consensus captures the consensus rules for processing a
                      block in the blockchain,

                      including all blockchain data structures and the rules of
                      the application's

                      state transition machine.
                  chain_id:
                    type: string
                  height:
                    type: string
                    format: int64
                  time:
                    type: string
                    format: date-time
                  last_block_id:
                    type: object
                    properties:
                      hash:
                        type: string
                        format: byte
                      part_set_header:
                        type: object
                        properties:
                          total:
                            type: integer
                            format: int64
                          hash:
                            type: string
                            format: byte
                        title: PartsetHeader
                    title: BlockID
                  last_commit_hash:
                    type: string
                    format: byte
                    title: hashes of block data
                  data_hash:
                    type: string
                    format: byte
                  validators_hash:
                    type: string
                    format: byte
                    title: hashes from the app output from the prev block
                  next_validators_hash:
                    type: string
                    format: byte
                  consensus_hash:
                    type: string
                    format: byte
                  app_hash:
                    type: string
                    format: byte
                  last_results_hash:
                    type: string
                    format: byte
                  evidence_hash:
                    type: string
                    format: byte
                    title: consensus info
                  proposer_address:
                    type: string
                    format: byte
                description: Header defines the structure of a Tendermint block header.
              commit:
                type: object
                properties:
                  height:
                    type: string
                    format: int64
                  round:
                    type: integer
                    format: int32
                  block_id:
                    type: object
                    properties:
                      hash:
                        type: string
                        format: byte
                      part_set_header:
                        type: object
                        properties:
                          total:
                            type: integer
                            format: int64
                          hash:
                            type: string
                            format: byte
                        title: PartsetHeader
                    title: BlockID
                  signatures:
                    type: array
                    items:
                      type: object
                      properties:
                        block_id_flag:
                          type: string
                          enum:
                            - BLOCK_ID_FLAG_UNKNOWN
                            - BLOCK_ID_FLAG_ABSENT
                            - BLOCK_ID_FLAG_COMMIT
                            - BLOCK_ID_FLAG_NIL
                          default: BLOCK_ID_FLAG_UNKNOWN
                          title: >-
                            BlockIdFlag indicates which BlcokID the signature is
                            for
                        validator_address:
                          type: string
                          format: byte
                        timestamp:
                          type: string
                          format: date-time
                        signature:
                          type: string
                          format: byte
                      description: CommitSig is a part of the Vote included in a Commit.
                description: >-
                  Commit contains the evidence that a block was committed by a
                  set of validators.
          validator_set:
            type: object
            properties:
              validators:
                type: array
                items:
                  type: object
                  properties:
                    address:
                      type: string
                      format: byte
                    pub_key:
                      type: object
                      properties:
                        ed25519:
                          type: string
                          format: byte
                        secp256k1:
                          type: string
                          format: byte
                      title: >-
                        PublicKey defines the keys available for use with
                        Tendermint Validators
                    voting_power:
                      type: string
                      format: int64
                    proposer_priority:
                      type: string
                      format: int64
              proposer:
                type: object
                properties:
                  address:
                    type: string
                    format: byte
                  pub_key:
                    type: object
                    properties:
                      ed25519:
                        type: string
                        format: byte
                      secp256k1:
                        type: string
                        format: byte
                    title: >-
                      PublicKey defines the keys available for use with
                      Tendermint Validators
                  voting_power:
                    type: string
                    format: int64
                  proposer_priority:
                    type: string
                    format: int64
              total_voting_power:
                type: string
                format: int64
      common_height:
        type: string
        format: int64
      byzantine_validators:
        type: array
        items:
          type: object
          properties:
            address:
              type: string
              format: byte
            pub_key:
              type: object
              properties:
                ed25519:
                  type: string
                  format: byte
                secp256k1:
                  type: string
                  format: byte
              title: >-
                PublicKey defines the keys available for use with Tendermint
                Validators
            voting_power:
              type: string
              format: int64
            proposer_priority:
              type: string
              format: int64
      total_voting_power:
        type: string
        format: int64
      timestamp:
        type: string
        format: date-time
    description: >-
      LightClientAttackEvidence contains evidence of a set of validators
      attempting to mislead a light client.
  tendermint.types.PartSetHeader:
    type: object
    properties:
      total:
        type: integer
        format: int64
      hash:
        type: string
        format: byte
    title: PartsetHeader
  tendermint.types.SignedHeader:
    type: object
    properties:
      header:
        type: object
        properties:
          version:
            title: basic block info
            type: object
            properties:
              block:
                type: string
                format: uint64
              app:
                type: string
                format: uint64
            description: >-
              Consensus captures the consensus rules for processing a block in
              the blockchain,

              including all blockchain data structures and the rules of the
              application's

              state transition machine.
          chain_id:
            type: string
          height:
            type: string
            format: int64
          time:
            type: string
            format: date-time
          last_block_id:
            type: object
            properties:
              hash:
                type: string
                format: byte
              part_set_header:
                type: object
                properties:
                  total:
                    type: integer
                    format: int64
                  hash:
                    type: string
                    format: byte
                title: PartsetHeader
            title: BlockID
          last_commit_hash:
            type: string
            format: byte
            title: hashes of block data
          data_hash:
            type: string
            format: byte
          validators_hash:
            type: string
            format: byte
            title: hashes from the app output from the prev block
          next_validators_hash:
            type: string
            format: byte
          consensus_hash:
            type: string
            format: byte
          app_hash:
            type: string
            format: byte
          last_results_hash:
            type: string
            format: byte
          evidence_hash:
            type: string
            format: byte
            title: consensus info
          proposer_address:
            type: string
            format: byte
        description: Header defines the structure of a Tendermint block header.
      commit:
        type: object
        properties:
          height:
            type: string
            format: int64
          round:
            type: integer
            format: int32
          block_id:
            type: object
            properties:
              hash:
                type: string
                format: byte
              part_set_header:
                type: object
                properties:
                  total:
                    type: integer
                    format: int64
                  hash:
                    type: string
                    format: byte
                title: PartsetHeader
            title: BlockID
          signatures:
            type: array
            items:
              type: object
              properties:
                block_id_flag:
                  type: string
                  enum:
                    - BLOCK_ID_FLAG_UNKNOWN
                    - BLOCK_ID_FLAG_ABSENT
                    - BLOCK_ID_FLAG_COMMIT
                    - BLOCK_ID_FLAG_NIL
                  default: BLOCK_ID_FLAG_UNKNOWN
                  title: BlockIdFlag indicates which BlcokID the signature is for
                validator_address:
                  type: string
                  format: byte
                timestamp:
                  type: string
                  format: date-time
                signature:
                  type: string
                  format: byte
              description: CommitSig is a part of the Vote included in a Commit.
        description: >-
          Commit contains the evidence that a block was committed by a set of
          validators.
  tendermint.types.SignedMsgType:
    type: string
    enum:
      - SIGNED_MSG_TYPE_UNKNOWN
      - SIGNED_MSG_TYPE_PREVOTE
      - SIGNED_MSG_TYPE_PRECOMMIT
      - SIGNED_MSG_TYPE_PROPOSAL
    default: SIGNED_MSG_TYPE_UNKNOWN
    description: |-
      SignedMsgType is a type of signed message in the consensus.

       - SIGNED_MSG_TYPE_PREVOTE: Votes
       - SIGNED_MSG_TYPE_PROPOSAL: Proposals
  tendermint.types.Validator:
    type: object
    properties:
      address:
        type: string
        format: byte
      pub_key:
        type: object
        properties:
          ed25519:
            type: string
            format: byte
          secp256k1:
            type: string
            format: byte
        title: >-
          PublicKey defines the keys available for use with Tendermint
          Validators
      voting_power:
        type: string
        format: int64
      proposer_priority:
        type: string
        format: int64
  tendermint.types.ValidatorSet:
    type: object
    properties:
      validators:
        type: array
        items:
          type: object
          properties:
            address:
              type: string
              format: byte
            pub_key:
              type: object
              properties:
                ed25519:
                  type: string
                  format: byte
                secp256k1:
                  type: string
                  format: byte
              title: >-
                PublicKey defines the keys available for use with Tendermint
                Validators
            voting_power:
              type: string
              format: int64
            proposer_priority:
              type: string
              format: int64
      proposer:
        type: object
        properties:
          address:
            type: string
            format: byte
          pub_key:
            type: object
            properties:
              ed25519:
                type: string
                format: byte
              secp256k1:
                type: string
                format: byte
            title: >-
              PublicKey defines the keys available for use with Tendermint
              Validators
          voting_power:
            type: string
            format: int64
          proposer_priority:
            type: string
            format: int64
      total_voting_power:
        type: string
        format: int64
  tendermint.types.Vote:
    type: object
    properties:
      type:
        type: string
        enum:
          - SIGNED_MSG_TYPE_UNKNOWN
          - SIGNED_MSG_TYPE_PREVOTE
          - SIGNED_MSG_TYPE_PRECOMMIT
          - SIGNED_MSG_TYPE_PROPOSAL
        default: SIGNED_MSG_TYPE_UNKNOWN
        description: |-
          SignedMsgType is a type of signed message in the consensus.

           - SIGNED_MSG_TYPE_PREVOTE: Votes
           - SIGNED_MSG_TYPE_PROPOSAL: Proposals
      height:
        type: string
        format: int64
      round:
        type: integer
        format: int32
      block_id:
        type: object
        properties:
          hash:
            type: string
            format: byte
          part_set_header:
            type: object
            properties:
              total:
                type: integer
                format: int64
              hash:
                type: string
                format: byte
            title: PartsetHeader
        title: BlockID
      timestamp:
        type: string
        format: date-time
      validator_address:
        type: string
        format: byte
      validator_index:
        type: integer
        format: int32
      signature:
        type: string
        format: byte
    description: |-
      Vote represents a prevote, precommit, or commit vote from validators for
      consensus.
  tendermint.version.Consensus:
    type: object
    properties:
      block:
        type: string
        format: uint64
      app:
        type: string
        format: uint64
    description: >-
      Consensus captures the consensus rules for processing a block in the
      blockchain,

      including all blockchain data structures and the rules of the
      application's

      state transition machine.
  cosmos.base.v1beta1.DecCoin:
    type: object
    properties:
      denom:
        type: string
      amount:
        type: string
    description: |-
      DecCoin defines a token with a denomination and a decimal amount.

      NOTE: The amount field is an Dec which implements the custom method
      signatures required by gogoproto.
  cosmos.distribution.v1beta1.DelegationDelegatorReward:
    type: object
    properties:
      validator_address:
        type: string
      reward:
        type: array
        items:
          type: object
          properties:
            denom:
              type: string
            amount:
              type: string
          description: |-
            DecCoin defines a token with a denomination and a decimal amount.

            NOTE: The amount field is an Dec which implements the custom method
            signatures required by gogoproto.
    description: |-
      DelegationDelegatorReward represents the properties
      of a delegator's delegation reward.
  cosmos.distribution.v1beta1.Params:
    type: object
    properties:
      community_tax:
        type: string
      base_proposer_reward:
        type: string
      bonus_proposer_reward:
        type: string
      withdraw_addr_enabled:
        type: boolean
    description: Params defines the set of params for the distribution module.
  cosmos.distribution.v1beta1.QueryCommunityPoolResponse:
    type: object
    properties:
      pool:
        type: array
        items:
          type: object
          properties:
            denom:
              type: string
            amount:
              type: string
          description: |-
            DecCoin defines a token with a denomination and a decimal amount.

            NOTE: The amount field is an Dec which implements the custom method
            signatures required by gogoproto.
        description: pool defines community pool's coins.
    description: >-
      QueryCommunityPoolResponse is the response type for the
      Query/CommunityPool

      RPC method.
  cosmos.distribution.v1beta1.QueryDelegationRewardsResponse:
    type: object
    properties:
      rewards:
        type: array
        items:
          type: object
          properties:
            denom:
              type: string
            amount:
              type: string
          description: |-
            DecCoin defines a token with a denomination and a decimal amount.

            NOTE: The amount field is an Dec which implements the custom method
            signatures required by gogoproto.
        description: rewards defines the rewards accrued by a delegation.
    description: |-
      QueryDelegationRewardsResponse is the response type for the
      Query/DelegationRewards RPC method.
  cosmos.distribution.v1beta1.QueryDelegationTotalRewardsResponse:
    type: object
    properties:
      rewards:
        type: array
        items:
          type: object
          properties:
            validator_address:
              type: string
            reward:
              type: array
              items:
                type: object
                properties:
                  denom:
                    type: string
                  amount:
                    type: string
                description: >-
                  DecCoin defines a token with a denomination and a decimal
                  amount.


                  NOTE: The amount field is an Dec which implements the custom
                  method

                  signatures required by gogoproto.
          description: |-
            DelegationDelegatorReward represents the properties
            of a delegator's delegation reward.
        description: rewards defines all the rewards accrued by a delegator.
      total:
        type: array
        items:
          type: object
          properties:
            denom:
              type: string
            amount:
              type: string
          description: |-
            DecCoin defines a token with a denomination and a decimal amount.

            NOTE: The amount field is an Dec which implements the custom method
            signatures required by gogoproto.
        description: total defines the sum of all the rewards.
    description: |-
      QueryDelegationTotalRewardsResponse is the response type for the
      Query/DelegationTotalRewards RPC method.
  cosmos.distribution.v1beta1.QueryDelegatorValidatorsResponse:
    type: object
    properties:
      validators:
        type: array
        items:
          type: string
        description: validators defines the validators a delegator is delegating for.
    description: |-
      QueryDelegatorValidatorsResponse is the response type for the
      Query/DelegatorValidators RPC method.
  cosmos.distribution.v1beta1.QueryDelegatorWithdrawAddressResponse:
    type: object
    properties:
      withdraw_address:
        type: string
        description: withdraw_address defines the delegator address to query for.
    description: |-
      QueryDelegatorWithdrawAddressResponse is the response type for the
      Query/DelegatorWithdrawAddress RPC method.
  cosmos.distribution.v1beta1.QueryParamsResponse:
    type: object
    properties:
      params:
        description: params defines the parameters of the module.
        type: object
        properties:
          community_tax:
            type: string
          base_proposer_reward:
            type: string
          bonus_proposer_reward:
            type: string
          withdraw_addr_enabled:
            type: boolean
    description: QueryParamsResponse is the response type for the Query/Params RPC method.
  cosmos.distribution.v1beta1.QueryValidatorCommissionResponse:
    type: object
    properties:
      commission:
        description: commission defines the commision the validator received.
        type: object
        properties:
          commission:
            type: array
            items:
              type: object
              properties:
                denom:
                  type: string
                amount:
                  type: string
              description: >-
                DecCoin defines a token with a denomination and a decimal
                amount.


                NOTE: The amount field is an Dec which implements the custom
                method

                signatures required by gogoproto.
    title: |-
      QueryValidatorCommissionResponse is the response type for the
      Query/ValidatorCommission RPC method
  cosmos.distribution.v1beta1.QueryValidatorOutstandingRewardsResponse:
    type: object
    properties:
      rewards:
        type: object
        properties:
          rewards:
            type: array
            items:
              type: object
              properties:
                denom:
                  type: string
                amount:
                  type: string
              description: >-
                DecCoin defines a token with a denomination and a decimal
                amount.


                NOTE: The amount field is an Dec which implements the custom
                method

                signatures required by gogoproto.
        description: >-
          ValidatorOutstandingRewards represents outstanding (un-withdrawn)
          rewards

          for a validator inexpensive to track, allows simple sanity checks.
    description: |-
      QueryValidatorOutstandingRewardsResponse is the response type for the
      Query/ValidatorOutstandingRewards RPC method.
  cosmos.distribution.v1beta1.QueryValidatorSlashesResponse:
    type: object
    properties:
      slashes:
        type: array
        items:
          type: object
          properties:
            validator_period:
              type: string
              format: uint64
            fraction:
              type: string
          description: |-
            ValidatorSlashEvent represents a validator slash event.
            Height is implicit within the store key.
            This is needed to calculate appropriate amount of staking tokens
            for delegations which are withdrawn after a slash has occurred.
        description: slashes defines the slashes the validator received.
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: |-
      QueryValidatorSlashesResponse is the response type for the
      Query/ValidatorSlashes RPC method.
  cosmos.distribution.v1beta1.ValidatorAccumulatedCommission:
    type: object
    properties:
      commission:
        type: array
        items:
          type: object
          properties:
            denom:
              type: string
            amount:
              type: string
          description: |-
            DecCoin defines a token with a denomination and a decimal amount.

            NOTE: The amount field is an Dec which implements the custom method
            signatures required by gogoproto.
    description: |-
      ValidatorAccumulatedCommission represents accumulated commission
      for a validator kept as a running counter, can be withdrawn at any time.
  cosmos.distribution.v1beta1.ValidatorOutstandingRewards:
    type: object
    properties:
      rewards:
        type: array
        items:
          type: object
          properties:
            denom:
              type: string
            amount:
              type: string
          description: |-
            DecCoin defines a token with a denomination and a decimal amount.

            NOTE: The amount field is an Dec which implements the custom method
            signatures required by gogoproto.
    description: |-
      ValidatorOutstandingRewards represents outstanding (un-withdrawn) rewards
      for a validator inexpensive to track, allows simple sanity checks.
  cosmos.distribution.v1beta1.ValidatorSlashEvent:
    type: object
    properties:
      validator_period:
        type: string
        format: uint64
      fraction:
        type: string
    description: |-
      ValidatorSlashEvent represents a validator slash event.
      Height is implicit within the store key.
      This is needed to calculate appropriate amount of staking tokens
      for delegations which are withdrawn after a slash has occurred.
  cosmos.evidence.v1beta1.QueryAllEvidenceResponse:
    type: object
    properties:
      evidence:
        type: array
        items:
          type: object
          properties:
            type_url:
              type: string
              description: >-
                A URL/resource name that uniquely identifies the type of the
                serialized

                protocol buffer message. This string must contain at least

                one "/" character. The last segment of the URL's path must
                represent

                the fully qualified name of the type (as in

                `path/google.protobuf.Duration`). The name should be in a
                canonical form

                (e.g., leading "." is not accepted).


                In practice, teams usually precompile into the binary all types
                that they

                expect it to use in the context of Any. However, for URLs which
                use the

                scheme `http`, `https`, or no scheme, one can optionally set up
                a type

                server that maps type URLs to message definitions as follows:


                * If no scheme is provided, `https` is assumed.

                * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                  value in binary format, or produce an error.
                * Applications are allowed to cache lookup results based on the
                  URL, or have them precompiled into a binary to avoid any
                  lookup. Therefore, binary compatibility needs to be preserved
                  on changes to types. (Use versioned type names to manage
                  breaking changes.)

                Note: this functionality is not currently available in the
                official

                protobuf release, and it is not used for type URLs beginning
                with

                type.googleapis.com.


                Schemes other than `http`, `https` (or the empty scheme) might
                be

                used with implementation specific semantics.
            value:
              type: string
              format: byte
              description: >-
                Must be a valid serialized protocol buffer of the above
                specified type.
          description: >-
            `Any` contains an arbitrary serialized protocol buffer message along
            with a

            URL that describes the type of the serialized message.


            Protobuf library provides support to pack/unpack Any values in the
            form

            of utility functions or additional generated methods of the Any
            type.


            Example 1: Pack and unpack a message in C++.

                Foo foo = ...;
                Any any;
                any.PackFrom(foo);
                ...
                if (any.UnpackTo(&foo)) {
                  ...
                }

            Example 2: Pack and unpack a message in Java.

                Foo foo = ...;
                Any any = Any.pack(foo);
                ...
                if (any.is(Foo.class)) {
                  foo = any.unpack(Foo.class);
                }

             Example 3: Pack and unpack a message in Python.

                foo = Foo(...)
                any = Any()
                any.Pack(foo)
                ...
                if any.Is(Foo.DESCRIPTOR):
                  any.Unpack(foo)
                  ...

             Example 4: Pack and unpack a message in Go

                 foo := &pb.Foo{...}
                 any, err := ptypes.MarshalAny(foo)
                 ...
                 foo := &pb.Foo{}
                 if err := ptypes.UnmarshalAny(any, foo); err != nil {
                   ...
                 }

            The pack methods provided by protobuf library will by default use

            'type.googleapis.com/full.type.name' as the type URL and the unpack

            methods only use the fully qualified type name after the last '/'

            in the type URL, for example "foo.bar.com/x/y.z" will yield type

            name "y.z".



            JSON

            ====

            The JSON representation of an `Any` value uses the regular

            representation of the deserialized, embedded message, with an

            additional field `@type` which contains the type URL. Example:

                package google.profile;
                message Person {
                  string first_name = 1;
                  string last_name = 2;
                }

                {
                  "@type": "type.googleapis.com/google.profile.Person",
                  "firstName": <string>,
                  "lastName": <string>
                }

            If the embedded message type is well-known and has a custom JSON

            representation, that representation will be embedded adding a field

            `value` which holds the custom JSON in addition to the `@type`

            field. Example (for message [google.protobuf.Duration][]):

                {
                  "@type": "type.googleapis.com/google.protobuf.Duration",
                  "value": "1.212s"
                }
        description: evidence returns all evidences.
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: >-
      QueryAllEvidenceResponse is the response type for the Query/AllEvidence
      RPC

      method.
  cosmos.evidence.v1beta1.QueryEvidenceResponse:
    type: object
    properties:
      evidence:
        type: object
        properties:
          type_url:
            type: string
            description: >-
              A URL/resource name that uniquely identifies the type of the
              serialized

              protocol buffer message. This string must contain at least

              one "/" character. The last segment of the URL's path must
              represent

              the fully qualified name of the type (as in

              `path/google.protobuf.Duration`). The name should be in a
              canonical form

              (e.g., leading "." is not accepted).


              In practice, teams usually precompile into the binary all types
              that they

              expect it to use in the context of Any. However, for URLs which
              use the

              scheme `http`, `https`, or no scheme, one can optionally set up a
              type

              server that maps type URLs to message definitions as follows:


              * If no scheme is provided, `https` is assumed.

              * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                value in binary format, or produce an error.
              * Applications are allowed to cache lookup results based on the
                URL, or have them precompiled into a binary to avoid any
                lookup. Therefore, binary compatibility needs to be preserved
                on changes to types. (Use versioned type names to manage
                breaking changes.)

              Note: this functionality is not currently available in the
              official

              protobuf release, and it is not used for type URLs beginning with

              type.googleapis.com.


              Schemes other than `http`, `https` (or the empty scheme) might be

              used with implementation specific semantics.
          value:
            type: string
            format: byte
            description: >-
              Must be a valid serialized protocol buffer of the above specified
              type.
        description: >-
          `Any` contains an arbitrary serialized protocol buffer message along
          with a

          URL that describes the type of the serialized message.


          Protobuf library provides support to pack/unpack Any values in the
          form

          of utility functions or additional generated methods of the Any type.


          Example 1: Pack and unpack a message in C++.

              Foo foo = ...;
              Any any;
              any.PackFrom(foo);
              ...
              if (any.UnpackTo(&foo)) {
                ...
              }

          Example 2: Pack and unpack a message in Java.

              Foo foo = ...;
              Any any = Any.pack(foo);
              ...
              if (any.is(Foo.class)) {
                foo = any.unpack(Foo.class);
              }

           Example 3: Pack and unpack a message in Python.

              foo = Foo(...)
              any = Any()
              any.Pack(foo)
              ...
              if any.Is(Foo.DESCRIPTOR):
                any.Unpack(foo)
                ...

           Example 4: Pack and unpack a message in Go

               foo := &pb.Foo{...}
               any, err := ptypes.MarshalAny(foo)
               ...
               foo := &pb.Foo{}
               if err := ptypes.UnmarshalAny(any, foo); err != nil {
                 ...
               }

          The pack methods provided by protobuf library will by default use

          'type.googleapis.com/full.type.name' as the type URL and the unpack

          methods only use the fully qualified type name after the last '/'

          in the type URL, for example "foo.bar.com/x/y.z" will yield type

          name "y.z".



          JSON

          ====

          The JSON representation of an `Any` value uses the regular

          representation of the deserialized, embedded message, with an

          additional field `@type` which contains the type URL. Example:

              package google.profile;
              message Person {
                string first_name = 1;
                string last_name = 2;
              }

              {
                "@type": "type.googleapis.com/google.profile.Person",
                "firstName": <string>,
                "lastName": <string>
              }

          If the embedded message type is well-known and has a custom JSON

          representation, that representation will be embedded adding a field

          `value` which holds the custom JSON in addition to the `@type`

          field. Example (for message [google.protobuf.Duration][]):

              {
                "@type": "type.googleapis.com/google.protobuf.Duration",
                "value": "1.212s"
              }
    description: >-
      QueryEvidenceResponse is the response type for the Query/Evidence RPC
      method.
  cosmos.gov.v1beta1.Deposit:
    type: object
    properties:
      proposal_id:
        type: string
        format: uint64
      depositor:
        type: string
      amount:
        type: array
        items:
          type: object
          properties:
            denom:
              type: string
            amount:
              type: string
          description: |-
            Coin defines a token with a denomination and an amount.

            NOTE: The amount field is an Int which implements the custom method
            signatures required by gogoproto.
    description: |-
      Deposit defines an amount deposited by an account address to an active
      proposal.
  cosmos.gov.v1beta1.DepositParams:
    type: object
    properties:
      min_deposit:
        type: array
        items:
          type: object
          properties:
            denom:
              type: string
            amount:
              type: string
          description: |-
            Coin defines a token with a denomination and an amount.

            NOTE: The amount field is an Int which implements the custom method
            signatures required by gogoproto.
        description: Minimum deposit for a proposal to enter voting period.
      max_deposit_period:
        type: string
        description: >-
          Maximum period for Atom holders to deposit on a proposal. Initial
          value: 2
           months.
    description: DepositParams defines the params for deposits on governance proposals.
  cosmos.gov.v1beta1.Proposal:
    type: object
    properties:
      proposal_id:
        type: string
        format: uint64
      content:
        type: object
        properties:
          type_url:
            type: string
            description: >-
              A URL/resource name that uniquely identifies the type of the
              serialized

              protocol buffer message. This string must contain at least

              one "/" character. The last segment of the URL's path must
              represent

              the fully qualified name of the type (as in

              `path/google.protobuf.Duration`). The name should be in a
              canonical form

              (e.g., leading "." is not accepted).


              In practice, teams usually precompile into the binary all types
              that they

              expect it to use in the context of Any. However, for URLs which
              use the

              scheme `http`, `https`, or no scheme, one can optionally set up a
              type

              server that maps type URLs to message definitions as follows:


              * If no scheme is provided, `https` is assumed.

              * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                value in binary format, or produce an error.
              * Applications are allowed to cache lookup results based on the
                URL, or have them precompiled into a binary to avoid any
                lookup. Therefore, binary compatibility needs to be preserved
                on changes to types. (Use versioned type names to manage
                breaking changes.)

              Note: this functionality is not currently available in the
              official

              protobuf release, and it is not used for type URLs beginning with

              type.googleapis.com.


              Schemes other than `http`, `https` (or the empty scheme) might be

              used with implementation specific semantics.
          value:
            type: string
            format: byte
            description: >-
              Must be a valid serialized protocol buffer of the above specified
              type.
        description: >-
          `Any` contains an arbitrary serialized protocol buffer message along
          with a

          URL that describes the type of the serialized message.


          Protobuf library provides support to pack/unpack Any values in the
          form

          of utility functions or additional generated methods of the Any type.


          Example 1: Pack and unpack a message in C++.

              Foo foo = ...;
              Any any;
              any.PackFrom(foo);
              ...
              if (any.UnpackTo(&foo)) {
                ...
              }

          Example 2: Pack and unpack a message in Java.

              Foo foo = ...;
              Any any = Any.pack(foo);
              ...
              if (any.is(Foo.class)) {
                foo = any.unpack(Foo.class);
              }

           Example 3: Pack and unpack a message in Python.

              foo = Foo(...)
              any = Any()
              any.Pack(foo)
              ...
              if any.Is(Foo.DESCRIPTOR):
                any.Unpack(foo)
                ...

           Example 4: Pack and unpack a message in Go

               foo := &pb.Foo{...}
               any, err := ptypes.MarshalAny(foo)
               ...
               foo := &pb.Foo{}
               if err := ptypes.UnmarshalAny(any, foo); err != nil {
                 ...
               }

          The pack methods provided by protobuf library will by default use

          'type.googleapis.com/full.type.name' as the type URL and the unpack

          methods only use the fully qualified type name after the last '/'

          in the type URL, for example "foo.bar.com/x/y.z" will yield type

          name "y.z".



          JSON

          ====

          The JSON representation of an `Any` value uses the regular

          representation of the deserialized, embedded message, with an

          additional field `@type` which contains the type URL. Example:

              package google.profile;
              message Person {
                string first_name = 1;
                string last_name = 2;
              }

              {
                "@type": "type.googleapis.com/google.profile.Person",
                "firstName": <string>,
                "lastName": <string>
              }

          If the embedded message type is well-known and has a custom JSON

          representation, that representation will be embedded adding a field

          `value` which holds the custom JSON in addition to the `@type`

          field. Example (for message [google.protobuf.Duration][]):

              {
                "@type": "type.googleapis.com/google.protobuf.Duration",
                "value": "1.212s"
              }
      status:
        type: string
        enum:
          - PROPOSAL_STATUS_UNSPECIFIED
          - PROPOSAL_STATUS_DEPOSIT_PERIOD
          - PROPOSAL_STATUS_VOTING_PERIOD
          - PROPOSAL_STATUS_PASSED
          - PROPOSAL_STATUS_REJECTED
          - PROPOSAL_STATUS_FAILED
        default: PROPOSAL_STATUS_UNSPECIFIED
        description: |-
          ProposalStatus enumerates the valid statuses of a proposal.

           - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.
           - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit
          period.
           - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting
          period.
           - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has
          passed.
           - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has
          been rejected.
           - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has
          failed.
      final_tally_result:
        description: |-
          final_tally_result is the final tally result of the proposal. When
          querying a proposal via gRPC, this field is not populated until the
          proposal's voting period has ended.
        type: object
        properties:
          'yes':
            type: string
          abstain:
            type: string
          'no':
            type: string
          no_with_veto:
            type: string
      submit_time:
        type: string
        format: date-time
      deposit_end_time:
        type: string
        format: date-time
      total_deposit:
        type: array
        items:
          type: object
          properties:
            denom:
              type: string
            amount:
              type: string
          description: |-
            Coin defines a token with a denomination and an amount.

            NOTE: The amount field is an Int which implements the custom method
            signatures required by gogoproto.
      voting_start_time:
        type: string
        format: date-time
      voting_end_time:
        type: string
        format: date-time
    description: Proposal defines the core field members of a governance proposal.
  cosmos.gov.v1beta1.ProposalStatus:
    type: string
    enum:
      - PROPOSAL_STATUS_UNSPECIFIED
      - PROPOSAL_STATUS_DEPOSIT_PERIOD
      - PROPOSAL_STATUS_VOTING_PERIOD
      - PROPOSAL_STATUS_PASSED
      - PROPOSAL_STATUS_REJECTED
      - PROPOSAL_STATUS_FAILED
    default: PROPOSAL_STATUS_UNSPECIFIED
    description: |-
      ProposalStatus enumerates the valid statuses of a proposal.

       - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.
       - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit
      period.
       - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting
      period.
       - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has
      passed.
       - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has
      been rejected.
       - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has
      failed.
  cosmos.gov.v1beta1.QueryDepositResponse:
    type: object
    properties:
      deposit:
        type: object
        properties:
          proposal_id:
            type: string
            format: uint64
          depositor:
            type: string
          amount:
            type: array
            items:
              type: object
              properties:
                denom:
                  type: string
                amount:
                  type: string
              description: >-
                Coin defines a token with a denomination and an amount.


                NOTE: The amount field is an Int which implements the custom
                method

                signatures required by gogoproto.
        description: |-
          Deposit defines an amount deposited by an account address to an active
          proposal.
    description: >-
      QueryDepositResponse is the response type for the Query/Deposit RPC
      method.
  cosmos.gov.v1beta1.QueryDepositsResponse:
    type: object
    properties:
      deposits:
        type: array
        items:
          type: object
          properties:
            proposal_id:
              type: string
              format: uint64
            depositor:
              type: string
            amount:
              type: array
              items:
                type: object
                properties:
                  denom:
                    type: string
                  amount:
                    type: string
                description: >-
                  Coin defines a token with a denomination and an amount.


                  NOTE: The amount field is an Int which implements the custom
                  method

                  signatures required by gogoproto.
          description: >-
            Deposit defines an amount deposited by an account address to an
            active

            proposal.
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: >-
      QueryDepositsResponse is the response type for the Query/Deposits RPC
      method.
  cosmos.gov.v1beta1.QueryParamsResponse:
    type: object
    properties:
      voting_params:
        description: voting_params defines the parameters related to voting.
        type: object
        properties:
          voting_period:
            type: string
            description: Length of the voting period.
      deposit_params:
        description: deposit_params defines the parameters related to deposit.
        type: object
        properties:
          min_deposit:
            type: array
            items:
              type: object
              properties:
                denom:
                  type: string
                amount:
                  type: string
              description: >-
                Coin defines a token with a denomination and an amount.


                NOTE: The amount field is an Int which implements the custom
                method

                signatures required by gogoproto.
            description: Minimum deposit for a proposal to enter voting period.
          max_deposit_period:
            type: string
            description: >-
              Maximum period for Atom holders to deposit on a proposal. Initial
              value: 2
               months.
      tally_params:
        description: tally_params defines the parameters related to tally.
        type: object
        properties:
          quorum:
            type: string
            format: byte
            description: >-
              Minimum percentage of total stake needed to vote for a result to
              be
               considered valid.
          threshold:
            type: string
            format: byte
            description: >-
              Minimum proportion of Yes votes for proposal to pass. Default
              value: 0.5.
          veto_threshold:
            type: string
            format: byte
            description: >-
              Minimum value of Veto votes to Total votes ratio for proposal to
              be
               vetoed. Default value: 1/3.
    description: QueryParamsResponse is the response type for the Query/Params RPC method.
  cosmos.gov.v1beta1.QueryProposalResponse:
    type: object
    properties:
      proposal:
        type: object
        properties:
          proposal_id:
            type: string
            format: uint64
          content:
            type: object
            properties:
              type_url:
                type: string
                description: >-
                  A URL/resource name that uniquely identifies the type of the
                  serialized

                  protocol buffer message. This string must contain at least

                  one "/" character. The last segment of the URL's path must
                  represent

                  the fully qualified name of the type (as in

                  `path/google.protobuf.Duration`). The name should be in a
                  canonical form

                  (e.g., leading "." is not accepted).


                  In practice, teams usually precompile into the binary all
                  types that they

                  expect it to use in the context of Any. However, for URLs
                  which use the

                  scheme `http`, `https`, or no scheme, one can optionally set
                  up a type

                  server that maps type URLs to message definitions as follows:


                  * If no scheme is provided, `https` is assumed.

                  * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                    value in binary format, or produce an error.
                  * Applications are allowed to cache lookup results based on
                  the
                    URL, or have them precompiled into a binary to avoid any
                    lookup. Therefore, binary compatibility needs to be preserved
                    on changes to types. (Use versioned type names to manage
                    breaking changes.)

                  Note: this functionality is not currently available in the
                  official

                  protobuf release, and it is not used for type URLs beginning
                  with

                  type.googleapis.com.


                  Schemes other than `http`, `https` (or the empty scheme) might
                  be

                  used with implementation specific semantics.
              value:
                type: string
                format: byte
                description: >-
                  Must be a valid serialized protocol buffer of the above
                  specified type.
            description: >-
              `Any` contains an arbitrary serialized protocol buffer message
              along with a

              URL that describes the type of the serialized message.


              Protobuf library provides support to pack/unpack Any values in the
              form

              of utility functions or additional generated methods of the Any
              type.


              Example 1: Pack and unpack a message in C++.

                  Foo foo = ...;
                  Any any;
                  any.PackFrom(foo);
                  ...
                  if (any.UnpackTo(&foo)) {
                    ...
                  }

              Example 2: Pack and unpack a message in Java.

                  Foo foo = ...;
                  Any any = Any.pack(foo);
                  ...
                  if (any.is(Foo.class)) {
                    foo = any.unpack(Foo.class);
                  }

               Example 3: Pack and unpack a message in Python.

                  foo = Foo(...)
                  any = Any()
                  any.Pack(foo)
                  ...
                  if any.Is(Foo.DESCRIPTOR):
                    any.Unpack(foo)
                    ...

               Example 4: Pack and unpack a message in Go

                   foo := &pb.Foo{...}
                   any, err := ptypes.MarshalAny(foo)
                   ...
                   foo := &pb.Foo{}
                   if err := ptypes.UnmarshalAny(any, foo); err != nil {
                     ...
                   }

              The pack methods provided by protobuf library will by default use

              'type.googleapis.com/full.type.name' as the type URL and the
              unpack

              methods only use the fully qualified type name after the last '/'

              in the type URL, for example "foo.bar.com/x/y.z" will yield type

              name "y.z".



              JSON

              ====

              The JSON representation of an `Any` value uses the regular

              representation of the deserialized, embedded message, with an

              additional field `@type` which contains the type URL. Example:

                  package google.profile;
                  message Person {
                    string first_name = 1;
                    string last_name = 2;
                  }

                  {
                    "@type": "type.googleapis.com/google.profile.Person",
                    "firstName": <string>,
                    "lastName": <string>
                  }

              If the embedded message type is well-known and has a custom JSON

              representation, that representation will be embedded adding a
              field

              `value` which holds the custom JSON in addition to the `@type`

              field. Example (for message [google.protobuf.Duration][]):

                  {
                    "@type": "type.googleapis.com/google.protobuf.Duration",
                    "value": "1.212s"
                  }
          status:
            type: string
            enum:
              - PROPOSAL_STATUS_UNSPECIFIED
              - PROPOSAL_STATUS_DEPOSIT_PERIOD
              - PROPOSAL_STATUS_VOTING_PERIOD
              - PROPOSAL_STATUS_PASSED
              - PROPOSAL_STATUS_REJECTED
              - PROPOSAL_STATUS_FAILED
            default: PROPOSAL_STATUS_UNSPECIFIED
            description: |-
              ProposalStatus enumerates the valid statuses of a proposal.

               - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.
               - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit
              period.
               - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting
              period.
               - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has
              passed.
               - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has
              been rejected.
               - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has
              failed.
          final_tally_result:
            description: >-
              final_tally_result is the final tally result of the proposal. When

              querying a proposal via gRPC, this field is not populated until
              the

              proposal's voting period has ended.
            type: object
            properties:
              'yes':
                type: string
              abstain:
                type: string
              'no':
                type: string
              no_with_veto:
                type: string
          submit_time:
            type: string
            format: date-time
          deposit_end_time:
            type: string
            format: date-time
          total_deposit:
            type: array
            items:
              type: object
              properties:
                denom:
                  type: string
                amount:
                  type: string
              description: >-
                Coin defines a token with a denomination and an amount.


                NOTE: The amount field is an Int which implements the custom
                method

                signatures required by gogoproto.
          voting_start_time:
            type: string
            format: date-time
          voting_end_time:
            type: string
            format: date-time
        description: Proposal defines the core field members of a governance proposal.
    description: >-
      QueryProposalResponse is the response type for the Query/Proposal RPC
      method.
  cosmos.gov.v1beta1.QueryProposalsResponse:
    type: object
    properties:
      proposals:
        type: array
        items:
          type: object
          properties:
            proposal_id:
              type: string
              format: uint64
            content:
              type: object
              properties:
                type_url:
                  type: string
                  description: >-
                    A URL/resource name that uniquely identifies the type of the
                    serialized

                    protocol buffer message. This string must contain at least

                    one "/" character. The last segment of the URL's path must
                    represent

                    the fully qualified name of the type (as in

                    `path/google.protobuf.Duration`). The name should be in a
                    canonical form

                    (e.g., leading "." is not accepted).


                    In practice, teams usually precompile into the binary all
                    types that they

                    expect it to use in the context of Any. However, for URLs
                    which use the

                    scheme `http`, `https`, or no scheme, one can optionally set
                    up a type

                    server that maps type URLs to message definitions as
                    follows:


                    * If no scheme is provided, `https` is assumed.

                    * An HTTP GET on the URL must yield a
                    [google.protobuf.Type][]
                      value in binary format, or produce an error.
                    * Applications are allowed to cache lookup results based on
                    the
                      URL, or have them precompiled into a binary to avoid any
                      lookup. Therefore, binary compatibility needs to be preserved
                      on changes to types. (Use versioned type names to manage
                      breaking changes.)

                    Note: this functionality is not currently available in the
                    official

                    protobuf release, and it is not used for type URLs beginning
                    with

                    type.googleapis.com.


                    Schemes other than `http`, `https` (or the empty scheme)
                    might be

                    used with implementation specific semantics.
                value:
                  type: string
                  format: byte
                  description: >-
                    Must be a valid serialized protocol buffer of the above
                    specified type.
              description: >-
                `Any` contains an arbitrary serialized protocol buffer message
                along with a

                URL that describes the type of the serialized message.


                Protobuf library provides support to pack/unpack Any values in
                the form

                of utility functions or additional generated methods of the Any
                type.


                Example 1: Pack and unpack a message in C++.

                    Foo foo = ...;
                    Any any;
                    any.PackFrom(foo);
                    ...
                    if (any.UnpackTo(&foo)) {
                      ...
                    }

                Example 2: Pack and unpack a message in Java.

                    Foo foo = ...;
                    Any any = Any.pack(foo);
                    ...
                    if (any.is(Foo.class)) {
                      foo = any.unpack(Foo.class);
                    }

                 Example 3: Pack and unpack a message in Python.

                    foo = Foo(...)
                    any = Any()
                    any.Pack(foo)
                    ...
                    if any.Is(Foo.DESCRIPTOR):
                      any.Unpack(foo)
                      ...

                 Example 4: Pack and unpack a message in Go

                     foo := &pb.Foo{...}
                     any, err := ptypes.MarshalAny(foo)
                     ...
                     foo := &pb.Foo{}
                     if err := ptypes.UnmarshalAny(any, foo); err != nil {
                       ...
                     }

                The pack methods provided by protobuf library will by default
                use

                'type.googleapis.com/full.type.name' as the type URL and the
                unpack

                methods only use the fully qualified type name after the last
                '/'

                in the type URL, for example "foo.bar.com/x/y.z" will yield type

                name "y.z".



                JSON

                ====

                The JSON representation of an `Any` value uses the regular

                representation of the deserialized, embedded message, with an

                additional field `@type` which contains the type URL. Example:

                    package google.profile;
                    message Person {
                      string first_name = 1;
                      string last_name = 2;
                    }

                    {
                      "@type": "type.googleapis.com/google.profile.Person",
                      "firstName": <string>,
                      "lastName": <string>
                    }

                If the embedded message type is well-known and has a custom JSON

                representation, that representation will be embedded adding a
                field

                `value` which holds the custom JSON in addition to the `@type`

                field. Example (for message [google.protobuf.Duration][]):

                    {
                      "@type": "type.googleapis.com/google.protobuf.Duration",
                      "value": "1.212s"
                    }
            status:
              type: string
              enum:
                - PROPOSAL_STATUS_UNSPECIFIED
                - PROPOSAL_STATUS_DEPOSIT_PERIOD
                - PROPOSAL_STATUS_VOTING_PERIOD
                - PROPOSAL_STATUS_PASSED
                - PROPOSAL_STATUS_REJECTED
                - PROPOSAL_STATUS_FAILED
              default: PROPOSAL_STATUS_UNSPECIFIED
              description: |-
                ProposalStatus enumerates the valid statuses of a proposal.

                 - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.
                 - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit
                period.
                 - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting
                period.
                 - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has
                passed.
                 - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has
                been rejected.
                 - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has
                failed.
            final_tally_result:
              description: >-
                final_tally_result is the final tally result of the proposal.
                When

                querying a proposal via gRPC, this field is not populated until
                the

                proposal's voting period has ended.
              type: object
              properties:
                'yes':
                  type: string
                abstain:
                  type: string
                'no':
                  type: string
                no_with_veto:
                  type: string
            submit_time:
              type: string
              format: date-time
            deposit_end_time:
              type: string
              format: date-time
            total_deposit:
              type: array
              items:
                type: object
                properties:
                  denom:
                    type: string
                  amount:
                    type: string
                description: >-
                  Coin defines a token with a denomination and an amount.


                  NOTE: The amount field is an Int which implements the custom
                  method

                  signatures required by gogoproto.
            voting_start_time:
              type: string
              format: date-time
            voting_end_time:
              type: string
              format: date-time
          description: Proposal defines the core field members of a governance proposal.
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: |-
      QueryProposalsResponse is the response type for the Query/Proposals RPC
      method.
  cosmos.gov.v1beta1.QueryTallyResultResponse:
    type: object
    properties:
      tally:
        description: tally defines the requested tally.
        type: object
        properties:
          'yes':
            type: string
          abstain:
            type: string
          'no':
            type: string
          no_with_veto:
            type: string
    description: >-
      QueryTallyResultResponse is the response type for the Query/Tally RPC
      method.
  cosmos.gov.v1beta1.QueryVoteResponse:
    type: object
    properties:
      vote:
        type: object
        properties:
          proposal_id:
            type: string
            format: uint64
          voter:
            type: string
          option:
            description: >-
              Deprecated: Prefer to use `options` instead. This field is set in
              queries

              if and only if `len(options) == 1` and that option has weight 1.
              In all

              other cases, this field will default to VOTE_OPTION_UNSPECIFIED.
            type: string
            enum:
              - VOTE_OPTION_UNSPECIFIED
              - VOTE_OPTION_YES
              - VOTE_OPTION_ABSTAIN
              - VOTE_OPTION_NO
              - VOTE_OPTION_NO_WITH_VETO
            default: VOTE_OPTION_UNSPECIFIED
          options:
            type: array
            items:
              type: object
              properties:
                option:
                  type: string
                  enum:
                    - VOTE_OPTION_UNSPECIFIED
                    - VOTE_OPTION_YES
                    - VOTE_OPTION_ABSTAIN
                    - VOTE_OPTION_NO
                    - VOTE_OPTION_NO_WITH_VETO
                  default: VOTE_OPTION_UNSPECIFIED
                  description: >-
                    VoteOption enumerates the valid vote options for a given
                    governance proposal.

                     - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.
                     - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.
                     - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.
                     - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.
                     - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.
                weight:
                  type: string
              description: |-
                WeightedVoteOption defines a unit of vote for vote split.

                Since: cosmos-sdk 0.43
            title: 'Since: cosmos-sdk 0.43'
        description: |-
          Vote defines a vote on a governance proposal.
          A Vote consists of a proposal ID, the voter, and the vote option.
    description: QueryVoteResponse is the response type for the Query/Vote RPC method.
  cosmos.gov.v1beta1.QueryVotesResponse:
    type: object
    properties:
      votes:
        type: array
        items:
          type: object
          properties:
            proposal_id:
              type: string
              format: uint64
            voter:
              type: string
            option:
              description: >-
                Deprecated: Prefer to use `options` instead. This field is set
                in queries

                if and only if `len(options) == 1` and that option has weight 1.
                In all

                other cases, this field will default to VOTE_OPTION_UNSPECIFIED.
              type: string
              enum:
                - VOTE_OPTION_UNSPECIFIED
                - VOTE_OPTION_YES
                - VOTE_OPTION_ABSTAIN
                - VOTE_OPTION_NO
                - VOTE_OPTION_NO_WITH_VETO
              default: VOTE_OPTION_UNSPECIFIED
            options:
              type: array
              items:
                type: object
                properties:
                  option:
                    type: string
                    enum:
                      - VOTE_OPTION_UNSPECIFIED
                      - VOTE_OPTION_YES
                      - VOTE_OPTION_ABSTAIN
                      - VOTE_OPTION_NO
                      - VOTE_OPTION_NO_WITH_VETO
                    default: VOTE_OPTION_UNSPECIFIED
                    description: >-
                      VoteOption enumerates the valid vote options for a given
                      governance proposal.

                       - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.
                       - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.
                       - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.
                       - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.
                       - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.
                  weight:
                    type: string
                description: |-
                  WeightedVoteOption defines a unit of vote for vote split.

                  Since: cosmos-sdk 0.43
              title: 'Since: cosmos-sdk 0.43'
          description: |-
            Vote defines a vote on a governance proposal.
            A Vote consists of a proposal ID, the voter, and the vote option.
        description: votes defined the queried votes.
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: QueryVotesResponse is the response type for the Query/Votes RPC method.
  cosmos.gov.v1beta1.TallyParams:
    type: object
    properties:
      quorum:
        type: string
        format: byte
        description: |-
          Minimum percentage of total stake needed to vote for a result to be
           considered valid.
      threshold:
        type: string
        format: byte
        description: >-
          Minimum proportion of Yes votes for proposal to pass. Default value:
          0.5.
      veto_threshold:
        type: string
        format: byte
        description: |-
          Minimum value of Veto votes to Total votes ratio for proposal to be
           vetoed. Default value: 1/3.
    description: TallyParams defines the params for tallying votes on governance proposals.
  cosmos.gov.v1beta1.TallyResult:
    type: object
    properties:
      'yes':
        type: string
      abstain:
        type: string
      'no':
        type: string
      no_with_veto:
        type: string
    description: TallyResult defines a standard tally for a governance proposal.
  cosmos.gov.v1beta1.Vote:
    type: object
    properties:
      proposal_id:
        type: string
        format: uint64
      voter:
        type: string
      option:
        description: >-
          Deprecated: Prefer to use `options` instead. This field is set in
          queries

          if and only if `len(options) == 1` and that option has weight 1. In
          all

          other cases, this field will default to VOTE_OPTION_UNSPECIFIED.
        type: string
        enum:
          - VOTE_OPTION_UNSPECIFIED
          - VOTE_OPTION_YES
          - VOTE_OPTION_ABSTAIN
          - VOTE_OPTION_NO
          - VOTE_OPTION_NO_WITH_VETO
        default: VOTE_OPTION_UNSPECIFIED
      options:
        type: array
        items:
          type: object
          properties:
            option:
              type: string
              enum:
                - VOTE_OPTION_UNSPECIFIED
                - VOTE_OPTION_YES
                - VOTE_OPTION_ABSTAIN
                - VOTE_OPTION_NO
                - VOTE_OPTION_NO_WITH_VETO
              default: VOTE_OPTION_UNSPECIFIED
              description: >-
                VoteOption enumerates the valid vote options for a given
                governance proposal.

                 - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.
                 - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.
                 - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.
                 - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.
                 - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.
            weight:
              type: string
          description: |-
            WeightedVoteOption defines a unit of vote for vote split.

            Since: cosmos-sdk 0.43
        title: 'Since: cosmos-sdk 0.43'
    description: |-
      Vote defines a vote on a governance proposal.
      A Vote consists of a proposal ID, the voter, and the vote option.
  cosmos.gov.v1beta1.VoteOption:
    type: string
    enum:
      - VOTE_OPTION_UNSPECIFIED
      - VOTE_OPTION_YES
      - VOTE_OPTION_ABSTAIN
      - VOTE_OPTION_NO
      - VOTE_OPTION_NO_WITH_VETO
    default: VOTE_OPTION_UNSPECIFIED
    description: >-
      VoteOption enumerates the valid vote options for a given governance
      proposal.

       - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.
       - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.
       - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.
       - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.
       - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.
  cosmos.gov.v1beta1.VotingParams:
    type: object
    properties:
      voting_period:
        type: string
        description: Length of the voting period.
    description: VotingParams defines the params for voting on governance proposals.
  cosmos.gov.v1beta1.WeightedVoteOption:
    type: object
    properties:
      option:
        type: string
        enum:
          - VOTE_OPTION_UNSPECIFIED
          - VOTE_OPTION_YES
          - VOTE_OPTION_ABSTAIN
          - VOTE_OPTION_NO
          - VOTE_OPTION_NO_WITH_VETO
        default: VOTE_OPTION_UNSPECIFIED
        description: >-
          VoteOption enumerates the valid vote options for a given governance
          proposal.

           - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.
           - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.
           - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.
           - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.
           - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.
      weight:
        type: string
    description: |-
      WeightedVoteOption defines a unit of vote for vote split.

      Since: cosmos-sdk 0.43
  cosmos.gov.v1.Deposit:
    type: object
    properties:
      proposal_id:
        type: string
        format: uint64
      depositor:
        type: string
      amount:
        type: array
        items:
          type: object
          properties:
            denom:
              type: string
            amount:
              type: string
          description: |-
            Coin defines a token with a denomination and an amount.

            NOTE: The amount field is an Int which implements the custom method
            signatures required by gogoproto.
    description: |-
      Deposit defines an amount deposited by an account address to an active
      proposal.
  cosmos.gov.v1.DepositParams:
    type: object
    properties:
      min_deposit:
        type: array
        items:
          type: object
          properties:
            denom:
              type: string
            amount:
              type: string
          description: |-
            Coin defines a token with a denomination and an amount.

            NOTE: The amount field is an Int which implements the custom method
            signatures required by gogoproto.
        description: Minimum deposit for a proposal to enter voting period.
      max_deposit_period:
        type: string
        description: >-
          Maximum period for Atom holders to deposit on a proposal. Initial
          value: 2
           months.
    description: DepositParams defines the params for deposits on governance proposals.
  cosmos.gov.v1.Proposal:
    type: object
    properties:
      id:
        type: string
        format: uint64
      messages:
        type: array
        items:
          type: object
          properties:
            type_url:
              type: string
              description: >-
                A URL/resource name that uniquely identifies the type of the
                serialized

                protocol buffer message. This string must contain at least

                one "/" character. The last segment of the URL's path must
                represent

                the fully qualified name of the type (as in

                `path/google.protobuf.Duration`). The name should be in a
                canonical form

                (e.g., leading "." is not accepted).


                In practice, teams usually precompile into the binary all types
                that they

                expect it to use in the context of Any. However, for URLs which
                use the

                scheme `http`, `https`, or no scheme, one can optionally set up
                a type

                server that maps type URLs to message definitions as follows:


                * If no scheme is provided, `https` is assumed.

                * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                  value in binary format, or produce an error.
                * Applications are allowed to cache lookup results based on the
                  URL, or have them precompiled into a binary to avoid any
                  lookup. Therefore, binary compatibility needs to be preserved
                  on changes to types. (Use versioned type names to manage
                  breaking changes.)

                Note: this functionality is not currently available in the
                official

                protobuf release, and it is not used for type URLs beginning
                with

                type.googleapis.com.


                Schemes other than `http`, `https` (or the empty scheme) might
                be

                used with implementation specific semantics.
            value:
              type: string
              format: byte
              description: >-
                Must be a valid serialized protocol buffer of the above
                specified type.
          description: >-
            `Any` contains an arbitrary serialized protocol buffer message along
            with a

            URL that describes the type of the serialized message.


            Protobuf library provides support to pack/unpack Any values in the
            form

            of utility functions or additional generated methods of the Any
            type.


            Example 1: Pack and unpack a message in C++.

                Foo foo = ...;
                Any any;
                any.PackFrom(foo);
                ...
                if (any.UnpackTo(&foo)) {
                  ...
                }

            Example 2: Pack and unpack a message in Java.

                Foo foo = ...;
                Any any = Any.pack(foo);
                ...
                if (any.is(Foo.class)) {
                  foo = any.unpack(Foo.class);
                }

             Example 3: Pack and unpack a message in Python.

                foo = Foo(...)
                any = Any()
                any.Pack(foo)
                ...
                if any.Is(Foo.DESCRIPTOR):
                  any.Unpack(foo)
                  ...

             Example 4: Pack and unpack a message in Go

                 foo := &pb.Foo{...}
                 any, err := ptypes.MarshalAny(foo)
                 ...
                 foo := &pb.Foo{}
                 if err := ptypes.UnmarshalAny(any, foo); err != nil {
                   ...
                 }

            The pack methods provided by protobuf library will by default use

            'type.googleapis.com/full.type.name' as the type URL and the unpack

            methods only use the fully qualified type name after the last '/'

            in the type URL, for example "foo.bar.com/x/y.z" will yield type

            name "y.z".



            JSON

            ====

            The JSON representation of an `Any` value uses the regular

            representation of the deserialized, embedded message, with an

            additional field `@type` which contains the type URL. Example:

                package google.profile;
                message Person {
                  string first_name = 1;
                  string last_name = 2;
                }

                {
                  "@type": "type.googleapis.com/google.profile.Person",
                  "firstName": <string>,
                  "lastName": <string>
                }

            If the embedded message type is well-known and has a custom JSON

            representation, that representation will be embedded adding a field

            `value` which holds the custom JSON in addition to the `@type`

            field. Example (for message [google.protobuf.Duration][]):

                {
                  "@type": "type.googleapis.com/google.protobuf.Duration",
                  "value": "1.212s"
                }
      status:
        type: string
        enum:
          - PROPOSAL_STATUS_UNSPECIFIED
          - PROPOSAL_STATUS_DEPOSIT_PERIOD
          - PROPOSAL_STATUS_VOTING_PERIOD
          - PROPOSAL_STATUS_PASSED
          - PROPOSAL_STATUS_REJECTED
          - PROPOSAL_STATUS_FAILED
        default: PROPOSAL_STATUS_UNSPECIFIED
        description: |-
          ProposalStatus enumerates the valid statuses of a proposal.

           - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.
           - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit
          period.
           - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting
          period.
           - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has
          passed.
           - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has
          been rejected.
           - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has
          failed.
      final_tally_result:
        description: |-
          final_tally_result is the final tally result of the proposal. When
          querying a proposal via gRPC, this field is not populated until the
          proposal's voting period has ended.
        type: object
        properties:
          yes_count:
            type: string
          abstain_count:
            type: string
          no_count:
            type: string
          no_with_veto_count:
            type: string
      submit_time:
        type: string
        format: date-time
      deposit_end_time:
        type: string
        format: date-time
      total_deposit:
        type: array
        items:
          type: object
          properties:
            denom:
              type: string
            amount:
              type: string
          description: |-
            Coin defines a token with a denomination and an amount.

            NOTE: The amount field is an Int which implements the custom method
            signatures required by gogoproto.
      voting_start_time:
        type: string
        format: date-time
      voting_end_time:
        type: string
        format: date-time
      metadata:
        type: string
        description: metadata is any arbitrary metadata attached to the proposal.
    description: Proposal defines the core field members of a governance proposal.
  cosmos.gov.v1.ProposalStatus:
    type: string
    enum:
      - PROPOSAL_STATUS_UNSPECIFIED
      - PROPOSAL_STATUS_DEPOSIT_PERIOD
      - PROPOSAL_STATUS_VOTING_PERIOD
      - PROPOSAL_STATUS_PASSED
      - PROPOSAL_STATUS_REJECTED
      - PROPOSAL_STATUS_FAILED
    default: PROPOSAL_STATUS_UNSPECIFIED
    description: |-
      ProposalStatus enumerates the valid statuses of a proposal.

       - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.
       - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit
      period.
       - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting
      period.
       - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has
      passed.
       - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has
      been rejected.
       - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has
      failed.
  cosmos.gov.v1.QueryDepositResponse:
    type: object
    properties:
      deposit:
        type: object
        properties:
          proposal_id:
            type: string
            format: uint64
          depositor:
            type: string
          amount:
            type: array
            items:
              type: object
              properties:
                denom:
                  type: string
                amount:
                  type: string
              description: >-
                Coin defines a token with a denomination and an amount.


                NOTE: The amount field is an Int which implements the custom
                method

                signatures required by gogoproto.
        description: |-
          Deposit defines an amount deposited by an account address to an active
          proposal.
    description: >-
      QueryDepositResponse is the response type for the Query/Deposit RPC
      method.
  cosmos.gov.v1.QueryDepositsResponse:
    type: object
    properties:
      deposits:
        type: array
        items:
          type: object
          properties:
            proposal_id:
              type: string
              format: uint64
            depositor:
              type: string
            amount:
              type: array
              items:
                type: object
                properties:
                  denom:
                    type: string
                  amount:
                    type: string
                description: >-
                  Coin defines a token with a denomination and an amount.


                  NOTE: The amount field is an Int which implements the custom
                  method

                  signatures required by gogoproto.
          description: >-
            Deposit defines an amount deposited by an account address to an
            active

            proposal.
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: >-
      QueryDepositsResponse is the response type for the Query/Deposits RPC
      method.
  cosmos.gov.v1.QueryParamsResponse:
    type: object
    properties:
      voting_params:
        description: voting_params defines the parameters related to voting.
        type: object
        properties:
          voting_period:
            type: string
            description: Length of the voting period.
      deposit_params:
        description: deposit_params defines the parameters related to deposit.
        type: object
        properties:
          min_deposit:
            type: array
            items:
              type: object
              properties:
                denom:
                  type: string
                amount:
                  type: string
              description: >-
                Coin defines a token with a denomination and an amount.


                NOTE: The amount field is an Int which implements the custom
                method

                signatures required by gogoproto.
            description: Minimum deposit for a proposal to enter voting period.
          max_deposit_period:
            type: string
            description: >-
              Maximum period for Atom holders to deposit on a proposal. Initial
              value: 2
               months.
      tally_params:
        description: tally_params defines the parameters related to tally.
        type: object
        properties:
          quorum:
            type: string
            description: >-
              Minimum percentage of total stake needed to vote for a result to
              be
               considered valid.
          threshold:
            type: string
            description: >-
              Minimum proportion of Yes votes for proposal to pass. Default
              value: 0.5.
          veto_threshold:
            type: string
            description: >-
              Minimum value of Veto votes to Total votes ratio for proposal to
              be
               vetoed. Default value: 1/3.
    description: QueryParamsResponse is the response type for the Query/Params RPC method.
  cosmos.gov.v1.QueryProposalResponse:
    type: object
    properties:
      proposal:
        type: object
        properties:
          id:
            type: string
            format: uint64
          messages:
            type: array
            items:
              type: object
              properties:
                type_url:
                  type: string
                  description: >-
                    A URL/resource name that uniquely identifies the type of the
                    serialized

                    protocol buffer message. This string must contain at least

                    one "/" character. The last segment of the URL's path must
                    represent

                    the fully qualified name of the type (as in

                    `path/google.protobuf.Duration`). The name should be in a
                    canonical form

                    (e.g., leading "." is not accepted).


                    In practice, teams usually precompile into the binary all
                    types that they

                    expect it to use in the context of Any. However, for URLs
                    which use the

                    scheme `http`, `https`, or no scheme, one can optionally set
                    up a type

                    server that maps type URLs to message definitions as
                    follows:


                    * If no scheme is provided, `https` is assumed.

                    * An HTTP GET on the URL must yield a
                    [google.protobuf.Type][]
                      value in binary format, or produce an error.
                    * Applications are allowed to cache lookup results based on
                    the
                      URL, or have them precompiled into a binary to avoid any
                      lookup. Therefore, binary compatibility needs to be preserved
                      on changes to types. (Use versioned type names to manage
                      breaking changes.)

                    Note: this functionality is not currently available in the
                    official

                    protobuf release, and it is not used for type URLs beginning
                    with

                    type.googleapis.com.


                    Schemes other than `http`, `https` (or the empty scheme)
                    might be

                    used with implementation specific semantics.
                value:
                  type: string
                  format: byte
                  description: >-
                    Must be a valid serialized protocol buffer of the above
                    specified type.
              description: >-
                `Any` contains an arbitrary serialized protocol buffer message
                along with a

                URL that describes the type of the serialized message.


                Protobuf library provides support to pack/unpack Any values in
                the form

                of utility functions or additional generated methods of the Any
                type.


                Example 1: Pack and unpack a message in C++.

                    Foo foo = ...;
                    Any any;
                    any.PackFrom(foo);
                    ...
                    if (any.UnpackTo(&foo)) {
                      ...
                    }

                Example 2: Pack and unpack a message in Java.

                    Foo foo = ...;
                    Any any = Any.pack(foo);
                    ...
                    if (any.is(Foo.class)) {
                      foo = any.unpack(Foo.class);
                    }

                 Example 3: Pack and unpack a message in Python.

                    foo = Foo(...)
                    any = Any()
                    any.Pack(foo)
                    ...
                    if any.Is(Foo.DESCRIPTOR):
                      any.Unpack(foo)
                      ...

                 Example 4: Pack and unpack a message in Go

                     foo := &pb.Foo{...}
                     any, err := ptypes.MarshalAny(foo)
                     ...
                     foo := &pb.Foo{}
                     if err := ptypes.UnmarshalAny(any, foo); err != nil {
                       ...
                     }

                The pack methods provided by protobuf library will by default
                use

                'type.googleapis.com/full.type.name' as the type URL and the
                unpack

                methods only use the fully qualified type name after the last
                '/'

                in the type URL, for example "foo.bar.com/x/y.z" will yield type

                name "y.z".



                JSON

                ====

                The JSON representation of an `Any` value uses the regular

                representation of the deserialized, embedded message, with an

                additional field `@type` which contains the type URL. Example:

                    package google.profile;
                    message Person {
                      string first_name = 1;
                      string last_name = 2;
                    }

                    {
                      "@type": "type.googleapis.com/google.profile.Person",
                      "firstName": <string>,
                      "lastName": <string>
                    }

                If the embedded message type is well-known and has a custom JSON

                representation, that representation will be embedded adding a
                field

                `value` which holds the custom JSON in addition to the `@type`

                field. Example (for message [google.protobuf.Duration][]):

                    {
                      "@type": "type.googleapis.com/google.protobuf.Duration",
                      "value": "1.212s"
                    }
          status:
            type: string
            enum:
              - PROPOSAL_STATUS_UNSPECIFIED
              - PROPOSAL_STATUS_DEPOSIT_PERIOD
              - PROPOSAL_STATUS_VOTING_PERIOD
              - PROPOSAL_STATUS_PASSED
              - PROPOSAL_STATUS_REJECTED
              - PROPOSAL_STATUS_FAILED
            default: PROPOSAL_STATUS_UNSPECIFIED
            description: |-
              ProposalStatus enumerates the valid statuses of a proposal.

               - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.
               - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit
              period.
               - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting
              period.
               - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has
              passed.
               - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has
              been rejected.
               - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has
              failed.
          final_tally_result:
            description: >-
              final_tally_result is the final tally result of the proposal. When

              querying a proposal via gRPC, this field is not populated until
              the

              proposal's voting period has ended.
            type: object
            properties:
              yes_count:
                type: string
              abstain_count:
                type: string
              no_count:
                type: string
              no_with_veto_count:
                type: string
          submit_time:
            type: string
            format: date-time
          deposit_end_time:
            type: string
            format: date-time
          total_deposit:
            type: array
            items:
              type: object
              properties:
                denom:
                  type: string
                amount:
                  type: string
              description: >-
                Coin defines a token with a denomination and an amount.


                NOTE: The amount field is an Int which implements the custom
                method

                signatures required by gogoproto.
          voting_start_time:
            type: string
            format: date-time
          voting_end_time:
            type: string
            format: date-time
          metadata:
            type: string
            description: metadata is any arbitrary metadata attached to the proposal.
        description: Proposal defines the core field members of a governance proposal.
    description: >-
      QueryProposalResponse is the response type for the Query/Proposal RPC
      method.
  cosmos.gov.v1.QueryProposalsResponse:
    type: object
    properties:
      proposals:
        type: array
        items:
          type: object
          properties:
            id:
              type: string
              format: uint64
            messages:
              type: array
              items:
                type: object
                properties:
                  type_url:
                    type: string
                    description: >-
                      A URL/resource name that uniquely identifies the type of
                      the serialized

                      protocol buffer message. This string must contain at least

                      one "/" character. The last segment of the URL's path must
                      represent

                      the fully qualified name of the type (as in

                      `path/google.protobuf.Duration`). The name should be in a
                      canonical form

                      (e.g., leading "." is not accepted).


                      In practice, teams usually precompile into the binary all
                      types that they

                      expect it to use in the context of Any. However, for URLs
                      which use the

                      scheme `http`, `https`, or no scheme, one can optionally
                      set up a type

                      server that maps type URLs to message definitions as
                      follows:


                      * If no scheme is provided, `https` is assumed.

                      * An HTTP GET on the URL must yield a
                      [google.protobuf.Type][]
                        value in binary format, or produce an error.
                      * Applications are allowed to cache lookup results based
                      on the
                        URL, or have them precompiled into a binary to avoid any
                        lookup. Therefore, binary compatibility needs to be preserved
                        on changes to types. (Use versioned type names to manage
                        breaking changes.)

                      Note: this functionality is not currently available in the
                      official

                      protobuf release, and it is not used for type URLs
                      beginning with

                      type.googleapis.com.


                      Schemes other than `http`, `https` (or the empty scheme)
                      might be

                      used with implementation specific semantics.
                  value:
                    type: string
                    format: byte
                    description: >-
                      Must be a valid serialized protocol buffer of the above
                      specified type.
                description: >-
                  `Any` contains an arbitrary serialized protocol buffer message
                  along with a

                  URL that describes the type of the serialized message.


                  Protobuf library provides support to pack/unpack Any values in
                  the form

                  of utility functions or additional generated methods of the
                  Any type.


                  Example 1: Pack and unpack a message in C++.

                      Foo foo = ...;
                      Any any;
                      any.PackFrom(foo);
                      ...
                      if (any.UnpackTo(&foo)) {
                        ...
                      }

                  Example 2: Pack and unpack a message in Java.

                      Foo foo = ...;
                      Any any = Any.pack(foo);
                      ...
                      if (any.is(Foo.class)) {
                        foo = any.unpack(Foo.class);
                      }

                   Example 3: Pack and unpack a message in Python.

                      foo = Foo(...)
                      any = Any()
                      any.Pack(foo)
                      ...
                      if any.Is(Foo.DESCRIPTOR):
                        any.Unpack(foo)
                        ...

                   Example 4: Pack and unpack a message in Go

                       foo := &pb.Foo{...}
                       any, err := ptypes.MarshalAny(foo)
                       ...
                       foo := &pb.Foo{}
                       if err := ptypes.UnmarshalAny(any, foo); err != nil {
                         ...
                       }

                  The pack methods provided by protobuf library will by default
                  use

                  'type.googleapis.com/full.type.name' as the type URL and the
                  unpack

                  methods only use the fully qualified type name after the last
                  '/'

                  in the type URL, for example "foo.bar.com/x/y.z" will yield
                  type

                  name "y.z".



                  JSON

                  ====

                  The JSON representation of an `Any` value uses the regular

                  representation of the deserialized, embedded message, with an

                  additional field `@type` which contains the type URL. Example:

                      package google.profile;
                      message Person {
                        string first_name = 1;
                        string last_name = 2;
                      }

                      {
                        "@type": "type.googleapis.com/google.profile.Person",
                        "firstName": <string>,
                        "lastName": <string>
                      }

                  If the embedded message type is well-known and has a custom
                  JSON

                  representation, that representation will be embedded adding a
                  field

                  `value` which holds the custom JSON in addition to the `@type`

                  field. Example (for message [google.protobuf.Duration][]):

                      {
                        "@type": "type.googleapis.com/google.protobuf.Duration",
                        "value": "1.212s"
                      }
            status:
              type: string
              enum:
                - PROPOSAL_STATUS_UNSPECIFIED
                - PROPOSAL_STATUS_DEPOSIT_PERIOD
                - PROPOSAL_STATUS_VOTING_PERIOD
                - PROPOSAL_STATUS_PASSED
                - PROPOSAL_STATUS_REJECTED
                - PROPOSAL_STATUS_FAILED
              default: PROPOSAL_STATUS_UNSPECIFIED
              description: |-
                ProposalStatus enumerates the valid statuses of a proposal.

                 - PROPOSAL_STATUS_UNSPECIFIED: PROPOSAL_STATUS_UNSPECIFIED defines the default proposal status.
                 - PROPOSAL_STATUS_DEPOSIT_PERIOD: PROPOSAL_STATUS_DEPOSIT_PERIOD defines a proposal status during the deposit
                period.
                 - PROPOSAL_STATUS_VOTING_PERIOD: PROPOSAL_STATUS_VOTING_PERIOD defines a proposal status during the voting
                period.
                 - PROPOSAL_STATUS_PASSED: PROPOSAL_STATUS_PASSED defines a proposal status of a proposal that has
                passed.
                 - PROPOSAL_STATUS_REJECTED: PROPOSAL_STATUS_REJECTED defines a proposal status of a proposal that has
                been rejected.
                 - PROPOSAL_STATUS_FAILED: PROPOSAL_STATUS_FAILED defines a proposal status of a proposal that has
                failed.
            final_tally_result:
              description: >-
                final_tally_result is the final tally result of the proposal.
                When

                querying a proposal via gRPC, this field is not populated until
                the

                proposal's voting period has ended.
              type: object
              properties:
                yes_count:
                  type: string
                abstain_count:
                  type: string
                no_count:
                  type: string
                no_with_veto_count:
                  type: string
            submit_time:
              type: string
              format: date-time
            deposit_end_time:
              type: string
              format: date-time
            total_deposit:
              type: array
              items:
                type: object
                properties:
                  denom:
                    type: string
                  amount:
                    type: string
                description: >-
                  Coin defines a token with a denomination and an amount.


                  NOTE: The amount field is an Int which implements the custom
                  method

                  signatures required by gogoproto.
            voting_start_time:
              type: string
              format: date-time
            voting_end_time:
              type: string
              format: date-time
            metadata:
              type: string
              description: metadata is any arbitrary metadata attached to the proposal.
          description: Proposal defines the core field members of a governance proposal.
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: |-
      QueryProposalsResponse is the response type for the Query/Proposals RPC
      method.
  cosmos.gov.v1.QueryTallyResultResponse:
    type: object
    properties:
      tally:
        description: tally defines the requested tally.
        type: object
        properties:
          yes_count:
            type: string
          abstain_count:
            type: string
          no_count:
            type: string
          no_with_veto_count:
            type: string
    description: >-
      QueryTallyResultResponse is the response type for the Query/Tally RPC
      method.
  cosmos.gov.v1.QueryVoteResponse:
    type: object
    properties:
      vote:
        type: object
        properties:
          proposal_id:
            type: string
            format: uint64
          voter:
            type: string
          options:
            type: array
            items:
              type: object
              properties:
                option:
                  type: string
                  enum:
                    - VOTE_OPTION_UNSPECIFIED
                    - VOTE_OPTION_YES
                    - VOTE_OPTION_ABSTAIN
                    - VOTE_OPTION_NO
                    - VOTE_OPTION_NO_WITH_VETO
                  default: VOTE_OPTION_UNSPECIFIED
                  description: >-
                    VoteOption enumerates the valid vote options for a given
                    governance proposal.

                     - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.
                     - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.
                     - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.
                     - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.
                     - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.
                weight:
                  type: string
              description: WeightedVoteOption defines a unit of vote for vote split.
          metadata:
            type: string
            description: metadata is any  arbitrary metadata to attached to the vote.
        description: |-
          Vote defines a vote on a governance proposal.
          A Vote consists of a proposal ID, the voter, and the vote option.
    description: QueryVoteResponse is the response type for the Query/Vote RPC method.
  cosmos.gov.v1.QueryVotesResponse:
    type: object
    properties:
      votes:
        type: array
        items:
          type: object
          properties:
            proposal_id:
              type: string
              format: uint64
            voter:
              type: string
            options:
              type: array
              items:
                type: object
                properties:
                  option:
                    type: string
                    enum:
                      - VOTE_OPTION_UNSPECIFIED
                      - VOTE_OPTION_YES
                      - VOTE_OPTION_ABSTAIN
                      - VOTE_OPTION_NO
                      - VOTE_OPTION_NO_WITH_VETO
                    default: VOTE_OPTION_UNSPECIFIED
                    description: >-
                      VoteOption enumerates the valid vote options for a given
                      governance proposal.

                       - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.
                       - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.
                       - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.
                       - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.
                       - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.
                  weight:
                    type: string
                description: WeightedVoteOption defines a unit of vote for vote split.
            metadata:
              type: string
              description: metadata is any  arbitrary metadata to attached to the vote.
          description: |-
            Vote defines a vote on a governance proposal.
            A Vote consists of a proposal ID, the voter, and the vote option.
        description: votes defined the queried votes.
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: QueryVotesResponse is the response type for the Query/Votes RPC method.
  cosmos.gov.v1.TallyParams:
    type: object
    properties:
      quorum:
        type: string
        description: |-
          Minimum percentage of total stake needed to vote for a result to be
           considered valid.
      threshold:
        type: string
        description: >-
          Minimum proportion of Yes votes for proposal to pass. Default value:
          0.5.
      veto_threshold:
        type: string
        description: |-
          Minimum value of Veto votes to Total votes ratio for proposal to be
           vetoed. Default value: 1/3.
    description: TallyParams defines the params for tallying votes on governance proposals.
  cosmos.gov.v1.TallyResult:
    type: object
    properties:
      yes_count:
        type: string
      abstain_count:
        type: string
      no_count:
        type: string
      no_with_veto_count:
        type: string
    description: TallyResult defines a standard tally for a governance proposal.
  cosmos.gov.v1.Vote:
    type: object
    properties:
      proposal_id:
        type: string
        format: uint64
      voter:
        type: string
      options:
        type: array
        items:
          type: object
          properties:
            option:
              type: string
              enum:
                - VOTE_OPTION_UNSPECIFIED
                - VOTE_OPTION_YES
                - VOTE_OPTION_ABSTAIN
                - VOTE_OPTION_NO
                - VOTE_OPTION_NO_WITH_VETO
              default: VOTE_OPTION_UNSPECIFIED
              description: >-
                VoteOption enumerates the valid vote options for a given
                governance proposal.

                 - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.
                 - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.
                 - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.
                 - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.
                 - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.
            weight:
              type: string
          description: WeightedVoteOption defines a unit of vote for vote split.
      metadata:
        type: string
        description: metadata is any  arbitrary metadata to attached to the vote.
    description: |-
      Vote defines a vote on a governance proposal.
      A Vote consists of a proposal ID, the voter, and the vote option.
  cosmos.gov.v1.VoteOption:
    type: string
    enum:
      - VOTE_OPTION_UNSPECIFIED
      - VOTE_OPTION_YES
      - VOTE_OPTION_ABSTAIN
      - VOTE_OPTION_NO
      - VOTE_OPTION_NO_WITH_VETO
    default: VOTE_OPTION_UNSPECIFIED
    description: >-
      VoteOption enumerates the valid vote options for a given governance
      proposal.

       - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.
       - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.
       - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.
       - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.
       - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.
  cosmos.gov.v1.VotingParams:
    type: object
    properties:
      voting_period:
        type: string
        description: Length of the voting period.
    description: VotingParams defines the params for voting on governance proposals.
  cosmos.gov.v1.WeightedVoteOption:
    type: object
    properties:
      option:
        type: string
        enum:
          - VOTE_OPTION_UNSPECIFIED
          - VOTE_OPTION_YES
          - VOTE_OPTION_ABSTAIN
          - VOTE_OPTION_NO
          - VOTE_OPTION_NO_WITH_VETO
        default: VOTE_OPTION_UNSPECIFIED
        description: >-
          VoteOption enumerates the valid vote options for a given governance
          proposal.

           - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option.
           - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.
           - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.
           - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.
           - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.
      weight:
        type: string
    description: WeightedVoteOption defines a unit of vote for vote split.
  cosmos.mint.v1beta1.Params:
    type: object
    properties:
      mint_denom:
        type: string
        title: type of coin to mint
      inflation_rate_change:
        type: string
        title: maximum annual change in inflation rate
      inflation_max:
        type: string
        title: maximum inflation rate
      inflation_min:
        type: string
        title: minimum inflation rate
      goal_bonded:
        type: string
        title: goal of percent bonded atoms
      blocks_per_year:
        type: string
        format: uint64
        title: expected blocks per year
    description: Params holds parameters for the mint module.
  cosmos.mint.v1beta1.QueryAnnualProvisionsResponse:
    type: object
    properties:
      annual_provisions:
        type: string
        format: byte
        description: annual_provisions is the current minting annual provisions value.
    description: |-
      QueryAnnualProvisionsResponse is the response type for the
      Query/AnnualProvisions RPC method.
  cosmos.mint.v1beta1.QueryInflationResponse:
    type: object
    properties:
      inflation:
        type: string
        format: byte
        description: inflation is the current minting inflation value.
    description: |-
      QueryInflationResponse is the response type for the Query/Inflation RPC
      method.
  cosmos.mint.v1beta1.QueryParamsResponse:
    type: object
    properties:
      params:
        description: params defines the parameters of the module.
        type: object
        properties:
          mint_denom:
            type: string
            title: type of coin to mint
          inflation_rate_change:
            type: string
            title: maximum annual change in inflation rate
          inflation_max:
            type: string
            title: maximum inflation rate
          inflation_min:
            type: string
            title: minimum inflation rate
          goal_bonded:
            type: string
            title: goal of percent bonded atoms
          blocks_per_year:
            type: string
            format: uint64
            title: expected blocks per year
    description: QueryParamsResponse is the response type for the Query/Params RPC method.
  cosmos.params.v1beta1.ParamChange:
    type: object
    properties:
      subspace:
        type: string
      key:
        type: string
      value:
        type: string
    description: |-
      ParamChange defines an individual parameter change, for use in
      ParameterChangeProposal.
  cosmos.params.v1beta1.QueryParamsResponse:
    type: object
    properties:
      param:
        description: param defines the queried parameter.
        type: object
        properties:
          subspace:
            type: string
          key:
            type: string
          value:
            type: string
    description: QueryParamsResponse is response type for the Query/Params RPC method.
  cosmos.params.v1beta1.QuerySubspacesResponse:
    type: object
    properties:
      subspaces:
        type: array
        items:
          type: object
          properties:
            subspace:
              type: string
            keys:
              type: array
              items:
                type: string
          description: >-
            Subspace defines a parameter subspace name and all the keys that
            exist for

            the subspace.


            Since: cosmos-sdk 0.46
    description: |-
      QuerySubspacesResponse defines the response types for querying for all
      registered subspaces and all keys for a subspace.

      Since: cosmos-sdk 0.46
  cosmos.params.v1beta1.Subspace:
    type: object
    properties:
      subspace:
        type: string
      keys:
        type: array
        items:
          type: string
    description: |-
      Subspace defines a parameter subspace name and all the keys that exist for
      the subspace.

      Since: cosmos-sdk 0.46
  cosmos.slashing.v1beta1.Params:
    type: object
    properties:
      signed_blocks_window:
        type: string
        format: int64
      min_signed_per_window:
        type: string
        format: byte
      downtime_jail_duration:
        type: string
      slash_fraction_double_sign:
        type: string
        format: byte
      slash_fraction_downtime:
        type: string
        format: byte
    description: Params represents the parameters used for by the slashing module.
  cosmos.slashing.v1beta1.QueryParamsResponse:
    type: object
    properties:
      params:
        type: object
        properties:
          signed_blocks_window:
            type: string
            format: int64
          min_signed_per_window:
            type: string
            format: byte
          downtime_jail_duration:
            type: string
          slash_fraction_double_sign:
            type: string
            format: byte
          slash_fraction_downtime:
            type: string
            format: byte
        description: Params represents the parameters used for by the slashing module.
    title: QueryParamsResponse is the response type for the Query/Params RPC method
  cosmos.slashing.v1beta1.QuerySigningInfoResponse:
    type: object
    properties:
      val_signing_info:
        type: object
        properties:
          address:
            type: string
          start_height:
            type: string
            format: int64
            title: Height at which validator was first a candidate OR was unjailed
          index_offset:
            type: string
            format: int64
            description: >-
              Index which is incremented each time the validator was a bonded

              in a block and may have signed a precommit or not. This in
              conjunction with the

              `SignedBlocksWindow` param determines the index in the
              `MissedBlocksBitArray`.
          jailed_until:
            type: string
            format: date-time
            description: >-
              Timestamp until which the validator is jailed due to liveness
              downtime.
          tombstoned:
            type: boolean
            description: >-
              Whether or not a validator has been tombstoned (killed out of
              validator set). It is set

              once the validator commits an equivocation or for any other
              configured misbehiavor.
          missed_blocks_counter:
            type: string
            format: int64
            description: >-
              A counter kept to avoid unnecessary array reads.

              Note that `Sum(MissedBlocksBitArray)` always equals
              `MissedBlocksCounter`.
        description: >-
          ValidatorSigningInfo defines a validator's signing info for monitoring
          their

          liveness activity.
        title: val_signing_info is the signing info of requested val cons address
    title: >-
      QuerySigningInfoResponse is the response type for the Query/SigningInfo
      RPC

      method
  cosmos.slashing.v1beta1.QuerySigningInfosResponse:
    type: object
    properties:
      info:
        type: array
        items:
          type: object
          properties:
            address:
              type: string
            start_height:
              type: string
              format: int64
              title: Height at which validator was first a candidate OR was unjailed
            index_offset:
              type: string
              format: int64
              description: >-
                Index which is incremented each time the validator was a bonded

                in a block and may have signed a precommit or not. This in
                conjunction with the

                `SignedBlocksWindow` param determines the index in the
                `MissedBlocksBitArray`.
            jailed_until:
              type: string
              format: date-time
              description: >-
                Timestamp until which the validator is jailed due to liveness
                downtime.
            tombstoned:
              type: boolean
              description: >-
                Whether or not a validator has been tombstoned (killed out of
                validator set). It is set

                once the validator commits an equivocation or for any other
                configured misbehiavor.
            missed_blocks_counter:
              type: string
              format: int64
              description: >-
                A counter kept to avoid unnecessary array reads.

                Note that `Sum(MissedBlocksBitArray)` always equals
                `MissedBlocksCounter`.
          description: >-
            ValidatorSigningInfo defines a validator's signing info for
            monitoring their

            liveness activity.
        title: info is the signing info of all validators
      pagination:
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
        description: |-
          PageResponse is to be embedded in gRPC response messages where the
          corresponding request message has used PageRequest.

           message SomeResponse {
                   repeated Bar results = 1;
                   PageResponse page = 2;
           }
    title: >-
      QuerySigningInfosResponse is the response type for the Query/SigningInfos
      RPC

      method
  cosmos.slashing.v1beta1.ValidatorSigningInfo:
    type: object
    properties:
      address:
        type: string
      start_height:
        type: string
        format: int64
        title: Height at which validator was first a candidate OR was unjailed
      index_offset:
        type: string
        format: int64
        description: >-
          Index which is incremented each time the validator was a bonded

          in a block and may have signed a precommit or not. This in conjunction
          with the

          `SignedBlocksWindow` param determines the index in the
          `MissedBlocksBitArray`.
      jailed_until:
        type: string
        format: date-time
        description: >-
          Timestamp until which the validator is jailed due to liveness
          downtime.
      tombstoned:
        type: boolean
        description: >-
          Whether or not a validator has been tombstoned (killed out of
          validator set). It is set

          once the validator commits an equivocation or for any other configured
          misbehiavor.
      missed_blocks_counter:
        type: string
        format: int64
        description: >-
          A counter kept to avoid unnecessary array reads.

          Note that `Sum(MissedBlocksBitArray)` always equals
          `MissedBlocksCounter`.
    description: >-
      ValidatorSigningInfo defines a validator's signing info for monitoring
      their

      liveness activity.
  cosmos.staking.v1beta1.BondStatus:
    type: string
    enum:
      - BOND_STATUS_UNSPECIFIED
      - BOND_STATUS_UNBONDED
      - BOND_STATUS_UNBONDING
      - BOND_STATUS_BONDED
    default: BOND_STATUS_UNSPECIFIED
    description: |-
      BondStatus is the status of a validator.

       - BOND_STATUS_UNSPECIFIED: UNSPECIFIED defines an invalid validator status.
       - BOND_STATUS_UNBONDED: UNBONDED defines a validator that is not bonded.
       - BOND_STATUS_UNBONDING: UNBONDING defines a validator that is unbonding.
       - BOND_STATUS_BONDED: BONDED defines a validator that is bonded.
  cosmos.staking.v1beta1.Commission:
    type: object
    properties:
      commission_rates:
        description: >-
          commission_rates defines the initial commission rates to be used for
          creating a validator.
        type: object
        properties:
          rate:
            type: string
            description: rate is the commission rate charged to delegators, as a fraction.
          max_rate:
            type: string
            description: >-
              max_rate defines the maximum commission rate which validator can
              ever charge, as a fraction.
          max_change_rate:
            type: string
            description: >-
              max_change_rate defines the maximum daily increase of the
              validator commission, as a fraction.
      update_time:
        type: string
        format: date-time
        description: update_time is the last time the commission rate was changed.
    description: Commission defines commission parameters for a given validator.
  cosmos.staking.v1beta1.CommissionRates:
    type: object
    properties:
      rate:
        type: string
        description: rate is the commission rate charged to delegators, as a fraction.
      max_rate:
        type: string
        description: >-
          max_rate defines the maximum commission rate which validator can ever
          charge, as a fraction.
      max_change_rate:
        type: string
        description: >-
          max_change_rate defines the maximum daily increase of the validator
          commission, as a fraction.
    description: >-
      CommissionRates defines the initial commission rates to be used for
      creating

      a validator.
  cosmos.staking.v1beta1.Delegation:
    type: object
    properties:
      delegator_address:
        type: string
        description: delegator_address is the bech32-encoded address of the delegator.
      validator_address:
        type: string
        description: validator_address is the bech32-encoded address of the validator.
      shares:
        type: string
        description: shares define the delegation shares received.
    description: |-
      Delegation represents the bond with tokens held by an account. It is
      owned by one delegator, and is associated with the voting power of one
      validator.
  cosmos.staking.v1beta1.DelegationResponse:
    type: object
    properties:
      delegation:
        type: object
        properties:
          delegator_address:
            type: string
            description: delegator_address is the bech32-encoded address of the delegator.
          validator_address:
            type: string
            description: validator_address is the bech32-encoded address of the validator.
          shares:
            type: string
            description: shares define the delegation shares received.
        description: |-
          Delegation represents the bond with tokens held by an account. It is
          owned by one delegator, and is associated with the voting power of one
          validator.
      balance:
        type: object
        properties:
          denom:
            type: string
          amount:
            type: string
        description: |-
          Coin defines a token with a denomination and an amount.

          NOTE: The amount field is an Int which implements the custom method
          signatures required by gogoproto.
    description: |-
      DelegationResponse is equivalent to Delegation except that it contains a
      balance in addition to shares which is more suitable for client responses.
  cosmos.staking.v1beta1.Description:
    type: object
    properties:
      moniker:
        type: string
        description: moniker defines a human-readable name for the validator.
      identity:
        type: string
        description: >-
          identity defines an optional identity signature (ex. UPort or
          Keybase).
      website:
        type: string
        description: website defines an optional website link.
      security_contact:
        type: string
        description: security_contact defines an optional email for security contact.
      details:
        type: string
        description: details define other optional details.
    description: Description defines a validator description.
  cosmos.staking.v1beta1.HistoricalInfo:
    type: object
    properties:
      header:
        type: object
        properties:
          version:
            title: basic block info
            type: object
            properties:
              block:
                type: string
                format: uint64
              app:
                type: string
                format: uint64
            description: >-
              Consensus captures the consensus rules for processing a block in
              the blockchain,

              including all blockchain data structures and the rules of the
              application's

              state transition machine.
          chain_id:
            type: string
          height:
            type: string
            format: int64
          time:
            type: string
            format: date-time
          last_block_id:
            title: prev block info
            type: object
            properties:
              hash:
                type: string
                format: byte
              part_set_header:
                type: object
                properties:
                  total:
                    type: integer
                    format: int64
                  hash:
                    type: string
                    format: byte
                title: PartsetHeader
          last_commit_hash:
            type: string
            format: byte
            title: hashes of block data
          data_hash:
            type: string
            format: byte
          validators_hash:
            type: string
            format: byte
            title: hashes from the app output from the prev block
          next_validators_hash:
            type: string
            format: byte
          consensus_hash:
            type: string
            format: byte
          app_hash:
            type: string
            format: byte
          last_results_hash:
            type: string
            format: byte
          evidence_hash:
            type: string
            format: byte
            title: consensus info
          proposer_address:
            type: string
            format: byte
        description: Header defines the structure of a Tendermint block header.
      valset:
        type: array
        items:
          type: object
          properties:
            operator_address:
              type: string
              description: >-
                operator_address defines the address of the validator's
                operator; bech encoded in JSON.
            consensus_pubkey:
              type: object
              properties:
                type_url:
                  type: string
                  description: >-
                    A URL/resource name that uniquely identifies the type of the
                    serialized

                    protocol buffer message. This string must contain at least

                    one "/" character. The last segment of the URL's path must
                    represent

                    the fully qualified name of the type (as in

                    `path/google.protobuf.Duration`). The name should be in a
                    canonical form

                    (e.g., leading "." is not accepted).


                    In practice, teams usually precompile into the binary all
                    types that they

                    expect it to use in the context of Any. However, for URLs
                    which use the

                    scheme `http`, `https`, or no scheme, one can optionally set
                    up a type

                    server that maps type URLs to message definitions as
                    follows:


                    * If no scheme is provided, `https` is assumed.

                    * An HTTP GET on the URL must yield a
                    [google.protobuf.Type][]
                      value in binary format, or produce an error.
                    * Applications are allowed to cache lookup results based on
                    the
                      URL, or have them precompiled into a binary to avoid any
                      lookup. Therefore, binary compatibility needs to be preserved
                      on changes to types. (Use versioned type names to manage
                      breaking changes.)

                    Note: this functionality is not currently available in the
                    official

                    protobuf release, and it is not used for type URLs beginning
                    with

                    type.googleapis.com.


                    Schemes other than `http`, `https` (or the empty scheme)
                    might be

                    used with implementation specific semantics.
                value:
                  type: string
                  format: byte
                  description: >-
                    Must be a valid serialized protocol buffer of the above
                    specified type.
              description: >-
                `Any` contains an arbitrary serialized protocol buffer message
                along with a

                URL that describes the type of the serialized message.


                Protobuf library provides support to pack/unpack Any values in
                the form

                of utility functions or additional generated methods of the Any
                type.


                Example 1: Pack and unpack a message in C++.

                    Foo foo = ...;
                    Any any;
                    any.PackFrom(foo);
                    ...
                    if (any.UnpackTo(&foo)) {
                      ...
                    }

                Example 2: Pack and unpack a message in Java.

                    Foo foo = ...;
                    Any any = Any.pack(foo);
                    ...
                    if (any.is(Foo.class)) {
                      foo = any.unpack(Foo.class);
                    }

                 Example 3: Pack and unpack a message in Python.

                    foo = Foo(...)
                    any = Any()
                    any.Pack(foo)
                    ...
                    if any.Is(Foo.DESCRIPTOR):
                      any.Unpack(foo)
                      ...

                 Example 4: Pack and unpack a message in Go

                     foo := &pb.Foo{...}
                     any, err := ptypes.MarshalAny(foo)
                     ...
                     foo := &pb.Foo{}
                     if err := ptypes.UnmarshalAny(any, foo); err != nil {
                       ...
                     }

                The pack methods provided by protobuf library will by default
                use

                'type.googleapis.com/full.type.name' as the type URL and the
                unpack

                methods only use the fully qualified type name after the last
                '/'

                in the type URL, for example "foo.bar.com/x/y.z" will yield type

                name "y.z".



                JSON

                ====

                The JSON representation of an `Any` value uses the regular

                representation of the deserialized, embedded message, with an

                additional field `@type` which contains the type URL. Example:

                    package google.profile;
                    message Person {
                      string first_name = 1;
                      string last_name = 2;
                    }

                    {
                      "@type": "type.googleapis.com/google.profile.Person",
                      "firstName": <string>,
                      "lastName": <string>
                    }

                If the embedded message type is well-known and has a custom JSON

                representation, that representation will be embedded adding a
                field

                `value` which holds the custom JSON in addition to the `@type`

                field. Example (for message [google.protobuf.Duration][]):

                    {
                      "@type": "type.googleapis.com/google.protobuf.Duration",
                      "value": "1.212s"
                    }
            jailed:
              type: boolean
              description: >-
                jailed defined whether the validator has been jailed from bonded
                status or not.
            status:
              description: status is the validator status (bonded/unbonding/unbonded).
              type: string
              enum:
                - BOND_STATUS_UNSPECIFIED
                - BOND_STATUS_UNBONDED
                - BOND_STATUS_UNBONDING
                - BOND_STATUS_BONDED
              default: BOND_STATUS_UNSPECIFIED
            tokens:
              type: string
              description: tokens define the delegated tokens (incl. self-delegation).
            delegator_shares:
              type: string
              description: >-
                delegator_shares defines total shares issued to a validator's
                delegators.
            description:
              description: description defines the description terms for the validator.
              type: object
              properties:
                moniker:
                  type: string
                  description: moniker defines a human-readable name for the validator.
                identity:
                  type: string
                  description: >-
                    identity defines an optional identity signature (ex. UPort
                    or Keybase).
                website:
                  type: string
                  description: website defines an optional website link.
                security_contact:
                  type: string
                  description: >-
                    security_contact defines an optional email for security
                    contact.
                details:
                  type: string
                  description: details define other optional details.
            unbonding_height:
              type: string
              format: int64
              description: >-
                unbonding_height defines, if unbonding, the height at which this
                validator has begun unbonding.
            unbonding_time:
              type: string
              format: date-time
              description: >-
                unbonding_time defines, if unbonding, the min time for the
                validator to complete unbonding.
            commission:
              description: commission defines the commission parameters.
              type: object
              properties:
                commission_rates:
                  description: >-
                    commission_rates defines the initial commission rates to be
                    used for creating a validator.
                  type: object
                  properties:
                    rate:
                      type: string
                      description: >-
                        rate is the commission rate charged to delegators, as a
                        fraction.
                    max_rate:
                      type: string
                      description: >-
                        max_rate defines the maximum commission rate which
                        validator can ever charge, as a fraction.
                    max_change_rate:
                      type: string
                      description: >-
                        max_change_rate defines the maximum daily increase of
                        the validator commission, as a fraction.
                update_time:
                  type: string
                  format: date-time
                  description: >-
                    update_time is the last time the commission rate was
                    changed.
            min_self_delegation:
              type: string
              description: >-
                min_self_delegation is the validator's self declared minimum
                self delegation.


                Since: cosmos-sdk 0.46
          description: >-
            Validator defines a validator, together with the total amount of the

            Validator's bond shares and their exchange rate to coins. Slashing
            results in

            a decrease in the exchange rate, allowing correct calculation of
            future

            undelegations without iterating over delegators. When coins are
            delegated to

            this validator, the validator is credited with a delegation whose
            number of

            bond shares is based on the amount of coins delegated divided by the
            current

            exchange rate. Voting power can be calculated as total bonded shares

            multiplied by exchange rate.
    description: >-
      HistoricalInfo contains header and validator information for a given
      block.

      It is stored as part of staking module's state, which persists the `n`
      most

      recent HistoricalInfo

      (`n` is set by the staking module's `historical_entries` parameter).
  cosmos.staking.v1beta1.Params:
    type: object
    properties:
      unbonding_time:
        type: string
        description: unbonding_time is the time duration of unbonding.
      max_validators:
        type: integer
        format: int64
        description: max_validators is the maximum number of validators.
      max_entries:
        type: integer
        format: int64
        description: >-
          max_entries is the max entries for either unbonding delegation or
          redelegation (per pair/trio).
      historical_entries:
        type: integer
        format: int64
        description: historical_entries is the number of historical entries to persist.
      bond_denom:
        type: string
        description: bond_denom defines the bondable coin denomination.
      min_commission_rate:
        type: string
        title: >-
          min_commission_rate is the chain-wide minimum commission rate that a
          validator can charge their delegators
    description: Params defines the parameters for the staking module.
  cosmos.staking.v1beta1.Pool:
    type: object
    properties:
      not_bonded_tokens:
        type: string
      bonded_tokens:
        type: string
    description: |-
      Pool is used for tracking bonded and not-bonded token supply of the bond
      denomination.
  cosmos.staking.v1beta1.QueryDelegationResponse:
    type: object
    properties:
      delegation_response:
        type: object
        properties:
          delegation:
            type: object
            properties:
              delegator_address:
                type: string
                description: >-
                  delegator_address is the bech32-encoded address of the
                  delegator.
              validator_address:
                type: string
                description: >-
                  validator_address is the bech32-encoded address of the
                  validator.
              shares:
                type: string
                description: shares define the delegation shares received.
            description: >-
              Delegation represents the bond with tokens held by an account. It
              is

              owned by one delegator, and is associated with the voting power of
              one

              validator.
          balance:
            type: object
            properties:
              denom:
                type: string
              amount:
                type: string
            description: >-
              Coin defines a token with a denomination and an amount.


              NOTE: The amount field is an Int which implements the custom
              method

              signatures required by gogoproto.
        description: >-
          DelegationResponse is equivalent to Delegation except that it contains
          a

          balance in addition to shares which is more suitable for client
          responses.
    description: >-
      QueryDelegationResponse is response type for the Query/Delegation RPC
      method.
  cosmos.staking.v1beta1.QueryDelegatorDelegationsResponse:
    type: object
    properties:
      delegation_responses:
        type: array
        items:
          type: object
          properties:
            delegation:
              type: object
              properties:
                delegator_address:
                  type: string
                  description: >-
                    delegator_address is the bech32-encoded address of the
                    delegator.
                validator_address:
                  type: string
                  description: >-
                    validator_address is the bech32-encoded address of the
                    validator.
                shares:
                  type: string
                  description: shares define the delegation shares received.
              description: >-
                Delegation represents the bond with tokens held by an account.
                It is

                owned by one delegator, and is associated with the voting power
                of one

                validator.
            balance:
              type: object
              properties:
                denom:
                  type: string
                amount:
                  type: string
              description: >-
                Coin defines a token with a denomination and an amount.


                NOTE: The amount field is an Int which implements the custom
                method

                signatures required by gogoproto.
          description: >-
            DelegationResponse is equivalent to Delegation except that it
            contains a

            balance in addition to shares which is more suitable for client
            responses.
        description: delegation_responses defines all the delegations' info of a delegator.
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: |-
      QueryDelegatorDelegationsResponse is response type for the
      Query/DelegatorDelegations RPC method.
  cosmos.staking.v1beta1.QueryDelegatorUnbondingDelegationsResponse:
    type: object
    properties:
      unbonding_responses:
        type: array
        items:
          type: object
          properties:
            delegator_address:
              type: string
              description: >-
                delegator_address is the bech32-encoded address of the
                delegator.
            validator_address:
              type: string
              description: >-
                validator_address is the bech32-encoded address of the
                validator.
            entries:
              type: array
              items:
                type: object
                properties:
                  creation_height:
                    type: string
                    format: int64
                    description: >-
                      creation_height is the height which the unbonding took
                      place.
                  completion_time:
                    type: string
                    format: date-time
                    description: completion_time is the unix time for unbonding completion.
                  initial_balance:
                    type: string
                    description: >-
                      initial_balance defines the tokens initially scheduled to
                      receive at completion.
                  balance:
                    type: string
                    description: balance defines the tokens to receive at completion.
                description: >-
                  UnbondingDelegationEntry defines an unbonding object with
                  relevant metadata.
              description: entries are the unbonding delegation entries.
          description: >-
            UnbondingDelegation stores all of a single delegator's unbonding
            bonds

            for a single validator in an time-ordered list.
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: |-
      QueryUnbondingDelegatorDelegationsResponse is response type for the
      Query/UnbondingDelegatorDelegations RPC method.
  cosmos.staking.v1beta1.QueryDelegatorValidatorResponse:
    type: object
    properties:
      validator:
        type: object
        properties:
          operator_address:
            type: string
            description: >-
              operator_address defines the address of the validator's operator;
              bech encoded in JSON.
          consensus_pubkey:
            type: object
            properties:
              type_url:
                type: string
                description: >-
                  A URL/resource name that uniquely identifies the type of the
                  serialized

                  protocol buffer message. This string must contain at least

                  one "/" character. The last segment of the URL's path must
                  represent

                  the fully qualified name of the type (as in

                  `path/google.protobuf.Duration`). The name should be in a
                  canonical form

                  (e.g., leading "." is not accepted).


                  In practice, teams usually precompile into the binary all
                  types that they

                  expect it to use in the context of Any. However, for URLs
                  which use the

                  scheme `http`, `https`, or no scheme, one can optionally set
                  up a type

                  server that maps type URLs to message definitions as follows:


                  * If no scheme is provided, `https` is assumed.

                  * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                    value in binary format, or produce an error.
                  * Applications are allowed to cache lookup results based on
                  the
                    URL, or have them precompiled into a binary to avoid any
                    lookup. Therefore, binary compatibility needs to be preserved
                    on changes to types. (Use versioned type names to manage
                    breaking changes.)

                  Note: this functionality is not currently available in the
                  official

                  protobuf release, and it is not used for type URLs beginning
                  with

                  type.googleapis.com.


                  Schemes other than `http`, `https` (or the empty scheme) might
                  be

                  used with implementation specific semantics.
              value:
                type: string
                format: byte
                description: >-
                  Must be a valid serialized protocol buffer of the above
                  specified type.
            description: >-
              `Any` contains an arbitrary serialized protocol buffer message
              along with a

              URL that describes the type of the serialized message.


              Protobuf library provides support to pack/unpack Any values in the
              form

              of utility functions or additional generated methods of the Any
              type.


              Example 1: Pack and unpack a message in C++.

                  Foo foo = ...;
                  Any any;
                  any.PackFrom(foo);
                  ...
                  if (any.UnpackTo(&foo)) {
                    ...
                  }

              Example 2: Pack and unpack a message in Java.

                  Foo foo = ...;
                  Any any = Any.pack(foo);
                  ...
                  if (any.is(Foo.class)) {
                    foo = any.unpack(Foo.class);
                  }

               Example 3: Pack and unpack a message in Python.

                  foo = Foo(...)
                  any = Any()
                  any.Pack(foo)
                  ...
                  if any.Is(Foo.DESCRIPTOR):
                    any.Unpack(foo)
                    ...

               Example 4: Pack and unpack a message in Go

                   foo := &pb.Foo{...}
                   any, err := ptypes.MarshalAny(foo)
                   ...
                   foo := &pb.Foo{}
                   if err := ptypes.UnmarshalAny(any, foo); err != nil {
                     ...
                   }

              The pack methods provided by protobuf library will by default use

              'type.googleapis.com/full.type.name' as the type URL and the
              unpack

              methods only use the fully qualified type name after the last '/'

              in the type URL, for example "foo.bar.com/x/y.z" will yield type

              name "y.z".



              JSON

              ====

              The JSON representation of an `Any` value uses the regular

              representation of the deserialized, embedded message, with an

              additional field `@type` which contains the type URL. Example:

                  package google.profile;
                  message Person {
                    string first_name = 1;
                    string last_name = 2;
                  }

                  {
                    "@type": "type.googleapis.com/google.profile.Person",
                    "firstName": <string>,
                    "lastName": <string>
                  }

              If the embedded message type is well-known and has a custom JSON

              representation, that representation will be embedded adding a
              field

              `value` which holds the custom JSON in addition to the `@type`

              field. Example (for message [google.protobuf.Duration][]):

                  {
                    "@type": "type.googleapis.com/google.protobuf.Duration",
                    "value": "1.212s"
                  }
          jailed:
            type: boolean
            description: >-
              jailed defined whether the validator has been jailed from bonded
              status or not.
          status:
            description: status is the validator status (bonded/unbonding/unbonded).
            type: string
            enum:
              - BOND_STATUS_UNSPECIFIED
              - BOND_STATUS_UNBONDED
              - BOND_STATUS_UNBONDING
              - BOND_STATUS_BONDED
            default: BOND_STATUS_UNSPECIFIED
          tokens:
            type: string
            description: tokens define the delegated tokens (incl. self-delegation).
          delegator_shares:
            type: string
            description: >-
              delegator_shares defines total shares issued to a validator's
              delegators.
          description:
            description: description defines the description terms for the validator.
            type: object
            properties:
              moniker:
                type: string
                description: moniker defines a human-readable name for the validator.
              identity:
                type: string
                description: >-
                  identity defines an optional identity signature (ex. UPort or
                  Keybase).
              website:
                type: string
                description: website defines an optional website link.
              security_contact:
                type: string
                description: >-
                  security_contact defines an optional email for security
                  contact.
              details:
                type: string
                description: details define other optional details.
          unbonding_height:
            type: string
            format: int64
            description: >-
              unbonding_height defines, if unbonding, the height at which this
              validator has begun unbonding.
          unbonding_time:
            type: string
            format: date-time
            description: >-
              unbonding_time defines, if unbonding, the min time for the
              validator to complete unbonding.
          commission:
            description: commission defines the commission parameters.
            type: object
            properties:
              commission_rates:
                description: >-
                  commission_rates defines the initial commission rates to be
                  used for creating a validator.
                type: object
                properties:
                  rate:
                    type: string
                    description: >-
                      rate is the commission rate charged to delegators, as a
                      fraction.
                  max_rate:
                    type: string
                    description: >-
                      max_rate defines the maximum commission rate which
                      validator can ever charge, as a fraction.
                  max_change_rate:
                    type: string
                    description: >-
                      max_change_rate defines the maximum daily increase of the
                      validator commission, as a fraction.
              update_time:
                type: string
                format: date-time
                description: update_time is the last time the commission rate was changed.
          min_self_delegation:
            type: string
            description: >-
              min_self_delegation is the validator's self declared minimum self
              delegation.


              Since: cosmos-sdk 0.46
        description: >-
          Validator defines a validator, together with the total amount of the

          Validator's bond shares and their exchange rate to coins. Slashing
          results in

          a decrease in the exchange rate, allowing correct calculation of
          future

          undelegations without iterating over delegators. When coins are
          delegated to

          this validator, the validator is credited with a delegation whose
          number of

          bond shares is based on the amount of coins delegated divided by the
          current

          exchange rate. Voting power can be calculated as total bonded shares

          multiplied by exchange rate.
    description: |-
      QueryDelegatorValidatorResponse response type for the
      Query/DelegatorValidator RPC method.
  cosmos.staking.v1beta1.QueryDelegatorValidatorsResponse:
    type: object
    properties:
      validators:
        type: array
        items:
          type: object
          properties:
            operator_address:
              type: string
              description: >-
                operator_address defines the address of the validator's
                operator; bech encoded in JSON.
            consensus_pubkey:
              type: object
              properties:
                type_url:
                  type: string
                  description: >-
                    A URL/resource name that uniquely identifies the type of the
                    serialized

                    protocol buffer message. This string must contain at least

                    one "/" character. The last segment of the URL's path must
                    represent

                    the fully qualified name of the type (as in

                    `path/google.protobuf.Duration`). The name should be in a
                    canonical form

                    (e.g., leading "." is not accepted).


                    In practice, teams usually precompile into the binary all
                    types that they

                    expect it to use in the context of Any. However, for URLs
                    which use the

                    scheme `http`, `https`, or no scheme, one can optionally set
                    up a type

                    server that maps type URLs to message definitions as
                    follows:


                    * If no scheme is provided, `https` is assumed.

                    * An HTTP GET on the URL must yield a
                    [google.protobuf.Type][]
                      value in binary format, or produce an error.
                    * Applications are allowed to cache lookup results based on
                    the
                      URL, or have them precompiled into a binary to avoid any
                      lookup. Therefore, binary compatibility needs to be preserved
                      on changes to types. (Use versioned type names to manage
                      breaking changes.)

                    Note: this functionality is not currently available in the
                    official

                    protobuf release, and it is not used for type URLs beginning
                    with

                    type.googleapis.com.


                    Schemes other than `http`, `https` (or the empty scheme)
                    might be

                    used with implementation specific semantics.
                value:
                  type: string
                  format: byte
                  description: >-
                    Must be a valid serialized protocol buffer of the above
                    specified type.
              description: >-
                `Any` contains an arbitrary serialized protocol buffer message
                along with a

                URL that describes the type of the serialized message.


                Protobuf library provides support to pack/unpack Any values in
                the form

                of utility functions or additional generated methods of the Any
                type.


                Example 1: Pack and unpack a message in C++.

                    Foo foo = ...;
                    Any any;
                    any.PackFrom(foo);
                    ...
                    if (any.UnpackTo(&foo)) {
                      ...
                    }

                Example 2: Pack and unpack a message in Java.

                    Foo foo = ...;
                    Any any = Any.pack(foo);
                    ...
                    if (any.is(Foo.class)) {
                      foo = any.unpack(Foo.class);
                    }

                 Example 3: Pack and unpack a message in Python.

                    foo = Foo(...)
                    any = Any()
                    any.Pack(foo)
                    ...
                    if any.Is(Foo.DESCRIPTOR):
                      any.Unpack(foo)
                      ...

                 Example 4: Pack and unpack a message in Go

                     foo := &pb.Foo{...}
                     any, err := ptypes.MarshalAny(foo)
                     ...
                     foo := &pb.Foo{}
                     if err := ptypes.UnmarshalAny(any, foo); err != nil {
                       ...
                     }

                The pack methods provided by protobuf library will by default
                use

                'type.googleapis.com/full.type.name' as the type URL and the
                unpack

                methods only use the fully qualified type name after the last
                '/'

                in the type URL, for example "foo.bar.com/x/y.z" will yield type

                name "y.z".



                JSON

                ====

                The JSON representation of an `Any` value uses the regular

                representation of the deserialized, embedded message, with an

                additional field `@type` which contains the type URL. Example:

                    package google.profile;
                    message Person {
                      string first_name = 1;
                      string last_name = 2;
                    }

                    {
                      "@type": "type.googleapis.com/google.profile.Person",
                      "firstName": <string>,
                      "lastName": <string>
                    }

                If the embedded message type is well-known and has a custom JSON

                representation, that representation will be embedded adding a
                field

                `value` which holds the custom JSON in addition to the `@type`

                field. Example (for message [google.protobuf.Duration][]):

                    {
                      "@type": "type.googleapis.com/google.protobuf.Duration",
                      "value": "1.212s"
                    }
            jailed:
              type: boolean
              description: >-
                jailed defined whether the validator has been jailed from bonded
                status or not.
            status:
              description: status is the validator status (bonded/unbonding/unbonded).
              type: string
              enum:
                - BOND_STATUS_UNSPECIFIED
                - BOND_STATUS_UNBONDED
                - BOND_STATUS_UNBONDING
                - BOND_STATUS_BONDED
              default: BOND_STATUS_UNSPECIFIED
            tokens:
              type: string
              description: tokens define the delegated tokens (incl. self-delegation).
            delegator_shares:
              type: string
              description: >-
                delegator_shares defines total shares issued to a validator's
                delegators.
            description:
              description: description defines the description terms for the validator.
              type: object
              properties:
                moniker:
                  type: string
                  description: moniker defines a human-readable name for the validator.
                identity:
                  type: string
                  description: >-
                    identity defines an optional identity signature (ex. UPort
                    or Keybase).
                website:
                  type: string
                  description: website defines an optional website link.
                security_contact:
                  type: string
                  description: >-
                    security_contact defines an optional email for security
                    contact.
                details:
                  type: string
                  description: details define other optional details.
            unbonding_height:
              type: string
              format: int64
              description: >-
                unbonding_height defines, if unbonding, the height at which this
                validator has begun unbonding.
            unbonding_time:
              type: string
              format: date-time
              description: >-
                unbonding_time defines, if unbonding, the min time for the
                validator to complete unbonding.
            commission:
              description: commission defines the commission parameters.
              type: object
              properties:
                commission_rates:
                  description: >-
                    commission_rates defines the initial commission rates to be
                    used for creating a validator.
                  type: object
                  properties:
                    rate:
                      type: string
                      description: >-
                        rate is the commission rate charged to delegators, as a
                        fraction.
                    max_rate:
                      type: string
                      description: >-
                        max_rate defines the maximum commission rate which
                        validator can ever charge, as a fraction.
                    max_change_rate:
                      type: string
                      description: >-
                        max_change_rate defines the maximum daily increase of
                        the validator commission, as a fraction.
                update_time:
                  type: string
                  format: date-time
                  description: >-
                    update_time is the last time the commission rate was
                    changed.
            min_self_delegation:
              type: string
              description: >-
                min_self_delegation is the validator's self declared minimum
                self delegation.


                Since: cosmos-sdk 0.46
          description: >-
            Validator defines a validator, together with the total amount of the

            Validator's bond shares and their exchange rate to coins. Slashing
            results in

            a decrease in the exchange rate, allowing correct calculation of
            future

            undelegations without iterating over delegators. When coins are
            delegated to

            this validator, the validator is credited with a delegation whose
            number of

            bond shares is based on the amount of coins delegated divided by the
            current

            exchange rate. Voting power can be calculated as total bonded shares

            multiplied by exchange rate.
        description: validators defines the validators' info of a delegator.
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: |-
      QueryDelegatorValidatorsResponse is response type for the
      Query/DelegatorValidators RPC method.
  cosmos.staking.v1beta1.QueryHistoricalInfoResponse:
    type: object
    properties:
      hist:
        description: hist defines the historical info at the given height.
        type: object
        properties:
          header:
            type: object
            properties:
              version:
                title: basic block info
                type: object
                properties:
                  block:
                    type: string
                    format: uint64
                  app:
                    type: string
                    format: uint64
                description: >-
                  Consensus captures the consensus rules for processing a block
                  in the blockchain,

                  including all blockchain data structures and the rules of the
                  application's

                  state transition machine.
              chain_id:
                type: string
              height:
                type: string
                format: int64
              time:
                type: string
                format: date-time
              last_block_id:
                title: prev block info
                type: object
                properties:
                  hash:
                    type: string
                    format: byte
                  part_set_header:
                    type: object
                    properties:
                      total:
                        type: integer
                        format: int64
                      hash:
                        type: string
                        format: byte
                    title: PartsetHeader
              last_commit_hash:
                type: string
                format: byte
                title: hashes of block data
              data_hash:
                type: string
                format: byte
              validators_hash:
                type: string
                format: byte
                title: hashes from the app output from the prev block
              next_validators_hash:
                type: string
                format: byte
              consensus_hash:
                type: string
                format: byte
              app_hash:
                type: string
                format: byte
              last_results_hash:
                type: string
                format: byte
              evidence_hash:
                type: string
                format: byte
                title: consensus info
              proposer_address:
                type: string
                format: byte
            description: Header defines the structure of a Tendermint block header.
          valset:
            type: array
            items:
              type: object
              properties:
                operator_address:
                  type: string
                  description: >-
                    operator_address defines the address of the validator's
                    operator; bech encoded in JSON.
                consensus_pubkey:
                  type: object
                  properties:
                    type_url:
                      type: string
                      description: >-
                        A URL/resource name that uniquely identifies the type of
                        the serialized

                        protocol buffer message. This string must contain at
                        least

                        one "/" character. The last segment of the URL's path
                        must represent

                        the fully qualified name of the type (as in

                        `path/google.protobuf.Duration`). The name should be in
                        a canonical form

                        (e.g., leading "." is not accepted).


                        In practice, teams usually precompile into the binary
                        all types that they

                        expect it to use in the context of Any. However, for
                        URLs which use the

                        scheme `http`, `https`, or no scheme, one can optionally
                        set up a type

                        server that maps type URLs to message definitions as
                        follows:


                        * If no scheme is provided, `https` is assumed.

                        * An HTTP GET on the URL must yield a
                        [google.protobuf.Type][]
                          value in binary format, or produce an error.
                        * Applications are allowed to cache lookup results based
                        on the
                          URL, or have them precompiled into a binary to avoid any
                          lookup. Therefore, binary compatibility needs to be preserved
                          on changes to types. (Use versioned type names to manage
                          breaking changes.)

                        Note: this functionality is not currently available in
                        the official

                        protobuf release, and it is not used for type URLs
                        beginning with

                        type.googleapis.com.


                        Schemes other than `http`, `https` (or the empty scheme)
                        might be

                        used with implementation specific semantics.
                    value:
                      type: string
                      format: byte
                      description: >-
                        Must be a valid serialized protocol buffer of the above
                        specified type.
                  description: >-
                    `Any` contains an arbitrary serialized protocol buffer
                    message along with a

                    URL that describes the type of the serialized message.


                    Protobuf library provides support to pack/unpack Any values
                    in the form

                    of utility functions or additional generated methods of the
                    Any type.


                    Example 1: Pack and unpack a message in C++.

                        Foo foo = ...;
                        Any any;
                        any.PackFrom(foo);
                        ...
                        if (any.UnpackTo(&foo)) {
                          ...
                        }

                    Example 2: Pack and unpack a message in Java.

                        Foo foo = ...;
                        Any any = Any.pack(foo);
                        ...
                        if (any.is(Foo.class)) {
                          foo = any.unpack(Foo.class);
                        }

                     Example 3: Pack and unpack a message in Python.

                        foo = Foo(...)
                        any = Any()
                        any.Pack(foo)
                        ...
                        if any.Is(Foo.DESCRIPTOR):
                          any.Unpack(foo)
                          ...

                     Example 4: Pack and unpack a message in Go

                         foo := &pb.Foo{...}
                         any, err := ptypes.MarshalAny(foo)
                         ...
                         foo := &pb.Foo{}
                         if err := ptypes.UnmarshalAny(any, foo); err != nil {
                           ...
                         }

                    The pack methods provided by protobuf library will by
                    default use

                    'type.googleapis.com/full.type.name' as the type URL and the
                    unpack

                    methods only use the fully qualified type name after the
                    last '/'

                    in the type URL, for example "foo.bar.com/x/y.z" will yield
                    type

                    name "y.z".



                    JSON

                    ====

                    The JSON representation of an `Any` value uses the regular

                    representation of the deserialized, embedded message, with
                    an

                    additional field `@type` which contains the type URL.
                    Example:

                        package google.profile;
                        message Person {
                          string first_name = 1;
                          string last_name = 2;
                        }

                        {
                          "@type": "type.googleapis.com/google.profile.Person",
                          "firstName": <string>,
                          "lastName": <string>
                        }

                    If the embedded message type is well-known and has a custom
                    JSON

                    representation, that representation will be embedded adding
                    a field

                    `value` which holds the custom JSON in addition to the
                    `@type`

                    field. Example (for message [google.protobuf.Duration][]):

                        {
                          "@type": "type.googleapis.com/google.protobuf.Duration",
                          "value": "1.212s"
                        }
                jailed:
                  type: boolean
                  description: >-
                    jailed defined whether the validator has been jailed from
                    bonded status or not.
                status:
                  description: status is the validator status (bonded/unbonding/unbonded).
                  type: string
                  enum:
                    - BOND_STATUS_UNSPECIFIED
                    - BOND_STATUS_UNBONDED
                    - BOND_STATUS_UNBONDING
                    - BOND_STATUS_BONDED
                  default: BOND_STATUS_UNSPECIFIED
                tokens:
                  type: string
                  description: tokens define the delegated tokens (incl. self-delegation).
                delegator_shares:
                  type: string
                  description: >-
                    delegator_shares defines total shares issued to a
                    validator's delegators.
                description:
                  description: description defines the description terms for the validator.
                  type: object
                  properties:
                    moniker:
                      type: string
                      description: moniker defines a human-readable name for the validator.
                    identity:
                      type: string
                      description: >-
                        identity defines an optional identity signature (ex.
                        UPort or Keybase).
                    website:
                      type: string
                      description: website defines an optional website link.
                    security_contact:
                      type: string
                      description: >-
                        security_contact defines an optional email for security
                        contact.
                    details:
                      type: string
                      description: details define other optional details.
                unbonding_height:
                  type: string
                  format: int64
                  description: >-
                    unbonding_height defines, if unbonding, the height at which
                    this validator has begun unbonding.
                unbonding_time:
                  type: string
                  format: date-time
                  description: >-
                    unbonding_time defines, if unbonding, the min time for the
                    validator to complete unbonding.
                commission:
                  description: commission defines the commission parameters.
                  type: object
                  properties:
                    commission_rates:
                      description: >-
                        commission_rates defines the initial commission rates to
                        be used for creating a validator.
                      type: object
                      properties:
                        rate:
                          type: string
                          description: >-
                            rate is the commission rate charged to delegators,
                            as a fraction.
                        max_rate:
                          type: string
                          description: >-
                            max_rate defines the maximum commission rate which
                            validator can ever charge, as a fraction.
                        max_change_rate:
                          type: string
                          description: >-
                            max_change_rate defines the maximum daily increase
                            of the validator commission, as a fraction.
                    update_time:
                      type: string
                      format: date-time
                      description: >-
                        update_time is the last time the commission rate was
                        changed.
                min_self_delegation:
                  type: string
                  description: >-
                    min_self_delegation is the validator's self declared minimum
                    self delegation.


                    Since: cosmos-sdk 0.46
              description: >-
                Validator defines a validator, together with the total amount of
                the

                Validator's bond shares and their exchange rate to coins.
                Slashing results in

                a decrease in the exchange rate, allowing correct calculation of
                future

                undelegations without iterating over delegators. When coins are
                delegated to

                this validator, the validator is credited with a delegation
                whose number of

                bond shares is based on the amount of coins delegated divided by
                the current

                exchange rate. Voting power can be calculated as total bonded
                shares

                multiplied by exchange rate.
    description: >-
      QueryHistoricalInfoResponse is response type for the Query/HistoricalInfo
      RPC

      method.
  cosmos.staking.v1beta1.QueryParamsResponse:
    type: object
    properties:
      params:
        description: params holds all the parameters of this module.
        type: object
        properties:
          unbonding_time:
            type: string
            description: unbonding_time is the time duration of unbonding.
          max_validators:
            type: integer
            format: int64
            description: max_validators is the maximum number of validators.
          max_entries:
            type: integer
            format: int64
            description: >-
              max_entries is the max entries for either unbonding delegation or
              redelegation (per pair/trio).
          historical_entries:
            type: integer
            format: int64
            description: historical_entries is the number of historical entries to persist.
          bond_denom:
            type: string
            description: bond_denom defines the bondable coin denomination.
          min_commission_rate:
            type: string
            title: >-
              min_commission_rate is the chain-wide minimum commission rate that
              a validator can charge their delegators
    description: QueryParamsResponse is response type for the Query/Params RPC method.
  cosmos.staking.v1beta1.QueryPoolResponse:
    type: object
    properties:
      pool:
        description: pool defines the pool info.
        type: object
        properties:
          not_bonded_tokens:
            type: string
          bonded_tokens:
            type: string
    description: QueryPoolResponse is response type for the Query/Pool RPC method.
  cosmos.staking.v1beta1.QueryRedelegationsResponse:
    type: object
    properties:
      redelegation_responses:
        type: array
        items:
          type: object
          properties:
            redelegation:
              type: object
              properties:
                delegator_address:
                  type: string
                  description: >-
                    delegator_address is the bech32-encoded address of the
                    delegator.
                validator_src_address:
                  type: string
                  description: >-
                    validator_src_address is the validator redelegation source
                    operator address.
                validator_dst_address:
                  type: string
                  description: >-
                    validator_dst_address is the validator redelegation
                    destination operator address.
                entries:
                  type: array
                  items:
                    type: object
                    properties:
                      creation_height:
                        type: string
                        format: int64
                        description: >-
                          creation_height  defines the height which the
                          redelegation took place.
                      completion_time:
                        type: string
                        format: date-time
                        description: >-
                          completion_time defines the unix time for redelegation
                          completion.
                      initial_balance:
                        type: string
                        description: >-
                          initial_balance defines the initial balance when
                          redelegation started.
                      shares_dst:
                        type: string
                        description: >-
                          shares_dst is the amount of destination-validator
                          shares created by redelegation.
                    description: >-
                      RedelegationEntry defines a redelegation object with
                      relevant metadata.
                  description: entries are the redelegation entries.
              description: >-
                Redelegation contains the list of a particular delegator's
                redelegating bonds

                from a particular source validator to a particular destination
                validator.
            entries:
              type: array
              items:
                type: object
                properties:
                  redelegation_entry:
                    type: object
                    properties:
                      creation_height:
                        type: string
                        format: int64
                        description: >-
                          creation_height  defines the height which the
                          redelegation took place.
                      completion_time:
                        type: string
                        format: date-time
                        description: >-
                          completion_time defines the unix time for redelegation
                          completion.
                      initial_balance:
                        type: string
                        description: >-
                          initial_balance defines the initial balance when
                          redelegation started.
                      shares_dst:
                        type: string
                        description: >-
                          shares_dst is the amount of destination-validator
                          shares created by redelegation.
                    description: >-
                      RedelegationEntry defines a redelegation object with
                      relevant metadata.
                  balance:
                    type: string
                description: >-
                  RedelegationEntryResponse is equivalent to a RedelegationEntry
                  except that it

                  contains a balance in addition to shares which is more
                  suitable for client

                  responses.
          description: >-
            RedelegationResponse is equivalent to a Redelegation except that its
            entries

            contain a balance in addition to shares which is more suitable for
            client

            responses.
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: >-
      QueryRedelegationsResponse is response type for the Query/Redelegations
      RPC

      method.
  cosmos.staking.v1beta1.QueryUnbondingDelegationResponse:
    type: object
    properties:
      unbond:
        type: object
        properties:
          delegator_address:
            type: string
            description: delegator_address is the bech32-encoded address of the delegator.
          validator_address:
            type: string
            description: validator_address is the bech32-encoded address of the validator.
          entries:
            type: array
            items:
              type: object
              properties:
                creation_height:
                  type: string
                  format: int64
                  description: >-
                    creation_height is the height which the unbonding took
                    place.
                completion_time:
                  type: string
                  format: date-time
                  description: completion_time is the unix time for unbonding completion.
                initial_balance:
                  type: string
                  description: >-
                    initial_balance defines the tokens initially scheduled to
                    receive at completion.
                balance:
                  type: string
                  description: balance defines the tokens to receive at completion.
              description: >-
                UnbondingDelegationEntry defines an unbonding object with
                relevant metadata.
            description: entries are the unbonding delegation entries.
        description: |-
          UnbondingDelegation stores all of a single delegator's unbonding bonds
          for a single validator in an time-ordered list.
    description: |-
      QueryDelegationResponse is response type for the Query/UnbondingDelegation
      RPC method.
  cosmos.staking.v1beta1.QueryValidatorDelegationsResponse:
    type: object
    properties:
      delegation_responses:
        type: array
        items:
          type: object
          properties:
            delegation:
              type: object
              properties:
                delegator_address:
                  type: string
                  description: >-
                    delegator_address is the bech32-encoded address of the
                    delegator.
                validator_address:
                  type: string
                  description: >-
                    validator_address is the bech32-encoded address of the
                    validator.
                shares:
                  type: string
                  description: shares define the delegation shares received.
              description: >-
                Delegation represents the bond with tokens held by an account.
                It is

                owned by one delegator, and is associated with the voting power
                of one

                validator.
            balance:
              type: object
              properties:
                denom:
                  type: string
                amount:
                  type: string
              description: >-
                Coin defines a token with a denomination and an amount.


                NOTE: The amount field is an Int which implements the custom
                method

                signatures required by gogoproto.
          description: >-
            DelegationResponse is equivalent to Delegation except that it
            contains a

            balance in addition to shares which is more suitable for client
            responses.
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    title: |-
      QueryValidatorDelegationsResponse is response type for the
      Query/ValidatorDelegations RPC method
  cosmos.staking.v1beta1.QueryValidatorResponse:
    type: object
    properties:
      validator:
        type: object
        properties:
          operator_address:
            type: string
            description: >-
              operator_address defines the address of the validator's operator;
              bech encoded in JSON.
          consensus_pubkey:
            type: object
            properties:
              type_url:
                type: string
                description: >-
                  A URL/resource name that uniquely identifies the type of the
                  serialized

                  protocol buffer message. This string must contain at least

                  one "/" character. The last segment of the URL's path must
                  represent

                  the fully qualified name of the type (as in

                  `path/google.protobuf.Duration`). The name should be in a
                  canonical form

                  (e.g., leading "." is not accepted).


                  In practice, teams usually precompile into the binary all
                  types that they

                  expect it to use in the context of Any. However, for URLs
                  which use the

                  scheme `http`, `https`, or no scheme, one can optionally set
                  up a type

                  server that maps type URLs to message definitions as follows:


                  * If no scheme is provided, `https` is assumed.

                  * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                    value in binary format, or produce an error.
                  * Applications are allowed to cache lookup results based on
                  the
                    URL, or have them precompiled into a binary to avoid any
                    lookup. Therefore, binary compatibility needs to be preserved
                    on changes to types. (Use versioned type names to manage
                    breaking changes.)

                  Note: this functionality is not currently available in the
                  official

                  protobuf release, and it is not used for type URLs beginning
                  with

                  type.googleapis.com.


                  Schemes other than `http`, `https` (or the empty scheme) might
                  be

                  used with implementation specific semantics.
              value:
                type: string
                format: byte
                description: >-
                  Must be a valid serialized protocol buffer of the above
                  specified type.
            description: >-
              `Any` contains an arbitrary serialized protocol buffer message
              along with a

              URL that describes the type of the serialized message.


              Protobuf library provides support to pack/unpack Any values in the
              form

              of utility functions or additional generated methods of the Any
              type.


              Example 1: Pack and unpack a message in C++.

                  Foo foo = ...;
                  Any any;
                  any.PackFrom(foo);
                  ...
                  if (any.UnpackTo(&foo)) {
                    ...
                  }

              Example 2: Pack and unpack a message in Java.

                  Foo foo = ...;
                  Any any = Any.pack(foo);
                  ...
                  if (any.is(Foo.class)) {
                    foo = any.unpack(Foo.class);
                  }

               Example 3: Pack and unpack a message in Python.

                  foo = Foo(...)
                  any = Any()
                  any.Pack(foo)
                  ...
                  if any.Is(Foo.DESCRIPTOR):
                    any.Unpack(foo)
                    ...

               Example 4: Pack and unpack a message in Go

                   foo := &pb.Foo{...}
                   any, err := ptypes.MarshalAny(foo)
                   ...
                   foo := &pb.Foo{}
                   if err := ptypes.UnmarshalAny(any, foo); err != nil {
                     ...
                   }

              The pack methods provided by protobuf library will by default use

              'type.googleapis.com/full.type.name' as the type URL and the
              unpack

              methods only use the fully qualified type name after the last '/'

              in the type URL, for example "foo.bar.com/x/y.z" will yield type

              name "y.z".



              JSON

              ====

              The JSON representation of an `Any` value uses the regular

              representation of the deserialized, embedded message, with an

              additional field `@type` which contains the type URL. Example:

                  package google.profile;
                  message Person {
                    string first_name = 1;
                    string last_name = 2;
                  }

                  {
                    "@type": "type.googleapis.com/google.profile.Person",
                    "firstName": <string>,
                    "lastName": <string>
                  }

              If the embedded message type is well-known and has a custom JSON

              representation, that representation will be embedded adding a
              field

              `value` which holds the custom JSON in addition to the `@type`

              field. Example (for message [google.protobuf.Duration][]):

                  {
                    "@type": "type.googleapis.com/google.protobuf.Duration",
                    "value": "1.212s"
                  }
          jailed:
            type: boolean
            description: >-
              jailed defined whether the validator has been jailed from bonded
              status or not.
          status:
            description: status is the validator status (bonded/unbonding/unbonded).
            type: string
            enum:
              - BOND_STATUS_UNSPECIFIED
              - BOND_STATUS_UNBONDED
              - BOND_STATUS_UNBONDING
              - BOND_STATUS_BONDED
            default: BOND_STATUS_UNSPECIFIED
          tokens:
            type: string
            description: tokens define the delegated tokens (incl. self-delegation).
          delegator_shares:
            type: string
            description: >-
              delegator_shares defines total shares issued to a validator's
              delegators.
          description:
            description: description defines the description terms for the validator.
            type: object
            properties:
              moniker:
                type: string
                description: moniker defines a human-readable name for the validator.
              identity:
                type: string
                description: >-
                  identity defines an optional identity signature (ex. UPort or
                  Keybase).
              website:
                type: string
                description: website defines an optional website link.
              security_contact:
                type: string
                description: >-
                  security_contact defines an optional email for security
                  contact.
              details:
                type: string
                description: details define other optional details.
          unbonding_height:
            type: string
            format: int64
            description: >-
              unbonding_height defines, if unbonding, the height at which this
              validator has begun unbonding.
          unbonding_time:
            type: string
            format: date-time
            description: >-
              unbonding_time defines, if unbonding, the min time for the
              validator to complete unbonding.
          commission:
            description: commission defines the commission parameters.
            type: object
            properties:
              commission_rates:
                description: >-
                  commission_rates defines the initial commission rates to be
                  used for creating a validator.
                type: object
                properties:
                  rate:
                    type: string
                    description: >-
                      rate is the commission rate charged to delegators, as a
                      fraction.
                  max_rate:
                    type: string
                    description: >-
                      max_rate defines the maximum commission rate which
                      validator can ever charge, as a fraction.
                  max_change_rate:
                    type: string
                    description: >-
                      max_change_rate defines the maximum daily increase of the
                      validator commission, as a fraction.
              update_time:
                type: string
                format: date-time
                description: update_time is the last time the commission rate was changed.
          min_self_delegation:
            type: string
            description: >-
              min_self_delegation is the validator's self declared minimum self
              delegation.


              Since: cosmos-sdk 0.46
        description: >-
          Validator defines a validator, together with the total amount of the

          Validator's bond shares and their exchange rate to coins. Slashing
          results in

          a decrease in the exchange rate, allowing correct calculation of
          future

          undelegations without iterating over delegators. When coins are
          delegated to

          this validator, the validator is credited with a delegation whose
          number of

          bond shares is based on the amount of coins delegated divided by the
          current

          exchange rate. Voting power can be calculated as total bonded shares

          multiplied by exchange rate.
    title: QueryValidatorResponse is response type for the Query/Validator RPC method
  cosmos.staking.v1beta1.QueryValidatorUnbondingDelegationsResponse:
    type: object
    properties:
      unbonding_responses:
        type: array
        items:
          type: object
          properties:
            delegator_address:
              type: string
              description: >-
                delegator_address is the bech32-encoded address of the
                delegator.
            validator_address:
              type: string
              description: >-
                validator_address is the bech32-encoded address of the
                validator.
            entries:
              type: array
              items:
                type: object
                properties:
                  creation_height:
                    type: string
                    format: int64
                    description: >-
                      creation_height is the height which the unbonding took
                      place.
                  completion_time:
                    type: string
                    format: date-time
                    description: completion_time is the unix time for unbonding completion.
                  initial_balance:
                    type: string
                    description: >-
                      initial_balance defines the tokens initially scheduled to
                      receive at completion.
                  balance:
                    type: string
                    description: balance defines the tokens to receive at completion.
                description: >-
                  UnbondingDelegationEntry defines an unbonding object with
                  relevant metadata.
              description: entries are the unbonding delegation entries.
          description: >-
            UnbondingDelegation stores all of a single delegator's unbonding
            bonds

            for a single validator in an time-ordered list.
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: |-
      QueryValidatorUnbondingDelegationsResponse is response type for the
      Query/ValidatorUnbondingDelegations RPC method.
  cosmos.staking.v1beta1.QueryValidatorsResponse:
    type: object
    properties:
      validators:
        type: array
        items:
          type: object
          properties:
            operator_address:
              type: string
              description: >-
                operator_address defines the address of the validator's
                operator; bech encoded in JSON.
            consensus_pubkey:
              type: object
              properties:
                type_url:
                  type: string
                  description: >-
                    A URL/resource name that uniquely identifies the type of the
                    serialized

                    protocol buffer message. This string must contain at least

                    one "/" character. The last segment of the URL's path must
                    represent

                    the fully qualified name of the type (as in

                    `path/google.protobuf.Duration`). The name should be in a
                    canonical form

                    (e.g., leading "." is not accepted).


                    In practice, teams usually precompile into the binary all
                    types that they

                    expect it to use in the context of Any. However, for URLs
                    which use the

                    scheme `http`, `https`, or no scheme, one can optionally set
                    up a type

                    server that maps type URLs to message definitions as
                    follows:


                    * If no scheme is provided, `https` is assumed.

                    * An HTTP GET on the URL must yield a
                    [google.protobuf.Type][]
                      value in binary format, or produce an error.
                    * Applications are allowed to cache lookup results based on
                    the
                      URL, or have them precompiled into a binary to avoid any
                      lookup. Therefore, binary compatibility needs to be preserved
                      on changes to types. (Use versioned type names to manage
                      breaking changes.)

                    Note: this functionality is not currently available in the
                    official

                    protobuf release, and it is not used for type URLs beginning
                    with

                    type.googleapis.com.


                    Schemes other than `http`, `https` (or the empty scheme)
                    might be

                    used with implementation specific semantics.
                value:
                  type: string
                  format: byte
                  description: >-
                    Must be a valid serialized protocol buffer of the above
                    specified type.
              description: >-
                `Any` contains an arbitrary serialized protocol buffer message
                along with a

                URL that describes the type of the serialized message.


                Protobuf library provides support to pack/unpack Any values in
                the form

                of utility functions or additional generated methods of the Any
                type.


                Example 1: Pack and unpack a message in C++.

                    Foo foo = ...;
                    Any any;
                    any.PackFrom(foo);
                    ...
                    if (any.UnpackTo(&foo)) {
                      ...
                    }

                Example 2: Pack and unpack a message in Java.

                    Foo foo = ...;
                    Any any = Any.pack(foo);
                    ...
                    if (any.is(Foo.class)) {
                      foo = any.unpack(Foo.class);
                    }

                 Example 3: Pack and unpack a message in Python.

                    foo = Foo(...)
                    any = Any()
                    any.Pack(foo)
                    ...
                    if any.Is(Foo.DESCRIPTOR):
                      any.Unpack(foo)
                      ...

                 Example 4: Pack and unpack a message in Go

                     foo := &pb.Foo{...}
                     any, err := ptypes.MarshalAny(foo)
                     ...
                     foo := &pb.Foo{}
                     if err := ptypes.UnmarshalAny(any, foo); err != nil {
                       ...
                     }

                The pack methods provided by protobuf library will by default
                use

                'type.googleapis.com/full.type.name' as the type URL and the
                unpack

                methods only use the fully qualified type name after the last
                '/'

                in the type URL, for example "foo.bar.com/x/y.z" will yield type

                name "y.z".



                JSON

                ====

                The JSON representation of an `Any` value uses the regular

                representation of the deserialized, embedded message, with an

                additional field `@type` which contains the type URL. Example:

                    package google.profile;
                    message Person {
                      string first_name = 1;
                      string last_name = 2;
                    }

                    {
                      "@type": "type.googleapis.com/google.profile.Person",
                      "firstName": <string>,
                      "lastName": <string>
                    }

                If the embedded message type is well-known and has a custom JSON

                representation, that representation will be embedded adding a
                field

                `value` which holds the custom JSON in addition to the `@type`

                field. Example (for message [google.protobuf.Duration][]):

                    {
                      "@type": "type.googleapis.com/google.protobuf.Duration",
                      "value": "1.212s"
                    }
            jailed:
              type: boolean
              description: >-
                jailed defined whether the validator has been jailed from bonded
                status or not.
            status:
              description: status is the validator status (bonded/unbonding/unbonded).
              type: string
              enum:
                - BOND_STATUS_UNSPECIFIED
                - BOND_STATUS_UNBONDED
                - BOND_STATUS_UNBONDING
                - BOND_STATUS_BONDED
              default: BOND_STATUS_UNSPECIFIED
            tokens:
              type: string
              description: tokens define the delegated tokens (incl. self-delegation).
            delegator_shares:
              type: string
              description: >-
                delegator_shares defines total shares issued to a validator's
                delegators.
            description:
              description: description defines the description terms for the validator.
              type: object
              properties:
                moniker:
                  type: string
                  description: moniker defines a human-readable name for the validator.
                identity:
                  type: string
                  description: >-
                    identity defines an optional identity signature (ex. UPort
                    or Keybase).
                website:
                  type: string
                  description: website defines an optional website link.
                security_contact:
                  type: string
                  description: >-
                    security_contact defines an optional email for security
                    contact.
                details:
                  type: string
                  description: details define other optional details.
            unbonding_height:
              type: string
              format: int64
              description: >-
                unbonding_height defines, if unbonding, the height at which this
                validator has begun unbonding.
            unbonding_time:
              type: string
              format: date-time
              description: >-
                unbonding_time defines, if unbonding, the min time for the
                validator to complete unbonding.
            commission:
              description: commission defines the commission parameters.
              type: object
              properties:
                commission_rates:
                  description: >-
                    commission_rates defines the initial commission rates to be
                    used for creating a validator.
                  type: object
                  properties:
                    rate:
                      type: string
                      description: >-
                        rate is the commission rate charged to delegators, as a
                        fraction.
                    max_rate:
                      type: string
                      description: >-
                        max_rate defines the maximum commission rate which
                        validator can ever charge, as a fraction.
                    max_change_rate:
                      type: string
                      description: >-
                        max_change_rate defines the maximum daily increase of
                        the validator commission, as a fraction.
                update_time:
                  type: string
                  format: date-time
                  description: >-
                    update_time is the last time the commission rate was
                    changed.
            min_self_delegation:
              type: string
              description: >-
                min_self_delegation is the validator's self declared minimum
                self delegation.


                Since: cosmos-sdk 0.46
          description: >-
            Validator defines a validator, together with the total amount of the

            Validator's bond shares and their exchange rate to coins. Slashing
            results in

            a decrease in the exchange rate, allowing correct calculation of
            future

            undelegations without iterating over delegators. When coins are
            delegated to

            this validator, the validator is credited with a delegation whose
            number of

            bond shares is based on the amount of coins delegated divided by the
            current

            exchange rate. Voting power can be calculated as total bonded shares

            multiplied by exchange rate.
        description: validators contains all the queried validators.
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    title: >-
      QueryValidatorsResponse is response type for the Query/Validators RPC
      method
  cosmos.staking.v1beta1.Redelegation:
    type: object
    properties:
      delegator_address:
        type: string
        description: delegator_address is the bech32-encoded address of the delegator.
      validator_src_address:
        type: string
        description: >-
          validator_src_address is the validator redelegation source operator
          address.
      validator_dst_address:
        type: string
        description: >-
          validator_dst_address is the validator redelegation destination
          operator address.
      entries:
        type: array
        items:
          type: object
          properties:
            creation_height:
              type: string
              format: int64
              description: >-
                creation_height  defines the height which the redelegation took
                place.
            completion_time:
              type: string
              format: date-time
              description: >-
                completion_time defines the unix time for redelegation
                completion.
            initial_balance:
              type: string
              description: >-
                initial_balance defines the initial balance when redelegation
                started.
            shares_dst:
              type: string
              description: >-
                shares_dst is the amount of destination-validator shares created
                by redelegation.
          description: >-
            RedelegationEntry defines a redelegation object with relevant
            metadata.
        description: entries are the redelegation entries.
    description: >-
      Redelegation contains the list of a particular delegator's redelegating
      bonds

      from a particular source validator to a particular destination validator.
  cosmos.staking.v1beta1.RedelegationEntry:
    type: object
    properties:
      creation_height:
        type: string
        format: int64
        description: creation_height  defines the height which the redelegation took place.
      completion_time:
        type: string
        format: date-time
        description: completion_time defines the unix time for redelegation completion.
      initial_balance:
        type: string
        description: initial_balance defines the initial balance when redelegation started.
      shares_dst:
        type: string
        description: >-
          shares_dst is the amount of destination-validator shares created by
          redelegation.
    description: RedelegationEntry defines a redelegation object with relevant metadata.
  cosmos.staking.v1beta1.RedelegationEntryResponse:
    type: object
    properties:
      redelegation_entry:
        type: object
        properties:
          creation_height:
            type: string
            format: int64
            description: >-
              creation_height  defines the height which the redelegation took
              place.
          completion_time:
            type: string
            format: date-time
            description: completion_time defines the unix time for redelegation completion.
          initial_balance:
            type: string
            description: >-
              initial_balance defines the initial balance when redelegation
              started.
          shares_dst:
            type: string
            description: >-
              shares_dst is the amount of destination-validator shares created
              by redelegation.
        description: >-
          RedelegationEntry defines a redelegation object with relevant
          metadata.
      balance:
        type: string
    description: >-
      RedelegationEntryResponse is equivalent to a RedelegationEntry except that
      it

      contains a balance in addition to shares which is more suitable for client

      responses.
  cosmos.staking.v1beta1.RedelegationResponse:
    type: object
    properties:
      redelegation:
        type: object
        properties:
          delegator_address:
            type: string
            description: delegator_address is the bech32-encoded address of the delegator.
          validator_src_address:
            type: string
            description: >-
              validator_src_address is the validator redelegation source
              operator address.
          validator_dst_address:
            type: string
            description: >-
              validator_dst_address is the validator redelegation destination
              operator address.
          entries:
            type: array
            items:
              type: object
              properties:
                creation_height:
                  type: string
                  format: int64
                  description: >-
                    creation_height  defines the height which the redelegation
                    took place.
                completion_time:
                  type: string
                  format: date-time
                  description: >-
                    completion_time defines the unix time for redelegation
                    completion.
                initial_balance:
                  type: string
                  description: >-
                    initial_balance defines the initial balance when
                    redelegation started.
                shares_dst:
                  type: string
                  description: >-
                    shares_dst is the amount of destination-validator shares
                    created by redelegation.
              description: >-
                RedelegationEntry defines a redelegation object with relevant
                metadata.
            description: entries are the redelegation entries.
        description: >-
          Redelegation contains the list of a particular delegator's
          redelegating bonds

          from a particular source validator to a particular destination
          validator.
      entries:
        type: array
        items:
          type: object
          properties:
            redelegation_entry:
              type: object
              properties:
                creation_height:
                  type: string
                  format: int64
                  description: >-
                    creation_height  defines the height which the redelegation
                    took place.
                completion_time:
                  type: string
                  format: date-time
                  description: >-
                    completion_time defines the unix time for redelegation
                    completion.
                initial_balance:
                  type: string
                  description: >-
                    initial_balance defines the initial balance when
                    redelegation started.
                shares_dst:
                  type: string
                  description: >-
                    shares_dst is the amount of destination-validator shares
                    created by redelegation.
              description: >-
                RedelegationEntry defines a redelegation object with relevant
                metadata.
            balance:
              type: string
          description: >-
            RedelegationEntryResponse is equivalent to a RedelegationEntry
            except that it

            contains a balance in addition to shares which is more suitable for
            client

            responses.
    description: >-
      RedelegationResponse is equivalent to a Redelegation except that its
      entries

      contain a balance in addition to shares which is more suitable for client

      responses.
  cosmos.staking.v1beta1.UnbondingDelegation:
    type: object
    properties:
      delegator_address:
        type: string
        description: delegator_address is the bech32-encoded address of the delegator.
      validator_address:
        type: string
        description: validator_address is the bech32-encoded address of the validator.
      entries:
        type: array
        items:
          type: object
          properties:
            creation_height:
              type: string
              format: int64
              description: creation_height is the height which the unbonding took place.
            completion_time:
              type: string
              format: date-time
              description: completion_time is the unix time for unbonding completion.
            initial_balance:
              type: string
              description: >-
                initial_balance defines the tokens initially scheduled to
                receive at completion.
            balance:
              type: string
              description: balance defines the tokens to receive at completion.
          description: >-
            UnbondingDelegationEntry defines an unbonding object with relevant
            metadata.
        description: entries are the unbonding delegation entries.
    description: |-
      UnbondingDelegation stores all of a single delegator's unbonding bonds
      for a single validator in an time-ordered list.
  cosmos.staking.v1beta1.UnbondingDelegationEntry:
    type: object
    properties:
      creation_height:
        type: string
        format: int64
        description: creation_height is the height which the unbonding took place.
      completion_time:
        type: string
        format: date-time
        description: completion_time is the unix time for unbonding completion.
      initial_balance:
        type: string
        description: >-
          initial_balance defines the tokens initially scheduled to receive at
          completion.
      balance:
        type: string
        description: balance defines the tokens to receive at completion.
    description: >-
      UnbondingDelegationEntry defines an unbonding object with relevant
      metadata.
  cosmos.staking.v1beta1.Validator:
    type: object
    properties:
      operator_address:
        type: string
        description: >-
          operator_address defines the address of the validator's operator; bech
          encoded in JSON.
      consensus_pubkey:
        type: object
        properties:
          type_url:
            type: string
            description: >-
              A URL/resource name that uniquely identifies the type of the
              serialized

              protocol buffer message. This string must contain at least

              one "/" character. The last segment of the URL's path must
              represent

              the fully qualified name of the type (as in

              `path/google.protobuf.Duration`). The name should be in a
              canonical form

              (e.g., leading "." is not accepted).


              In practice, teams usually precompile into the binary all types
              that they

              expect it to use in the context of Any. However, for URLs which
              use the

              scheme `http`, `https`, or no scheme, one can optionally set up a
              type

              server that maps type URLs to message definitions as follows:


              * If no scheme is provided, `https` is assumed.

              * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                value in binary format, or produce an error.
              * Applications are allowed to cache lookup results based on the
                URL, or have them precompiled into a binary to avoid any
                lookup. Therefore, binary compatibility needs to be preserved
                on changes to types. (Use versioned type names to manage
                breaking changes.)

              Note: this functionality is not currently available in the
              official

              protobuf release, and it is not used for type URLs beginning with

              type.googleapis.com.


              Schemes other than `http`, `https` (or the empty scheme) might be

              used with implementation specific semantics.
          value:
            type: string
            format: byte
            description: >-
              Must be a valid serialized protocol buffer of the above specified
              type.
        description: >-
          `Any` contains an arbitrary serialized protocol buffer message along
          with a

          URL that describes the type of the serialized message.


          Protobuf library provides support to pack/unpack Any values in the
          form

          of utility functions or additional generated methods of the Any type.


          Example 1: Pack and unpack a message in C++.

              Foo foo = ...;
              Any any;
              any.PackFrom(foo);
              ...
              if (any.UnpackTo(&foo)) {
                ...
              }

          Example 2: Pack and unpack a message in Java.

              Foo foo = ...;
              Any any = Any.pack(foo);
              ...
              if (any.is(Foo.class)) {
                foo = any.unpack(Foo.class);
              }

           Example 3: Pack and unpack a message in Python.

              foo = Foo(...)
              any = Any()
              any.Pack(foo)
              ...
              if any.Is(Foo.DESCRIPTOR):
                any.Unpack(foo)
                ...

           Example 4: Pack and unpack a message in Go

               foo := &pb.Foo{...}
               any, err := ptypes.MarshalAny(foo)
               ...
               foo := &pb.Foo{}
               if err := ptypes.UnmarshalAny(any, foo); err != nil {
                 ...
               }

          The pack methods provided by protobuf library will by default use

          'type.googleapis.com/full.type.name' as the type URL and the unpack

          methods only use the fully qualified type name after the last '/'

          in the type URL, for example "foo.bar.com/x/y.z" will yield type

          name "y.z".



          JSON

          ====

          The JSON representation of an `Any` value uses the regular

          representation of the deserialized, embedded message, with an

          additional field `@type` which contains the type URL. Example:

              package google.profile;
              message Person {
                string first_name = 1;
                string last_name = 2;
              }

              {
                "@type": "type.googleapis.com/google.profile.Person",
                "firstName": <string>,
                "lastName": <string>
              }

          If the embedded message type is well-known and has a custom JSON

          representation, that representation will be embedded adding a field

          `value` which holds the custom JSON in addition to the `@type`

          field. Example (for message [google.protobuf.Duration][]):

              {
                "@type": "type.googleapis.com/google.protobuf.Duration",
                "value": "1.212s"
              }
      jailed:
        type: boolean
        description: >-
          jailed defined whether the validator has been jailed from bonded
          status or not.
      status:
        description: status is the validator status (bonded/unbonding/unbonded).
        type: string
        enum:
          - BOND_STATUS_UNSPECIFIED
          - BOND_STATUS_UNBONDED
          - BOND_STATUS_UNBONDING
          - BOND_STATUS_BONDED
        default: BOND_STATUS_UNSPECIFIED
      tokens:
        type: string
        description: tokens define the delegated tokens (incl. self-delegation).
      delegator_shares:
        type: string
        description: >-
          delegator_shares defines total shares issued to a validator's
          delegators.
      description:
        description: description defines the description terms for the validator.
        type: object
        properties:
          moniker:
            type: string
            description: moniker defines a human-readable name for the validator.
          identity:
            type: string
            description: >-
              identity defines an optional identity signature (ex. UPort or
              Keybase).
          website:
            type: string
            description: website defines an optional website link.
          security_contact:
            type: string
            description: security_contact defines an optional email for security contact.
          details:
            type: string
            description: details define other optional details.
      unbonding_height:
        type: string
        format: int64
        description: >-
          unbonding_height defines, if unbonding, the height at which this
          validator has begun unbonding.
      unbonding_time:
        type: string
        format: date-time
        description: >-
          unbonding_time defines, if unbonding, the min time for the validator
          to complete unbonding.
      commission:
        description: commission defines the commission parameters.
        type: object
        properties:
          commission_rates:
            description: >-
              commission_rates defines the initial commission rates to be used
              for creating a validator.
            type: object
            properties:
              rate:
                type: string
                description: >-
                  rate is the commission rate charged to delegators, as a
                  fraction.
              max_rate:
                type: string
                description: >-
                  max_rate defines the maximum commission rate which validator
                  can ever charge, as a fraction.
              max_change_rate:
                type: string
                description: >-
                  max_change_rate defines the maximum daily increase of the
                  validator commission, as a fraction.
          update_time:
            type: string
            format: date-time
            description: update_time is the last time the commission rate was changed.
      min_self_delegation:
        type: string
        description: >-
          min_self_delegation is the validator's self declared minimum self
          delegation.


          Since: cosmos-sdk 0.46
    description: >-
      Validator defines a validator, together with the total amount of the

      Validator's bond shares and their exchange rate to coins. Slashing results
      in

      a decrease in the exchange rate, allowing correct calculation of future

      undelegations without iterating over delegators. When coins are delegated
      to

      this validator, the validator is credited with a delegation whose number
      of

      bond shares is based on the amount of coins delegated divided by the
      current

      exchange rate. Voting power can be calculated as total bonded shares

      multiplied by exchange rate.
  cosmos.base.abci.v1beta1.ABCIMessageLog:
    type: object
    properties:
      msg_index:
        type: integer
        format: int64
      log:
        type: string
      events:
        type: array
        items:
          type: object
          properties:
            type:
              type: string
            attributes:
              type: array
              items:
                type: object
                properties:
                  key:
                    type: string
                  value:
                    type: string
                description: >-
                  Attribute defines an attribute wrapper where the key and value
                  are

                  strings instead of raw bytes.
          description: |-
            StringEvent defines en Event object wrapper where all the attributes
            contain key/value pairs that are strings instead of raw bytes.
        description: |-
          Events contains a slice of Event objects that were emitted during some
          execution.
    description: >-
      ABCIMessageLog defines a structure containing an indexed tx ABCI message
      log.
  cosmos.base.abci.v1beta1.Attribute:
    type: object
    properties:
      key:
        type: string
      value:
        type: string
    description: |-
      Attribute defines an attribute wrapper where the key and value are
      strings instead of raw bytes.
  cosmos.base.abci.v1beta1.GasInfo:
    type: object
    properties:
      gas_wanted:
        type: string
        format: uint64
        description: GasWanted is the maximum units of work we allow this tx to perform.
      gas_used:
        type: string
        format: uint64
        description: GasUsed is the amount of gas actually consumed.
    description: GasInfo defines tx execution gas context.
  cosmos.base.abci.v1beta1.Result:
    type: object
    properties:
      data:
        type: string
        format: byte
        description: >-
          Data is any data returned from message or handler execution. It MUST
          be

          length prefixed in order to separate data from multiple message
          executions.

          Deprecated. This field is still populated, but prefer msg_response
          instead

          because it also contains the Msg response typeURL.
      log:
        type: string
        description: Log contains the log information from message or handler execution.
      events:
        type: array
        items:
          type: object
          properties:
            type:
              type: string
            attributes:
              type: array
              items:
                type: object
                properties:
                  key:
                    type: string
                    format: byte
                  value:
                    type: string
                    format: byte
                  index:
                    type: boolean
                description: >-
                  EventAttribute is a single key-value pair, associated with an
                  event.
          description: >-
            Event allows application developers to attach additional information
            to

            ResponseBeginBlock, ResponseEndBlock, ResponseCheckTx and
            ResponseDeliverTx.

            Later, transactions may be queried using these events.
        description: >-
          Events contains a slice of Event objects that were emitted during
          message

          or handler execution.
      msg_responses:
        type: array
        items:
          type: object
          properties:
            type_url:
              type: string
              description: >-
                A URL/resource name that uniquely identifies the type of the
                serialized

                protocol buffer message. This string must contain at least

                one "/" character. The last segment of the URL's path must
                represent

                the fully qualified name of the type (as in

                `path/google.protobuf.Duration`). The name should be in a
                canonical form

                (e.g., leading "." is not accepted).


                In practice, teams usually precompile into the binary all types
                that they

                expect it to use in the context of Any. However, for URLs which
                use the

                scheme `http`, `https`, or no scheme, one can optionally set up
                a type

                server that maps type URLs to message definitions as follows:


                * If no scheme is provided, `https` is assumed.

                * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                  value in binary format, or produce an error.
                * Applications are allowed to cache lookup results based on the
                  URL, or have them precompiled into a binary to avoid any
                  lookup. Therefore, binary compatibility needs to be preserved
                  on changes to types. (Use versioned type names to manage
                  breaking changes.)

                Note: this functionality is not currently available in the
                official

                protobuf release, and it is not used for type URLs beginning
                with

                type.googleapis.com.


                Schemes other than `http`, `https` (or the empty scheme) might
                be

                used with implementation specific semantics.
            value:
              type: string
              format: byte
              description: >-
                Must be a valid serialized protocol buffer of the above
                specified type.
          description: >-
            `Any` contains an arbitrary serialized protocol buffer message along
            with a

            URL that describes the type of the serialized message.


            Protobuf library provides support to pack/unpack Any values in the
            form

            of utility functions or additional generated methods of the Any
            type.


            Example 1: Pack and unpack a message in C++.

                Foo foo = ...;
                Any any;
                any.PackFrom(foo);
                ...
                if (any.UnpackTo(&foo)) {
                  ...
                }

            Example 2: Pack and unpack a message in Java.

                Foo foo = ...;
                Any any = Any.pack(foo);
                ...
                if (any.is(Foo.class)) {
                  foo = any.unpack(Foo.class);
                }

             Example 3: Pack and unpack a message in Python.

                foo = Foo(...)
                any = Any()
                any.Pack(foo)
                ...
                if any.Is(Foo.DESCRIPTOR):
                  any.Unpack(foo)
                  ...

             Example 4: Pack and unpack a message in Go

                 foo := &pb.Foo{...}
                 any, err := ptypes.MarshalAny(foo)
                 ...
                 foo := &pb.Foo{}
                 if err := ptypes.UnmarshalAny(any, foo); err != nil {
                   ...
                 }

            The pack methods provided by protobuf library will by default use

            'type.googleapis.com/full.type.name' as the type URL and the unpack

            methods only use the fully qualified type name after the last '/'

            in the type URL, for example "foo.bar.com/x/y.z" will yield type

            name "y.z".



            JSON

            ====

            The JSON representation of an `Any` value uses the regular

            representation of the deserialized, embedded message, with an

            additional field `@type` which contains the type URL. Example:

                package google.profile;
                message Person {
                  string first_name = 1;
                  string last_name = 2;
                }

                {
                  "@type": "type.googleapis.com/google.profile.Person",
                  "firstName": <string>,
                  "lastName": <string>
                }

            If the embedded message type is well-known and has a custom JSON

            representation, that representation will be embedded adding a field

            `value` which holds the custom JSON in addition to the `@type`

            field. Example (for message [google.protobuf.Duration][]):

                {
                  "@type": "type.googleapis.com/google.protobuf.Duration",
                  "value": "1.212s"
                }
        description: |-
          msg_responses contains the Msg handler responses type packed in Anys.

          Since: cosmos-sdk 0.46
    description: Result is the union of ResponseFormat and ResponseCheckTx.
  cosmos.base.abci.v1beta1.StringEvent:
    type: object
    properties:
      type:
        type: string
      attributes:
        type: array
        items:
          type: object
          properties:
            key:
              type: string
            value:
              type: string
          description: |-
            Attribute defines an attribute wrapper where the key and value are
            strings instead of raw bytes.
    description: |-
      StringEvent defines en Event object wrapper where all the attributes
      contain key/value pairs that are strings instead of raw bytes.
  cosmos.base.abci.v1beta1.TxResponse:
    type: object
    properties:
      height:
        type: string
        format: int64
        title: The block height
      txhash:
        type: string
        description: The transaction hash.
      codespace:
        type: string
        title: Namespace for the Code
      code:
        type: integer
        format: int64
        description: Response code.
      data:
        type: string
        description: Result bytes, if any.
      raw_log:
        type: string
        description: |-
          The output of the application's logger (raw string). May be
          non-deterministic.
      logs:
        type: array
        items:
          type: object
          properties:
            msg_index:
              type: integer
              format: int64
            log:
              type: string
            events:
              type: array
              items:
                type: object
                properties:
                  type:
                    type: string
                  attributes:
                    type: array
                    items:
                      type: object
                      properties:
                        key:
                          type: string
                        value:
                          type: string
                      description: >-
                        Attribute defines an attribute wrapper where the key and
                        value are

                        strings instead of raw bytes.
                description: >-
                  StringEvent defines en Event object wrapper where all the
                  attributes

                  contain key/value pairs that are strings instead of raw bytes.
              description: >-
                Events contains a slice of Event objects that were emitted
                during some

                execution.
          description: >-
            ABCIMessageLog defines a structure containing an indexed tx ABCI
            message log.
        description: >-
          The output of the application's logger (typed). May be
          non-deterministic.
      info:
        type: string
        description: Additional information. May be non-deterministic.
      gas_wanted:
        type: string
        format: int64
        description: Amount of gas requested for transaction.
      gas_used:
        type: string
        format: int64
        description: Amount of gas consumed by transaction.
      tx:
        type: object
        properties:
          type_url:
            type: string
            description: >-
              A URL/resource name that uniquely identifies the type of the
              serialized

              protocol buffer message. This string must contain at least

              one "/" character. The last segment of the URL's path must
              represent

              the fully qualified name of the type (as in

              `path/google.protobuf.Duration`). The name should be in a
              canonical form

              (e.g., leading "." is not accepted).


              In practice, teams usually precompile into the binary all types
              that they

              expect it to use in the context of Any. However, for URLs which
              use the

              scheme `http`, `https`, or no scheme, one can optionally set up a
              type

              server that maps type URLs to message definitions as follows:


              * If no scheme is provided, `https` is assumed.

              * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                value in binary format, or produce an error.
              * Applications are allowed to cache lookup results based on the
                URL, or have them precompiled into a binary to avoid any
                lookup. Therefore, binary compatibility needs to be preserved
                on changes to types. (Use versioned type names to manage
                breaking changes.)

              Note: this functionality is not currently available in the
              official

              protobuf release, and it is not used for type URLs beginning with

              type.googleapis.com.


              Schemes other than `http`, `https` (or the empty scheme) might be

              used with implementation specific semantics.
          value:
            type: string
            format: byte
            description: >-
              Must be a valid serialized protocol buffer of the above specified
              type.
        description: >-
          `Any` contains an arbitrary serialized protocol buffer message along
          with a

          URL that describes the type of the serialized message.


          Protobuf library provides support to pack/unpack Any values in the
          form

          of utility functions or additional generated methods of the Any type.


          Example 1: Pack and unpack a message in C++.

              Foo foo = ...;
              Any any;
              any.PackFrom(foo);
              ...
              if (any.UnpackTo(&foo)) {
                ...
              }

          Example 2: Pack and unpack a message in Java.

              Foo foo = ...;
              Any any = Any.pack(foo);
              ...
              if (any.is(Foo.class)) {
                foo = any.unpack(Foo.class);
              }

           Example 3: Pack and unpack a message in Python.

              foo = Foo(...)
              any = Any()
              any.Pack(foo)
              ...
              if any.Is(Foo.DESCRIPTOR):
                any.Unpack(foo)
                ...

           Example 4: Pack and unpack a message in Go

               foo := &pb.Foo{...}
               any, err := ptypes.MarshalAny(foo)
               ...
               foo := &pb.Foo{}
               if err := ptypes.UnmarshalAny(any, foo); err != nil {
                 ...
               }

          The pack methods provided by protobuf library will by default use

          'type.googleapis.com/full.type.name' as the type URL and the unpack

          methods only use the fully qualified type name after the last '/'

          in the type URL, for example "foo.bar.com/x/y.z" will yield type

          name "y.z".



          JSON

          ====

          The JSON representation of an `Any` value uses the regular

          representation of the deserialized, embedded message, with an

          additional field `@type` which contains the type URL. Example:

              package google.profile;
              message Person {
                string first_name = 1;
                string last_name = 2;
              }

              {
                "@type": "type.googleapis.com/google.profile.Person",
                "firstName": <string>,
                "lastName": <string>
              }

          If the embedded message type is well-known and has a custom JSON

          representation, that representation will be embedded adding a field

          `value` which holds the custom JSON in addition to the `@type`

          field. Example (for message [google.protobuf.Duration][]):

              {
                "@type": "type.googleapis.com/google.protobuf.Duration",
                "value": "1.212s"
              }
      timestamp:
        type: string
        description: >-
          Time of the previous block. For heights > 1, it's the weighted median
          of

          the timestamps of the valid votes in the block.LastCommit. For height
          == 1,

          it's genesis time.
      events:
        type: array
        items:
          type: object
          properties:
            type:
              type: string
            attributes:
              type: array
              items:
                type: object
                properties:
                  key:
                    type: string
                    format: byte
                  value:
                    type: string
                    format: byte
                  index:
                    type: boolean
                description: >-
                  EventAttribute is a single key-value pair, associated with an
                  event.
          description: >-
            Event allows application developers to attach additional information
            to

            ResponseBeginBlock, ResponseEndBlock, ResponseCheckTx and
            ResponseDeliverTx.

            Later, transactions may be queried using these events.
        description: >-
          Events defines all the events emitted by processing a transaction.
          Note,

          these events include those emitted by processing all the messages and
          those

          emitted from the ante. Whereas Logs contains the events, with

          additional metadata, emitted only by processing the messages.


          Since: cosmos-sdk 0.42.11, 0.44.5, 0.45
    description: >-
      TxResponse defines a structure containing relevant tx data and metadata.
      The

      tags are stringified and the log is JSON decoded.
  cosmos.crypto.multisig.v1beta1.CompactBitArray:
    type: object
    properties:
      extra_bits_stored:
        type: integer
        format: int64
      elems:
        type: string
        format: byte
    description: |-
      CompactBitArray is an implementation of a space efficient bit array.
      This is used to ensure that the encoded data takes up a minimal amount of
      space after proto encoding.
      This is not thread safe, and is not intended for concurrent usage.
  cosmos.tx.signing.v1beta1.SignMode:
    type: string
    enum:
      - SIGN_MODE_UNSPECIFIED
      - SIGN_MODE_DIRECT
      - SIGN_MODE_TEXTUAL
      - SIGN_MODE_DIRECT_AUX
      - SIGN_MODE_LEGACY_AMINO_JSON
      - SIGN_MODE_EIP_191
    default: SIGN_MODE_UNSPECIFIED
    description: |-
      SignMode represents a signing mode with its own security guarantees.

      This enum should be considered a registry of all known sign modes
      in the Cosmos ecosystem. Apps are not expected to support all known
      sign modes. Apps that would like to support custom  sign modes are
      encouraged to open a small PR against this file to add a new case
      to this SignMode enum describing their sign mode so that different
      apps have a consistent version of this enum.

       - SIGN_MODE_UNSPECIFIED: SIGN_MODE_UNSPECIFIED specifies an unknown signing mode and will be
      rejected.
       - SIGN_MODE_DIRECT: SIGN_MODE_DIRECT specifies a signing mode which uses SignDoc and is
      verified with raw bytes from Tx.
       - SIGN_MODE_TEXTUAL: SIGN_MODE_TEXTUAL is a future signing mode that will verify some
      human-readable textual representation on top of the binary representation
      from SIGN_MODE_DIRECT. It is currently not supported.
       - SIGN_MODE_DIRECT_AUX: SIGN_MODE_DIRECT_AUX specifies a signing mode which uses
      SignDocDirectAux. As opposed to SIGN_MODE_DIRECT, this sign mode does not
      require signers signing over other signers' `signer_info`. It also allows
      for adding Tips in transactions.

      Since: cosmos-sdk 0.46
       - SIGN_MODE_LEGACY_AMINO_JSON: SIGN_MODE_LEGACY_AMINO_JSON is a backwards compatibility mode which uses
      Amino JSON and will be removed in the future.
       - SIGN_MODE_EIP_191: SIGN_MODE_EIP_191 specifies the sign mode for EIP 191 signing on the Cosmos
      SDK. Ref: https://eips.ethereum.org/EIPS/eip-191

      Currently, SIGN_MODE_EIP_191 is registered as a SignMode enum variant,
      but is not implemented on the SDK by default. To enable EIP-191, you need
      to pass a custom `TxConfig` that has an implementation of
      `SignModeHandler` for EIP-191. The SDK may decide to fully support
      EIP-191 in the future.

      Since: cosmos-sdk 0.45.2
  cosmos.tx.v1beta1.AuthInfo:
    type: object
    properties:
      signer_infos:
        type: array
        items:
          $ref: '#/definitions/cosmos.tx.v1beta1.SignerInfo'
        description: >-
          signer_infos defines the signing modes for the required signers. The
          number

          and order of elements must match the required signers from TxBody's

          messages. The first element is the primary signer and the one which
          pays

          the fee.
      fee:
        description: >-
          Fee is the fee and gas limit for the transaction. The first signer is
          the

          primary signer and the one which pays the fee. The fee can be
          calculated

          based on the cost of evaluating the body and doing signature
          verification

          of the signers. This can be estimated via simulation.
        type: object
        properties:
          amount:
            type: array
            items:
              type: object
              properties:
                denom:
                  type: string
                amount:
                  type: string
              description: >-
                Coin defines a token with a denomination and an amount.


                NOTE: The amount field is an Int which implements the custom
                method

                signatures required by gogoproto.
            title: amount is the amount of coins to be paid as a fee
          gas_limit:
            type: string
            format: uint64
            title: >-
              gas_limit is the maximum gas that can be used in transaction
              processing

              before an out of gas error occurs
          payer:
            type: string
            description: >-
              if unset, the first signer is responsible for paying the fees. If
              set, the specified account must pay the fees.

              the payer must be a tx signer (and thus have signed this field in
              AuthInfo).

              setting this field does *not* change the ordering of required
              signers for the transaction.
          granter:
            type: string
            title: >-
              if set, the fee payer (either the first signer or the value of the
              payer field) requests that a fee grant be used

              to pay fees instead of the fee payer's own balance. If an
              appropriate fee grant does not exist or the chain does

              not support fee grants, this will fail
      tip:
        description: >-
          Tip is the optional tip used for transactions fees paid in another
          denom.


          This field is ignored if the chain didn't enable tips, i.e. didn't add
          the

          `TipDecorator` in its posthandler.


          Since: cosmos-sdk 0.46
        type: object
        properties:
          amount:
            type: array
            items:
              type: object
              properties:
                denom:
                  type: string
                amount:
                  type: string
              description: >-
                Coin defines a token with a denomination and an amount.


                NOTE: The amount field is an Int which implements the custom
                method

                signatures required by gogoproto.
            title: amount is the amount of the tip
          tipper:
            type: string
            title: tipper is the address of the account paying for the tip
    description: |-
      AuthInfo describes the fee and signer modes that are used to sign a
      transaction.
  cosmos.tx.v1beta1.BroadcastMode:
    type: string
    enum:
      - BROADCAST_MODE_UNSPECIFIED
      - BROADCAST_MODE_BLOCK
      - BROADCAST_MODE_SYNC
      - BROADCAST_MODE_ASYNC
    default: BROADCAST_MODE_UNSPECIFIED
    description: >-
      BroadcastMode specifies the broadcast mode for the TxService.Broadcast RPC
      method.

       - BROADCAST_MODE_UNSPECIFIED: zero-value for mode ordering
       - BROADCAST_MODE_BLOCK: BROADCAST_MODE_BLOCK defines a tx broadcasting mode where the client waits for
      the tx to be committed in a block.
       - BROADCAST_MODE_SYNC: BROADCAST_MODE_SYNC defines a tx broadcasting mode where the client waits for
      a CheckTx execution response only.
       - BROADCAST_MODE_ASYNC: BROADCAST_MODE_ASYNC defines a tx broadcasting mode where the client returns
      immediately.
  cosmos.tx.v1beta1.BroadcastTxRequest:
    type: object
    properties:
      tx_bytes:
        type: string
        format: byte
        description: tx_bytes is the raw transaction.
      mode:
        type: string
        enum:
          - BROADCAST_MODE_UNSPECIFIED
          - BROADCAST_MODE_BLOCK
          - BROADCAST_MODE_SYNC
          - BROADCAST_MODE_ASYNC
        default: BROADCAST_MODE_UNSPECIFIED
        description: >-
          BroadcastMode specifies the broadcast mode for the TxService.Broadcast
          RPC method.

           - BROADCAST_MODE_UNSPECIFIED: zero-value for mode ordering
           - BROADCAST_MODE_BLOCK: BROADCAST_MODE_BLOCK defines a tx broadcasting mode where the client waits for
          the tx to be committed in a block.
           - BROADCAST_MODE_SYNC: BROADCAST_MODE_SYNC defines a tx broadcasting mode where the client waits for
          a CheckTx execution response only.
           - BROADCAST_MODE_ASYNC: BROADCAST_MODE_ASYNC defines a tx broadcasting mode where the client returns
          immediately.
    description: |-
      BroadcastTxRequest is the request type for the Service.BroadcastTxRequest
      RPC method.
  cosmos.tx.v1beta1.BroadcastTxResponse:
    type: object
    properties:
      tx_response:
        type: object
        properties:
          height:
            type: string
            format: int64
            title: The block height
          txhash:
            type: string
            description: The transaction hash.
          codespace:
            type: string
            title: Namespace for the Code
          code:
            type: integer
            format: int64
            description: Response code.
          data:
            type: string
            description: Result bytes, if any.
          raw_log:
            type: string
            description: |-
              The output of the application's logger (raw string). May be
              non-deterministic.
          logs:
            type: array
            items:
              type: object
              properties:
                msg_index:
                  type: integer
                  format: int64
                log:
                  type: string
                events:
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        type: string
                      attributes:
                        type: array
                        items:
                          type: object
                          properties:
                            key:
                              type: string
                            value:
                              type: string
                          description: >-
                            Attribute defines an attribute wrapper where the key
                            and value are

                            strings instead of raw bytes.
                    description: >-
                      StringEvent defines en Event object wrapper where all the
                      attributes

                      contain key/value pairs that are strings instead of raw
                      bytes.
                  description: >-
                    Events contains a slice of Event objects that were emitted
                    during some

                    execution.
              description: >-
                ABCIMessageLog defines a structure containing an indexed tx ABCI
                message log.
            description: >-
              The output of the application's logger (typed). May be
              non-deterministic.
          info:
            type: string
            description: Additional information. May be non-deterministic.
          gas_wanted:
            type: string
            format: int64
            description: Amount of gas requested for transaction.
          gas_used:
            type: string
            format: int64
            description: Amount of gas consumed by transaction.
          tx:
            type: object
            properties:
              type_url:
                type: string
                description: >-
                  A URL/resource name that uniquely identifies the type of the
                  serialized

                  protocol buffer message. This string must contain at least

                  one "/" character. The last segment of the URL's path must
                  represent

                  the fully qualified name of the type (as in

                  `path/google.protobuf.Duration`). The name should be in a
                  canonical form

                  (e.g., leading "." is not accepted).


                  In practice, teams usually precompile into the binary all
                  types that they

                  expect it to use in the context of Any. However, for URLs
                  which use the

                  scheme `http`, `https`, or no scheme, one can optionally set
                  up a type

                  server that maps type URLs to message definitions as follows:


                  * If no scheme is provided, `https` is assumed.

                  * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                    value in binary format, or produce an error.
                  * Applications are allowed to cache lookup results based on
                  the
                    URL, or have them precompiled into a binary to avoid any
                    lookup. Therefore, binary compatibility needs to be preserved
                    on changes to types. (Use versioned type names to manage
                    breaking changes.)

                  Note: this functionality is not currently available in the
                  official

                  protobuf release, and it is not used for type URLs beginning
                  with

                  type.googleapis.com.


                  Schemes other than `http`, `https` (or the empty scheme) might
                  be

                  used with implementation specific semantics.
              value:
                type: string
                format: byte
                description: >-
                  Must be a valid serialized protocol buffer of the above
                  specified type.
            description: >-
              `Any` contains an arbitrary serialized protocol buffer message
              along with a

              URL that describes the type of the serialized message.


              Protobuf library provides support to pack/unpack Any values in the
              form

              of utility functions or additional generated methods of the Any
              type.


              Example 1: Pack and unpack a message in C++.

                  Foo foo = ...;
                  Any any;
                  any.PackFrom(foo);
                  ...
                  if (any.UnpackTo(&foo)) {
                    ...
                  }

              Example 2: Pack and unpack a message in Java.

                  Foo foo = ...;
                  Any any = Any.pack(foo);
                  ...
                  if (any.is(Foo.class)) {
                    foo = any.unpack(Foo.class);
                  }

               Example 3: Pack and unpack a message in Python.

                  foo = Foo(...)
                  any = Any()
                  any.Pack(foo)
                  ...
                  if any.Is(Foo.DESCRIPTOR):
                    any.Unpack(foo)
                    ...

               Example 4: Pack and unpack a message in Go

                   foo := &pb.Foo{...}
                   any, err := ptypes.MarshalAny(foo)
                   ...
                   foo := &pb.Foo{}
                   if err := ptypes.UnmarshalAny(any, foo); err != nil {
                     ...
                   }

              The pack methods provided by protobuf library will by default use

              'type.googleapis.com/full.type.name' as the type URL and the
              unpack

              methods only use the fully qualified type name after the last '/'

              in the type URL, for example "foo.bar.com/x/y.z" will yield type

              name "y.z".



              JSON

              ====

              The JSON representation of an `Any` value uses the regular

              representation of the deserialized, embedded message, with an

              additional field `@type` which contains the type URL. Example:

                  package google.profile;
                  message Person {
                    string first_name = 1;
                    string last_name = 2;
                  }

                  {
                    "@type": "type.googleapis.com/google.profile.Person",
                    "firstName": <string>,
                    "lastName": <string>
                  }

              If the embedded message type is well-known and has a custom JSON

              representation, that representation will be embedded adding a
              field

              `value` which holds the custom JSON in addition to the `@type`

              field. Example (for message [google.protobuf.Duration][]):

                  {
                    "@type": "type.googleapis.com/google.protobuf.Duration",
                    "value": "1.212s"
                  }
          timestamp:
            type: string
            description: >-
              Time of the previous block. For heights > 1, it's the weighted
              median of

              the timestamps of the valid votes in the block.LastCommit. For
              height == 1,

              it's genesis time.
          events:
            type: array
            items:
              type: object
              properties:
                type:
                  type: string
                attributes:
                  type: array
                  items:
                    type: object
                    properties:
                      key:
                        type: string
                        format: byte
                      value:
                        type: string
                        format: byte
                      index:
                        type: boolean
                    description: >-
                      EventAttribute is a single key-value pair, associated with
                      an event.
              description: >-
                Event allows application developers to attach additional
                information to

                ResponseBeginBlock, ResponseEndBlock, ResponseCheckTx and
                ResponseDeliverTx.

                Later, transactions may be queried using these events.
            description: >-
              Events defines all the events emitted by processing a transaction.
              Note,

              these events include those emitted by processing all the messages
              and those

              emitted from the ante. Whereas Logs contains the events, with

              additional metadata, emitted only by processing the messages.


              Since: cosmos-sdk 0.42.11, 0.44.5, 0.45
        description: >-
          TxResponse defines a structure containing relevant tx data and
          metadata. The

          tags are stringified and the log is JSON decoded.
    description: |-
      BroadcastTxResponse is the response type for the
      Service.BroadcastTx method.
  cosmos.tx.v1beta1.Fee:
    type: object
    properties:
      amount:
        type: array
        items:
          type: object
          properties:
            denom:
              type: string
            amount:
              type: string
          description: |-
            Coin defines a token with a denomination and an amount.

            NOTE: The amount field is an Int which implements the custom method
            signatures required by gogoproto.
        title: amount is the amount of coins to be paid as a fee
      gas_limit:
        type: string
        format: uint64
        title: >-
          gas_limit is the maximum gas that can be used in transaction
          processing

          before an out of gas error occurs
      payer:
        type: string
        description: >-
          if unset, the first signer is responsible for paying the fees. If set,
          the specified account must pay the fees.

          the payer must be a tx signer (and thus have signed this field in
          AuthInfo).

          setting this field does *not* change the ordering of required signers
          for the transaction.
      granter:
        type: string
        title: >-
          if set, the fee payer (either the first signer or the value of the
          payer field) requests that a fee grant be used

          to pay fees instead of the fee payer's own balance. If an appropriate
          fee grant does not exist or the chain does

          not support fee grants, this will fail
    description: >-
      Fee includes the amount of coins paid in fees and the maximum

      gas to be used by the transaction. The ratio yields an effective
      "gasprice",

      which must be above some miminum to be accepted into the mempool.
  cosmos.tx.v1beta1.GetBlockWithTxsResponse:
    type: object
    properties:
      txs:
        type: array
        items:
          $ref: '#/definitions/cosmos.tx.v1beta1.Tx'
        description: txs are the transactions in the block.
      block_id:
        type: object
        properties:
          hash:
            type: string
            format: byte
          part_set_header:
            type: object
            properties:
              total:
                type: integer
                format: int64
              hash:
                type: string
                format: byte
            title: PartsetHeader
        title: BlockID
      block:
        type: object
        properties:
          header:
            type: object
            properties:
              version:
                title: basic block info
                type: object
                properties:
                  block:
                    type: string
                    format: uint64
                  app:
                    type: string
                    format: uint64
                description: >-
                  Consensus captures the consensus rules for processing a block
                  in the blockchain,

                  including all blockchain data structures and the rules of the
                  application's

                  state transition machine.
              chain_id:
                type: string
              height:
                type: string
                format: int64
              time:
                type: string
                format: date-time
              last_block_id:
                type: object
                properties:
                  hash:
                    type: string
                    format: byte
                  part_set_header:
                    type: object
                    properties:
                      total:
                        type: integer
                        format: int64
                      hash:
                        type: string
                        format: byte
                    title: PartsetHeader
                title: BlockID
              last_commit_hash:
                type: string
                format: byte
                title: hashes of block data
              data_hash:
                type: string
                format: byte
              validators_hash:
                type: string
                format: byte
                title: hashes from the app output from the prev block
              next_validators_hash:
                type: string
                format: byte
              consensus_hash:
                type: string
                format: byte
              app_hash:
                type: string
                format: byte
              last_results_hash:
                type: string
                format: byte
              evidence_hash:
                type: string
                format: byte
                title: consensus info
              proposer_address:
                type: string
                format: byte
            description: Header defines the structure of a Tendermint block header.
          data:
            type: object
            properties:
              txs:
                type: array
                items:
                  type: string
                  format: byte
                description: >-
                  Txs that will be applied by state @ block.Height+1.

                  NOTE: not all txs here are valid.  We're just agreeing on the
                  order first.

                  This means that block.AppHash does not include these txs.
            title: Data contains the set of transactions included in the block
          evidence:
            type: object
            properties:
              evidence:
                type: array
                items:
                  type: object
                  properties:
                    duplicate_vote_evidence:
                      type: object
                      properties:
                        vote_a:
                          type: object
                          properties:
                            type:
                              type: string
                              enum:
                                - SIGNED_MSG_TYPE_UNKNOWN
                                - SIGNED_MSG_TYPE_PREVOTE
                                - SIGNED_MSG_TYPE_PRECOMMIT
                                - SIGNED_MSG_TYPE_PROPOSAL
                              default: SIGNED_MSG_TYPE_UNKNOWN
                              description: >-
                                SignedMsgType is a type of signed message in the
                                consensus.

                                 - SIGNED_MSG_TYPE_PREVOTE: Votes
                                 - SIGNED_MSG_TYPE_PROPOSAL: Proposals
                            height:
                              type: string
                              format: int64
                            round:
                              type: integer
                              format: int32
                            block_id:
                              type: object
                              properties:
                                hash:
                                  type: string
                                  format: byte
                                part_set_header:
                                  type: object
                                  properties:
                                    total:
                                      type: integer
                                      format: int64
                                    hash:
                                      type: string
                                      format: byte
                                  title: PartsetHeader
                              title: BlockID
                            timestamp:
                              type: string
                              format: date-time
                            validator_address:
                              type: string
                              format: byte
                            validator_index:
                              type: integer
                              format: int32
                            signature:
                              type: string
                              format: byte
                          description: >-
                            Vote represents a prevote, precommit, or commit vote
                            from validators for

                            consensus.
                        vote_b:
                          type: object
                          properties:
                            type:
                              type: string
                              enum:
                                - SIGNED_MSG_TYPE_UNKNOWN
                                - SIGNED_MSG_TYPE_PREVOTE
                                - SIGNED_MSG_TYPE_PRECOMMIT
                                - SIGNED_MSG_TYPE_PROPOSAL
                              default: SIGNED_MSG_TYPE_UNKNOWN
                              description: >-
                                SignedMsgType is a type of signed message in the
                                consensus.

                                 - SIGNED_MSG_TYPE_PREVOTE: Votes
                                 - SIGNED_MSG_TYPE_PROPOSAL: Proposals
                            height:
                              type: string
                              format: int64
                            round:
                              type: integer
                              format: int32
                            block_id:
                              type: object
                              properties:
                                hash:
                                  type: string
                                  format: byte
                                part_set_header:
                                  type: object
                                  properties:
                                    total:
                                      type: integer
                                      format: int64
                                    hash:
                                      type: string
                                      format: byte
                                  title: PartsetHeader
                              title: BlockID
                            timestamp:
                              type: string
                              format: date-time
                            validator_address:
                              type: string
                              format: byte
                            validator_index:
                              type: integer
                              format: int32
                            signature:
                              type: string
                              format: byte
                          description: >-
                            Vote represents a prevote, precommit, or commit vote
                            from validators for

                            consensus.
                        total_voting_power:
                          type: string
                          format: int64
                        validator_power:
                          type: string
                          format: int64
                        timestamp:
                          type: string
                          format: date-time
                      description: >-
                        DuplicateVoteEvidence contains evidence of a validator
                        signed two conflicting votes.
                    light_client_attack_evidence:
                      type: object
                      properties:
                        conflicting_block:
                          type: object
                          properties:
                            signed_header:
                              type: object
                              properties:
                                header:
                                  type: object
                                  properties:
                                    version:
                                      title: basic block info
                                      type: object
                                      properties:
                                        block:
                                          type: string
                                          format: uint64
                                        app:
                                          type: string
                                          format: uint64
                                      description: >-
                                        Consensus captures the consensus rules
                                        for processing a block in the
                                        blockchain,

                                        including all blockchain data structures
                                        and the rules of the application's

                                        state transition machine.
                                    chain_id:
                                      type: string
                                    height:
                                      type: string
                                      format: int64
                                    time:
                                      type: string
                                      format: date-time
                                    last_block_id:
                                      type: object
                                      properties:
                                        hash:
                                          type: string
                                          format: byte
                                        part_set_header:
                                          type: object
                                          properties:
                                            total:
                                              type: integer
                                              format: int64
                                            hash:
                                              type: string
                                              format: byte
                                          title: PartsetHeader
                                      title: BlockID
                                    last_commit_hash:
                                      type: string
                                      format: byte
                                      title: hashes of block data
                                    data_hash:
                                      type: string
                                      format: byte
                                    validators_hash:
                                      type: string
                                      format: byte
                                      title: >-
                                        hashes from the app output from the prev
                                        block
                                    next_validators_hash:
                                      type: string
                                      format: byte
                                    consensus_hash:
                                      type: string
                                      format: byte
                                    app_hash:
                                      type: string
                                      format: byte
                                    last_results_hash:
                                      type: string
                                      format: byte
                                    evidence_hash:
                                      type: string
                                      format: byte
                                      title: consensus info
                                    proposer_address:
                                      type: string
                                      format: byte
                                  description: >-
                                    Header defines the structure of a Tendermint
                                    block header.
                                commit:
                                  type: object
                                  properties:
                                    height:
                                      type: string
                                      format: int64
                                    round:
                                      type: integer
                                      format: int32
                                    block_id:
                                      type: object
                                      properties:
                                        hash:
                                          type: string
                                          format: byte
                                        part_set_header:
                                          type: object
                                          properties:
                                            total:
                                              type: integer
                                              format: int64
                                            hash:
                                              type: string
                                              format: byte
                                          title: PartsetHeader
                                      title: BlockID
                                    signatures:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          block_id_flag:
                                            type: string
                                            enum:
                                              - BLOCK_ID_FLAG_UNKNOWN
                                              - BLOCK_ID_FLAG_ABSENT
                                              - BLOCK_ID_FLAG_COMMIT
                                              - BLOCK_ID_FLAG_NIL
                                            default: BLOCK_ID_FLAG_UNKNOWN
                                            title: >-
                                              BlockIdFlag indicates which BlcokID the
                                              signature is for
                                          validator_address:
                                            type: string
                                            format: byte
                                          timestamp:
                                            type: string
                                            format: date-time
                                          signature:
                                            type: string
                                            format: byte
                                        description: >-
                                          CommitSig is a part of the Vote included
                                          in a Commit.
                                  description: >-
                                    Commit contains the evidence that a block
                                    was committed by a set of validators.
                            validator_set:
                              type: object
                              properties:
                                validators:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      address:
                                        type: string
                                        format: byte
                                      pub_key:
                                        type: object
                                        properties:
                                          ed25519:
                                            type: string
                                            format: byte
                                          secp256k1:
                                            type: string
                                            format: byte
                                        title: >-
                                          PublicKey defines the keys available for
                                          use with Tendermint Validators
                                      voting_power:
                                        type: string
                                        format: int64
                                      proposer_priority:
                                        type: string
                                        format: int64
                                proposer:
                                  type: object
                                  properties:
                                    address:
                                      type: string
                                      format: byte
                                    pub_key:
                                      type: object
                                      properties:
                                        ed25519:
                                          type: string
                                          format: byte
                                        secp256k1:
                                          type: string
                                          format: byte
                                      title: >-
                                        PublicKey defines the keys available for
                                        use with Tendermint Validators
                                    voting_power:
                                      type: string
                                      format: int64
                                    proposer_priority:
                                      type: string
                                      format: int64
                                total_voting_power:
                                  type: string
                                  format: int64
                        common_height:
                          type: string
                          format: int64
                        byzantine_validators:
                          type: array
                          items:
                            type: object
                            properties:
                              address:
                                type: string
                                format: byte
                              pub_key:
                                type: object
                                properties:
                                  ed25519:
                                    type: string
                                    format: byte
                                  secp256k1:
                                    type: string
                                    format: byte
                                title: >-
                                  PublicKey defines the keys available for use
                                  with Tendermint Validators
                              voting_power:
                                type: string
                                format: int64
                              proposer_priority:
                                type: string
                                format: int64
                        total_voting_power:
                          type: string
                          format: int64
                        timestamp:
                          type: string
                          format: date-time
                      description: >-
                        LightClientAttackEvidence contains evidence of a set of
                        validators attempting to mislead a light client.
          last_commit:
            type: object
            properties:
              height:
                type: string
                format: int64
              round:
                type: integer
                format: int32
              block_id:
                type: object
                properties:
                  hash:
                    type: string
                    format: byte
                  part_set_header:
                    type: object
                    properties:
                      total:
                        type: integer
                        format: int64
                      hash:
                        type: string
                        format: byte
                    title: PartsetHeader
                title: BlockID
              signatures:
                type: array
                items:
                  type: object
                  properties:
                    block_id_flag:
                      type: string
                      enum:
                        - BLOCK_ID_FLAG_UNKNOWN
                        - BLOCK_ID_FLAG_ABSENT
                        - BLOCK_ID_FLAG_COMMIT
                        - BLOCK_ID_FLAG_NIL
                      default: BLOCK_ID_FLAG_UNKNOWN
                      title: BlockIdFlag indicates which BlcokID the signature is for
                    validator_address:
                      type: string
                      format: byte
                    timestamp:
                      type: string
                      format: date-time
                    signature:
                      type: string
                      format: byte
                  description: CommitSig is a part of the Vote included in a Commit.
            description: >-
              Commit contains the evidence that a block was committed by a set
              of validators.
      pagination:
        description: pagination defines a pagination for the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: >-
      GetBlockWithTxsResponse is the response type for the
      Service.GetBlockWithTxs method.


      Since: cosmos-sdk 0.45.2
  cosmos.tx.v1beta1.GetTxResponse:
    type: object
    properties:
      tx:
        $ref: '#/definitions/cosmos.tx.v1beta1.Tx'
        description: tx is the queried transaction.
      tx_response:
        type: object
        properties:
          height:
            type: string
            format: int64
            title: The block height
          txhash:
            type: string
            description: The transaction hash.
          codespace:
            type: string
            title: Namespace for the Code
          code:
            type: integer
            format: int64
            description: Response code.
          data:
            type: string
            description: Result bytes, if any.
          raw_log:
            type: string
            description: |-
              The output of the application's logger (raw string). May be
              non-deterministic.
          logs:
            type: array
            items:
              type: object
              properties:
                msg_index:
                  type: integer
                  format: int64
                log:
                  type: string
                events:
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        type: string
                      attributes:
                        type: array
                        items:
                          type: object
                          properties:
                            key:
                              type: string
                            value:
                              type: string
                          description: >-
                            Attribute defines an attribute wrapper where the key
                            and value are

                            strings instead of raw bytes.
                    description: >-
                      StringEvent defines en Event object wrapper where all the
                      attributes

                      contain key/value pairs that are strings instead of raw
                      bytes.
                  description: >-
                    Events contains a slice of Event objects that were emitted
                    during some

                    execution.
              description: >-
                ABCIMessageLog defines a structure containing an indexed tx ABCI
                message log.
            description: >-
              The output of the application's logger (typed). May be
              non-deterministic.
          info:
            type: string
            description: Additional information. May be non-deterministic.
          gas_wanted:
            type: string
            format: int64
            description: Amount of gas requested for transaction.
          gas_used:
            type: string
            format: int64
            description: Amount of gas consumed by transaction.
          tx:
            type: object
            properties:
              type_url:
                type: string
                description: >-
                  A URL/resource name that uniquely identifies the type of the
                  serialized

                  protocol buffer message. This string must contain at least

                  one "/" character. The last segment of the URL's path must
                  represent

                  the fully qualified name of the type (as in

                  `path/google.protobuf.Duration`). The name should be in a
                  canonical form

                  (e.g., leading "." is not accepted).


                  In practice, teams usually precompile into the binary all
                  types that they

                  expect it to use in the context of Any. However, for URLs
                  which use the

                  scheme `http`, `https`, or no scheme, one can optionally set
                  up a type

                  server that maps type URLs to message definitions as follows:


                  * If no scheme is provided, `https` is assumed.

                  * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                    value in binary format, or produce an error.
                  * Applications are allowed to cache lookup results based on
                  the
                    URL, or have them precompiled into a binary to avoid any
                    lookup. Therefore, binary compatibility needs to be preserved
                    on changes to types. (Use versioned type names to manage
                    breaking changes.)

                  Note: this functionality is not currently available in the
                  official

                  protobuf release, and it is not used for type URLs beginning
                  with

                  type.googleapis.com.


                  Schemes other than `http`, `https` (or the empty scheme) might
                  be

                  used with implementation specific semantics.
              value:
                type: string
                format: byte
                description: >-
                  Must be a valid serialized protocol buffer of the above
                  specified type.
            description: >-
              `Any` contains an arbitrary serialized protocol buffer message
              along with a

              URL that describes the type of the serialized message.


              Protobuf library provides support to pack/unpack Any values in the
              form

              of utility functions or additional generated methods of the Any
              type.


              Example 1: Pack and unpack a message in C++.

                  Foo foo = ...;
                  Any any;
                  any.PackFrom(foo);
                  ...
                  if (any.UnpackTo(&foo)) {
                    ...
                  }

              Example 2: Pack and unpack a message in Java.

                  Foo foo = ...;
                  Any any = Any.pack(foo);
                  ...
                  if (any.is(Foo.class)) {
                    foo = any.unpack(Foo.class);
                  }

               Example 3: Pack and unpack a message in Python.

                  foo = Foo(...)
                  any = Any()
                  any.Pack(foo)
                  ...
                  if any.Is(Foo.DESCRIPTOR):
                    any.Unpack(foo)
                    ...

               Example 4: Pack and unpack a message in Go

                   foo := &pb.Foo{...}
                   any, err := ptypes.MarshalAny(foo)
                   ...
                   foo := &pb.Foo{}
                   if err := ptypes.UnmarshalAny(any, foo); err != nil {
                     ...
                   }

              The pack methods provided by protobuf library will by default use

              'type.googleapis.com/full.type.name' as the type URL and the
              unpack

              methods only use the fully qualified type name after the last '/'

              in the type URL, for example "foo.bar.com/x/y.z" will yield type

              name "y.z".



              JSON

              ====

              The JSON representation of an `Any` value uses the regular

              representation of the deserialized, embedded message, with an

              additional field `@type` which contains the type URL. Example:

                  package google.profile;
                  message Person {
                    string first_name = 1;
                    string last_name = 2;
                  }

                  {
                    "@type": "type.googleapis.com/google.profile.Person",
                    "firstName": <string>,
                    "lastName": <string>
                  }

              If the embedded message type is well-known and has a custom JSON

              representation, that representation will be embedded adding a
              field

              `value` which holds the custom JSON in addition to the `@type`

              field. Example (for message [google.protobuf.Duration][]):

                  {
                    "@type": "type.googleapis.com/google.protobuf.Duration",
                    "value": "1.212s"
                  }
          timestamp:
            type: string
            description: >-
              Time of the previous block. For heights > 1, it's the weighted
              median of

              the timestamps of the valid votes in the block.LastCommit. For
              height == 1,

              it's genesis time.
          events:
            type: array
            items:
              type: object
              properties:
                type:
                  type: string
                attributes:
                  type: array
                  items:
                    type: object
                    properties:
                      key:
                        type: string
                        format: byte
                      value:
                        type: string
                        format: byte
                      index:
                        type: boolean
                    description: >-
                      EventAttribute is a single key-value pair, associated with
                      an event.
              description: >-
                Event allows application developers to attach additional
                information to

                ResponseBeginBlock, ResponseEndBlock, ResponseCheckTx and
                ResponseDeliverTx.

                Later, transactions may be queried using these events.
            description: >-
              Events defines all the events emitted by processing a transaction.
              Note,

              these events include those emitted by processing all the messages
              and those

              emitted from the ante. Whereas Logs contains the events, with

              additional metadata, emitted only by processing the messages.


              Since: cosmos-sdk 0.42.11, 0.44.5, 0.45
        description: >-
          TxResponse defines a structure containing relevant tx data and
          metadata. The

          tags are stringified and the log is JSON decoded.
    description: GetTxResponse is the response type for the Service.GetTx method.
  cosmos.tx.v1beta1.GetTxsEventResponse:
    type: object
    properties:
      txs:
        type: array
        items:
          $ref: '#/definitions/cosmos.tx.v1beta1.Tx'
        description: txs is the list of queried transactions.
      tx_responses:
        type: array
        items:
          type: object
          properties:
            height:
              type: string
              format: int64
              title: The block height
            txhash:
              type: string
              description: The transaction hash.
            codespace:
              type: string
              title: Namespace for the Code
            code:
              type: integer
              format: int64
              description: Response code.
            data:
              type: string
              description: Result bytes, if any.
            raw_log:
              type: string
              description: |-
                The output of the application's logger (raw string). May be
                non-deterministic.
            logs:
              type: array
              items:
                type: object
                properties:
                  msg_index:
                    type: integer
                    format: int64
                  log:
                    type: string
                  events:
                    type: array
                    items:
                      type: object
                      properties:
                        type:
                          type: string
                        attributes:
                          type: array
                          items:
                            type: object
                            properties:
                              key:
                                type: string
                              value:
                                type: string
                            description: >-
                              Attribute defines an attribute wrapper where the
                              key and value are

                              strings instead of raw bytes.
                      description: >-
                        StringEvent defines en Event object wrapper where all
                        the attributes

                        contain key/value pairs that are strings instead of raw
                        bytes.
                    description: >-
                      Events contains a slice of Event objects that were emitted
                      during some

                      execution.
                description: >-
                  ABCIMessageLog defines a structure containing an indexed tx
                  ABCI message log.
              description: >-
                The output of the application's logger (typed). May be
                non-deterministic.
            info:
              type: string
              description: Additional information. May be non-deterministic.
            gas_wanted:
              type: string
              format: int64
              description: Amount of gas requested for transaction.
            gas_used:
              type: string
              format: int64
              description: Amount of gas consumed by transaction.
            tx:
              type: object
              properties:
                type_url:
                  type: string
                  description: >-
                    A URL/resource name that uniquely identifies the type of the
                    serialized

                    protocol buffer message. This string must contain at least

                    one "/" character. The last segment of the URL's path must
                    represent

                    the fully qualified name of the type (as in

                    `path/google.protobuf.Duration`). The name should be in a
                    canonical form

                    (e.g., leading "." is not accepted).


                    In practice, teams usually precompile into the binary all
                    types that they

                    expect it to use in the context of Any. However, for URLs
                    which use the

                    scheme `http`, `https`, or no scheme, one can optionally set
                    up a type

                    server that maps type URLs to message definitions as
                    follows:


                    * If no scheme is provided, `https` is assumed.

                    * An HTTP GET on the URL must yield a
                    [google.protobuf.Type][]
                      value in binary format, or produce an error.
                    * Applications are allowed to cache lookup results based on
                    the
                      URL, or have them precompiled into a binary to avoid any
                      lookup. Therefore, binary compatibility needs to be preserved
                      on changes to types. (Use versioned type names to manage
                      breaking changes.)

                    Note: this functionality is not currently available in the
                    official

                    protobuf release, and it is not used for type URLs beginning
                    with

                    type.googleapis.com.


                    Schemes other than `http`, `https` (or the empty scheme)
                    might be

                    used with implementation specific semantics.
                value:
                  type: string
                  format: byte
                  description: >-
                    Must be a valid serialized protocol buffer of the above
                    specified type.
              description: >-
                `Any` contains an arbitrary serialized protocol buffer message
                along with a

                URL that describes the type of the serialized message.


                Protobuf library provides support to pack/unpack Any values in
                the form

                of utility functions or additional generated methods of the Any
                type.


                Example 1: Pack and unpack a message in C++.

                    Foo foo = ...;
                    Any any;
                    any.PackFrom(foo);
                    ...
                    if (any.UnpackTo(&foo)) {
                      ...
                    }

                Example 2: Pack and unpack a message in Java.

                    Foo foo = ...;
                    Any any = Any.pack(foo);
                    ...
                    if (any.is(Foo.class)) {
                      foo = any.unpack(Foo.class);
                    }

                 Example 3: Pack and unpack a message in Python.

                    foo = Foo(...)
                    any = Any()
                    any.Pack(foo)
                    ...
                    if any.Is(Foo.DESCRIPTOR):
                      any.Unpack(foo)
                      ...

                 Example 4: Pack and unpack a message in Go

                     foo := &pb.Foo{...}
                     any, err := ptypes.MarshalAny(foo)
                     ...
                     foo := &pb.Foo{}
                     if err := ptypes.UnmarshalAny(any, foo); err != nil {
                       ...
                     }

                The pack methods provided by protobuf library will by default
                use

                'type.googleapis.com/full.type.name' as the type URL and the
                unpack

                methods only use the fully qualified type name after the last
                '/'

                in the type URL, for example "foo.bar.com/x/y.z" will yield type

                name "y.z".



                JSON

                ====

                The JSON representation of an `Any` value uses the regular

                representation of the deserialized, embedded message, with an

                additional field `@type` which contains the type URL. Example:

                    package google.profile;
                    message Person {
                      string first_name = 1;
                      string last_name = 2;
                    }

                    {
                      "@type": "type.googleapis.com/google.profile.Person",
                      "firstName": <string>,
                      "lastName": <string>
                    }

                If the embedded message type is well-known and has a custom JSON

                representation, that representation will be embedded adding a
                field

                `value` which holds the custom JSON in addition to the `@type`

                field. Example (for message [google.protobuf.Duration][]):

                    {
                      "@type": "type.googleapis.com/google.protobuf.Duration",
                      "value": "1.212s"
                    }
            timestamp:
              type: string
              description: >-
                Time of the previous block. For heights > 1, it's the weighted
                median of

                the timestamps of the valid votes in the block.LastCommit. For
                height == 1,

                it's genesis time.
            events:
              type: array
              items:
                type: object
                properties:
                  type:
                    type: string
                  attributes:
                    type: array
                    items:
                      type: object
                      properties:
                        key:
                          type: string
                          format: byte
                        value:
                          type: string
                          format: byte
                        index:
                          type: boolean
                      description: >-
                        EventAttribute is a single key-value pair, associated
                        with an event.
                description: >-
                  Event allows application developers to attach additional
                  information to

                  ResponseBeginBlock, ResponseEndBlock, ResponseCheckTx and
                  ResponseDeliverTx.

                  Later, transactions may be queried using these events.
              description: >-
                Events defines all the events emitted by processing a
                transaction. Note,

                these events include those emitted by processing all the
                messages and those

                emitted from the ante. Whereas Logs contains the events, with

                additional metadata, emitted only by processing the messages.


                Since: cosmos-sdk 0.42.11, 0.44.5, 0.45
          description: >-
            TxResponse defines a structure containing relevant tx data and
            metadata. The

            tags are stringified and the log is JSON decoded.
        description: tx_responses is the list of queried TxResponses.
      pagination:
        description: |-
          pagination defines a pagination for the response.
          Deprecated post v0.46.x: use total instead.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
      total:
        type: string
        format: uint64
        title: total is total number of results available
    description: |-
      GetTxsEventResponse is the response type for the Service.TxsByEvents
      RPC method.
  cosmos.tx.v1beta1.ModeInfo:
    type: object
    properties:
      single:
        title: single represents a single signer
        type: object
        properties:
          mode:
            title: mode is the signing mode of the single signer
            type: string
            enum:
              - SIGN_MODE_UNSPECIFIED
              - SIGN_MODE_DIRECT
              - SIGN_MODE_TEXTUAL
              - SIGN_MODE_DIRECT_AUX
              - SIGN_MODE_LEGACY_AMINO_JSON
              - SIGN_MODE_EIP_191
            default: SIGN_MODE_UNSPECIFIED
            description: >-
              SignMode represents a signing mode with its own security
              guarantees.


              This enum should be considered a registry of all known sign modes

              in the Cosmos ecosystem. Apps are not expected to support all
              known

              sign modes. Apps that would like to support custom  sign modes are

              encouraged to open a small PR against this file to add a new case

              to this SignMode enum describing their sign mode so that different

              apps have a consistent version of this enum.

               - SIGN_MODE_UNSPECIFIED: SIGN_MODE_UNSPECIFIED specifies an unknown signing mode and will be
              rejected.
               - SIGN_MODE_DIRECT: SIGN_MODE_DIRECT specifies a signing mode which uses SignDoc and is
              verified with raw bytes from Tx.
               - SIGN_MODE_TEXTUAL: SIGN_MODE_TEXTUAL is a future signing mode that will verify some
              human-readable textual representation on top of the binary
              representation

              from SIGN_MODE_DIRECT. It is currently not supported.
               - SIGN_MODE_DIRECT_AUX: SIGN_MODE_DIRECT_AUX specifies a signing mode which uses
              SignDocDirectAux. As opposed to SIGN_MODE_DIRECT, this sign mode
              does not

              require signers signing over other signers' `signer_info`. It also
              allows

              for adding Tips in transactions.


              Since: cosmos-sdk 0.46
               - SIGN_MODE_LEGACY_AMINO_JSON: SIGN_MODE_LEGACY_AMINO_JSON is a backwards compatibility mode which uses
              Amino JSON and will be removed in the future.
               - SIGN_MODE_EIP_191: SIGN_MODE_EIP_191 specifies the sign mode for EIP 191 signing on the Cosmos
              SDK. Ref: https://eips.ethereum.org/EIPS/eip-191


              Currently, SIGN_MODE_EIP_191 is registered as a SignMode enum
              variant,

              but is not implemented on the SDK by default. To enable EIP-191,
              you need

              to pass a custom `TxConfig` that has an implementation of

              `SignModeHandler` for EIP-191. The SDK may decide to fully support

              EIP-191 in the future.


              Since: cosmos-sdk 0.45.2
      multi:
        $ref: '#/definitions/cosmos.tx.v1beta1.ModeInfo.Multi'
        title: multi represents a nested multisig signer
    description: ModeInfo describes the signing mode of a single or nested multisig signer.
  cosmos.tx.v1beta1.ModeInfo.Multi:
    type: object
    properties:
      bitarray:
        title: bitarray specifies which keys within the multisig are signing
        type: object
        properties:
          extra_bits_stored:
            type: integer
            format: int64
          elems:
            type: string
            format: byte
        description: >-
          CompactBitArray is an implementation of a space efficient bit array.

          This is used to ensure that the encoded data takes up a minimal amount
          of

          space after proto encoding.

          This is not thread safe, and is not intended for concurrent usage.
      mode_infos:
        type: array
        items:
          $ref: '#/definitions/cosmos.tx.v1beta1.ModeInfo'
        title: |-
          mode_infos is the corresponding modes of the signers of the multisig
          which could include nested multisig public keys
    title: Multi is the mode info for a multisig public key
  cosmos.tx.v1beta1.ModeInfo.Single:
    type: object
    properties:
      mode:
        title: mode is the signing mode of the single signer
        type: string
        enum:
          - SIGN_MODE_UNSPECIFIED
          - SIGN_MODE_DIRECT
          - SIGN_MODE_TEXTUAL
          - SIGN_MODE_DIRECT_AUX
          - SIGN_MODE_LEGACY_AMINO_JSON
          - SIGN_MODE_EIP_191
        default: SIGN_MODE_UNSPECIFIED
        description: >-
          SignMode represents a signing mode with its own security guarantees.


          This enum should be considered a registry of all known sign modes

          in the Cosmos ecosystem. Apps are not expected to support all known

          sign modes. Apps that would like to support custom  sign modes are

          encouraged to open a small PR against this file to add a new case

          to this SignMode enum describing their sign mode so that different

          apps have a consistent version of this enum.

           - SIGN_MODE_UNSPECIFIED: SIGN_MODE_UNSPECIFIED specifies an unknown signing mode and will be
          rejected.
           - SIGN_MODE_DIRECT: SIGN_MODE_DIRECT specifies a signing mode which uses SignDoc and is
          verified with raw bytes from Tx.
           - SIGN_MODE_TEXTUAL: SIGN_MODE_TEXTUAL is a future signing mode that will verify some
          human-readable textual representation on top of the binary
          representation

          from SIGN_MODE_DIRECT. It is currently not supported.
           - SIGN_MODE_DIRECT_AUX: SIGN_MODE_DIRECT_AUX specifies a signing mode which uses
          SignDocDirectAux. As opposed to SIGN_MODE_DIRECT, this sign mode does
          not

          require signers signing over other signers' `signer_info`. It also
          allows

          for adding Tips in transactions.


          Since: cosmos-sdk 0.46
           - SIGN_MODE_LEGACY_AMINO_JSON: SIGN_MODE_LEGACY_AMINO_JSON is a backwards compatibility mode which uses
          Amino JSON and will be removed in the future.
           - SIGN_MODE_EIP_191: SIGN_MODE_EIP_191 specifies the sign mode for EIP 191 signing on the Cosmos
          SDK. Ref: https://eips.ethereum.org/EIPS/eip-191


          Currently, SIGN_MODE_EIP_191 is registered as a SignMode enum variant,

          but is not implemented on the SDK by default. To enable EIP-191, you
          need

          to pass a custom `TxConfig` that has an implementation of

          `SignModeHandler` for EIP-191. The SDK may decide to fully support

          EIP-191 in the future.


          Since: cosmos-sdk 0.45.2
    title: |-
      Single is the mode info for a single signer. It is structured as a message
      to allow for additional fields such as locale for SIGN_MODE_TEXTUAL in the
      future
  cosmos.tx.v1beta1.OrderBy:
    type: string
    enum:
      - ORDER_BY_UNSPECIFIED
      - ORDER_BY_ASC
      - ORDER_BY_DESC
    default: ORDER_BY_UNSPECIFIED
    description: >-
      - ORDER_BY_UNSPECIFIED: ORDER_BY_UNSPECIFIED specifies an unknown sorting
      order. OrderBy defaults to ASC in this case.
       - ORDER_BY_ASC: ORDER_BY_ASC defines ascending order
       - ORDER_BY_DESC: ORDER_BY_DESC defines descending order
    title: OrderBy defines the sorting order
  cosmos.tx.v1beta1.SignerInfo:
    type: object
    properties:
      public_key:
        type: object
        properties:
          type_url:
            type: string
            description: >-
              A URL/resource name that uniquely identifies the type of the
              serialized

              protocol buffer message. This string must contain at least

              one "/" character. The last segment of the URL's path must
              represent

              the fully qualified name of the type (as in

              `path/google.protobuf.Duration`). The name should be in a
              canonical form

              (e.g., leading "." is not accepted).


              In practice, teams usually precompile into the binary all types
              that they

              expect it to use in the context of Any. However, for URLs which
              use the

              scheme `http`, `https`, or no scheme, one can optionally set up a
              type

              server that maps type URLs to message definitions as follows:


              * If no scheme is provided, `https` is assumed.

              * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                value in binary format, or produce an error.
              * Applications are allowed to cache lookup results based on the
                URL, or have them precompiled into a binary to avoid any
                lookup. Therefore, binary compatibility needs to be preserved
                on changes to types. (Use versioned type names to manage
                breaking changes.)

              Note: this functionality is not currently available in the
              official

              protobuf release, and it is not used for type URLs beginning with

              type.googleapis.com.


              Schemes other than `http`, `https` (or the empty scheme) might be

              used with implementation specific semantics.
          value:
            type: string
            format: byte
            description: >-
              Must be a valid serialized protocol buffer of the above specified
              type.
        description: >-
          `Any` contains an arbitrary serialized protocol buffer message along
          with a

          URL that describes the type of the serialized message.


          Protobuf library provides support to pack/unpack Any values in the
          form

          of utility functions or additional generated methods of the Any type.


          Example 1: Pack and unpack a message in C++.

              Foo foo = ...;
              Any any;
              any.PackFrom(foo);
              ...
              if (any.UnpackTo(&foo)) {
                ...
              }

          Example 2: Pack and unpack a message in Java.

              Foo foo = ...;
              Any any = Any.pack(foo);
              ...
              if (any.is(Foo.class)) {
                foo = any.unpack(Foo.class);
              }

           Example 3: Pack and unpack a message in Python.

              foo = Foo(...)
              any = Any()
              any.Pack(foo)
              ...
              if any.Is(Foo.DESCRIPTOR):
                any.Unpack(foo)
                ...

           Example 4: Pack and unpack a message in Go

               foo := &pb.Foo{...}
               any, err := ptypes.MarshalAny(foo)
               ...
               foo := &pb.Foo{}
               if err := ptypes.UnmarshalAny(any, foo); err != nil {
                 ...
               }

          The pack methods provided by protobuf library will by default use

          'type.googleapis.com/full.type.name' as the type URL and the unpack

          methods only use the fully qualified type name after the last '/'

          in the type URL, for example "foo.bar.com/x/y.z" will yield type

          name "y.z".



          JSON

          ====

          The JSON representation of an `Any` value uses the regular

          representation of the deserialized, embedded message, with an

          additional field `@type` which contains the type URL. Example:

              package google.profile;
              message Person {
                string first_name = 1;
                string last_name = 2;
              }

              {
                "@type": "type.googleapis.com/google.profile.Person",
                "firstName": <string>,
                "lastName": <string>
              }

          If the embedded message type is well-known and has a custom JSON

          representation, that representation will be embedded adding a field

          `value` which holds the custom JSON in addition to the `@type`

          field. Example (for message [google.protobuf.Duration][]):

              {
                "@type": "type.googleapis.com/google.protobuf.Duration",
                "value": "1.212s"
              }
      mode_info:
        $ref: '#/definitions/cosmos.tx.v1beta1.ModeInfo'
        title: |-
          mode_info describes the signing mode of the signer and is a nested
          structure to support nested multisig pubkey's
      sequence:
        type: string
        format: uint64
        description: >-
          sequence is the sequence of the account, which describes the

          number of committed transactions signed by a given address. It is used
          to

          prevent replay attacks.
    description: |-
      SignerInfo describes the public key and signing mode of a single top-level
      signer.
  cosmos.tx.v1beta1.SimulateRequest:
    type: object
    properties:
      tx:
        $ref: '#/definitions/cosmos.tx.v1beta1.Tx'
        description: |-
          tx is the transaction to simulate.
          Deprecated. Send raw tx bytes instead.
      tx_bytes:
        type: string
        format: byte
        description: |-
          tx_bytes is the raw transaction.

          Since: cosmos-sdk 0.43
    description: |-
      SimulateRequest is the request type for the Service.Simulate
      RPC method.
  cosmos.tx.v1beta1.SimulateResponse:
    type: object
    properties:
      gas_info:
        description: gas_info is the information about gas used in the simulation.
        type: object
        properties:
          gas_wanted:
            type: string
            format: uint64
            description: >-
              GasWanted is the maximum units of work we allow this tx to
              perform.
          gas_used:
            type: string
            format: uint64
            description: GasUsed is the amount of gas actually consumed.
      result:
        description: result is the result of the simulation.
        type: object
        properties:
          data:
            type: string
            format: byte
            description: >-
              Data is any data returned from message or handler execution. It
              MUST be

              length prefixed in order to separate data from multiple message
              executions.

              Deprecated. This field is still populated, but prefer msg_response
              instead

              because it also contains the Msg response typeURL.
          log:
            type: string
            description: >-
              Log contains the log information from message or handler
              execution.
          events:
            type: array
            items:
              type: object
              properties:
                type:
                  type: string
                attributes:
                  type: array
                  items:
                    type: object
                    properties:
                      key:
                        type: string
                        format: byte
                      value:
                        type: string
                        format: byte
                      index:
                        type: boolean
                    description: >-
                      EventAttribute is a single key-value pair, associated with
                      an event.
              description: >-
                Event allows application developers to attach additional
                information to

                ResponseBeginBlock, ResponseEndBlock, ResponseCheckTx and
                ResponseDeliverTx.

                Later, transactions may be queried using these events.
            description: >-
              Events contains a slice of Event objects that were emitted during
              message

              or handler execution.
          msg_responses:
            type: array
            items:
              type: object
              properties:
                type_url:
                  type: string
                  description: >-
                    A URL/resource name that uniquely identifies the type of the
                    serialized

                    protocol buffer message. This string must contain at least

                    one "/" character. The last segment of the URL's path must
                    represent

                    the fully qualified name of the type (as in

                    `path/google.protobuf.Duration`). The name should be in a
                    canonical form

                    (e.g., leading "." is not accepted).


                    In practice, teams usually precompile into the binary all
                    types that they

                    expect it to use in the context of Any. However, for URLs
                    which use the

                    scheme `http`, `https`, or no scheme, one can optionally set
                    up a type

                    server that maps type URLs to message definitions as
                    follows:


                    * If no scheme is provided, `https` is assumed.

                    * An HTTP GET on the URL must yield a
                    [google.protobuf.Type][]
                      value in binary format, or produce an error.
                    * Applications are allowed to cache lookup results based on
                    the
                      URL, or have them precompiled into a binary to avoid any
                      lookup. Therefore, binary compatibility needs to be preserved
                      on changes to types. (Use versioned type names to manage
                      breaking changes.)

                    Note: this functionality is not currently available in the
                    official

                    protobuf release, and it is not used for type URLs beginning
                    with

                    type.googleapis.com.


                    Schemes other than `http`, `https` (or the empty scheme)
                    might be

                    used with implementation specific semantics.
                value:
                  type: string
                  format: byte
                  description: >-
                    Must be a valid serialized protocol buffer of the above
                    specified type.
              description: >-
                `Any` contains an arbitrary serialized protocol buffer message
                along with a

                URL that describes the type of the serialized message.


                Protobuf library provides support to pack/unpack Any values in
                the form

                of utility functions or additional generated methods of the Any
                type.


                Example 1: Pack and unpack a message in C++.

                    Foo foo = ...;
                    Any any;
                    any.PackFrom(foo);
                    ...
                    if (any.UnpackTo(&foo)) {
                      ...
                    }

                Example 2: Pack and unpack a message in Java.

                    Foo foo = ...;
                    Any any = Any.pack(foo);
                    ...
                    if (any.is(Foo.class)) {
                      foo = any.unpack(Foo.class);
                    }

                 Example 3: Pack and unpack a message in Python.

                    foo = Foo(...)
                    any = Any()
                    any.Pack(foo)
                    ...
                    if any.Is(Foo.DESCRIPTOR):
                      any.Unpack(foo)
                      ...

                 Example 4: Pack and unpack a message in Go

                     foo := &pb.Foo{...}
                     any, err := ptypes.MarshalAny(foo)
                     ...
                     foo := &pb.Foo{}
                     if err := ptypes.UnmarshalAny(any, foo); err != nil {
                       ...
                     }

                The pack methods provided by protobuf library will by default
                use

                'type.googleapis.com/full.type.name' as the type URL and the
                unpack

                methods only use the fully qualified type name after the last
                '/'

                in the type URL, for example "foo.bar.com/x/y.z" will yield type

                name "y.z".



                JSON

                ====

                The JSON representation of an `Any` value uses the regular

                representation of the deserialized, embedded message, with an

                additional field `@type` which contains the type URL. Example:

                    package google.profile;
                    message Person {
                      string first_name = 1;
                      string last_name = 2;
                    }

                    {
                      "@type": "type.googleapis.com/google.profile.Person",
                      "firstName": <string>,
                      "lastName": <string>
                    }

                If the embedded message type is well-known and has a custom JSON

                representation, that representation will be embedded adding a
                field

                `value` which holds the custom JSON in addition to the `@type`

                field. Example (for message [google.protobuf.Duration][]):

                    {
                      "@type": "type.googleapis.com/google.protobuf.Duration",
                      "value": "1.212s"
                    }
            description: >-
              msg_responses contains the Msg handler responses type packed in
              Anys.


              Since: cosmos-sdk 0.46
    description: |-
      SimulateResponse is the response type for the
      Service.SimulateRPC method.
  cosmos.tx.v1beta1.Tip:
    type: object
    properties:
      amount:
        type: array
        items:
          type: object
          properties:
            denom:
              type: string
            amount:
              type: string
          description: |-
            Coin defines a token with a denomination and an amount.

            NOTE: The amount field is an Int which implements the custom method
            signatures required by gogoproto.
        title: amount is the amount of the tip
      tipper:
        type: string
        title: tipper is the address of the account paying for the tip
    description: |-
      Tip is the tip used for meta-transactions.

      Since: cosmos-sdk 0.46
  cosmos.tx.v1beta1.Tx:
    type: object
    properties:
      body:
        title: body is the processable content of the transaction
        type: object
        properties:
          messages:
            type: array
            items:
              type: object
              properties:
                type_url:
                  type: string
                  description: >-
                    A URL/resource name that uniquely identifies the type of the
                    serialized

                    protocol buffer message. This string must contain at least

                    one "/" character. The last segment of the URL's path must
                    represent

                    the fully qualified name of the type (as in

                    `path/google.protobuf.Duration`). The name should be in a
                    canonical form

                    (e.g., leading "." is not accepted).


                    In practice, teams usually precompile into the binary all
                    types that they

                    expect it to use in the context of Any. However, for URLs
                    which use the

                    scheme `http`, `https`, or no scheme, one can optionally set
                    up a type

                    server that maps type URLs to message definitions as
                    follows:


                    * If no scheme is provided, `https` is assumed.

                    * An HTTP GET on the URL must yield a
                    [google.protobuf.Type][]
                      value in binary format, or produce an error.
                    * Applications are allowed to cache lookup results based on
                    the
                      URL, or have them precompiled into a binary to avoid any
                      lookup. Therefore, binary compatibility needs to be preserved
                      on changes to types. (Use versioned type names to manage
                      breaking changes.)

                    Note: this functionality is not currently available in the
                    official

                    protobuf release, and it is not used for type URLs beginning
                    with

                    type.googleapis.com.


                    Schemes other than `http`, `https` (or the empty scheme)
                    might be

                    used with implementation specific semantics.
                value:
                  type: string
                  format: byte
                  description: >-
                    Must be a valid serialized protocol buffer of the above
                    specified type.
              description: >-
                `Any` contains an arbitrary serialized protocol buffer message
                along with a

                URL that describes the type of the serialized message.


                Protobuf library provides support to pack/unpack Any values in
                the form

                of utility functions or additional generated methods of the Any
                type.


                Example 1: Pack and unpack a message in C++.

                    Foo foo = ...;
                    Any any;
                    any.PackFrom(foo);
                    ...
                    if (any.UnpackTo(&foo)) {
                      ...
                    }

                Example 2: Pack and unpack a message in Java.

                    Foo foo = ...;
                    Any any = Any.pack(foo);
                    ...
                    if (any.is(Foo.class)) {
                      foo = any.unpack(Foo.class);
                    }

                 Example 3: Pack and unpack a message in Python.

                    foo = Foo(...)
                    any = Any()
                    any.Pack(foo)
                    ...
                    if any.Is(Foo.DESCRIPTOR):
                      any.Unpack(foo)
                      ...

                 Example 4: Pack and unpack a message in Go

                     foo := &pb.Foo{...}
                     any, err := ptypes.MarshalAny(foo)
                     ...
                     foo := &pb.Foo{}
                     if err := ptypes.UnmarshalAny(any, foo); err != nil {
                       ...
                     }

                The pack methods provided by protobuf library will by default
                use

                'type.googleapis.com/full.type.name' as the type URL and the
                unpack

                methods only use the fully qualified type name after the last
                '/'

                in the type URL, for example "foo.bar.com/x/y.z" will yield type

                name "y.z".



                JSON

                ====

                The JSON representation of an `Any` value uses the regular

                representation of the deserialized, embedded message, with an

                additional field `@type` which contains the type URL. Example:

                    package google.profile;
                    message Person {
                      string first_name = 1;
                      string last_name = 2;
                    }

                    {
                      "@type": "type.googleapis.com/google.profile.Person",
                      "firstName": <string>,
                      "lastName": <string>
                    }

                If the embedded message type is well-known and has a custom JSON

                representation, that representation will be embedded adding a
                field

                `value` which holds the custom JSON in addition to the `@type`

                field. Example (for message [google.protobuf.Duration][]):

                    {
                      "@type": "type.googleapis.com/google.protobuf.Duration",
                      "value": "1.212s"
                    }
            description: >-
              messages is a list of messages to be executed. The required
              signers of

              those messages define the number and order of elements in
              AuthInfo's

              signer_infos and Tx's signatures. Each required signer address is
              added to

              the list only the first time it occurs.

              By convention, the first required signer (usually from the first
              message)

              is referred to as the primary signer and pays the fee for the
              whole

              transaction.
          memo:
            type: string
            description: >-
              memo is any arbitrary note/comment to be added to the transaction.

              WARNING: in clients, any publicly exposed text should not be
              called memo,

              but should be called `note` instead (see
              https://github.com/cosmos/cosmos-sdk/issues/9122).
          timeout_height:
            type: string
            format: uint64
            title: |-
              timeout is the block height after which this transaction will not
              be processed by the chain
          extension_options:
            type: array
            items:
              type: object
              properties:
                type_url:
                  type: string
                  description: >-
                    A URL/resource name that uniquely identifies the type of the
                    serialized

                    protocol buffer message. This string must contain at least

                    one "/" character. The last segment of the URL's path must
                    represent

                    the fully qualified name of the type (as in

                    `path/google.protobuf.Duration`). The name should be in a
                    canonical form

                    (e.g., leading "." is not accepted).


                    In practice, teams usually precompile into the binary all
                    types that they

                    expect it to use in the context of Any. However, for URLs
                    which use the

                    scheme `http`, `https`, or no scheme, one can optionally set
                    up a type

                    server that maps type URLs to message definitions as
                    follows:


                    * If no scheme is provided, `https` is assumed.

                    * An HTTP GET on the URL must yield a
                    [google.protobuf.Type][]
                      value in binary format, or produce an error.
                    * Applications are allowed to cache lookup results based on
                    the
                      URL, or have them precompiled into a binary to avoid any
                      lookup. Therefore, binary compatibility needs to be preserved
                      on changes to types. (Use versioned type names to manage
                      breaking changes.)

                    Note: this functionality is not currently available in the
                    official

                    protobuf release, and it is not used for type URLs beginning
                    with

                    type.googleapis.com.


                    Schemes other than `http`, `https` (or the empty scheme)
                    might be

                    used with implementation specific semantics.
                value:
                  type: string
                  format: byte
                  description: >-
                    Must be a valid serialized protocol buffer of the above
                    specified type.
              description: >-
                `Any` contains an arbitrary serialized protocol buffer message
                along with a

                URL that describes the type of the serialized message.


                Protobuf library provides support to pack/unpack Any values in
                the form

                of utility functions or additional generated methods of the Any
                type.


                Example 1: Pack and unpack a message in C++.

                    Foo foo = ...;
                    Any any;
                    any.PackFrom(foo);
                    ...
                    if (any.UnpackTo(&foo)) {
                      ...
                    }

                Example 2: Pack and unpack a message in Java.

                    Foo foo = ...;
                    Any any = Any.pack(foo);
                    ...
                    if (any.is(Foo.class)) {
                      foo = any.unpack(Foo.class);
                    }

                 Example 3: Pack and unpack a message in Python.

                    foo = Foo(...)
                    any = Any()
                    any.Pack(foo)
                    ...
                    if any.Is(Foo.DESCRIPTOR):
                      any.Unpack(foo)
                      ...

                 Example 4: Pack and unpack a message in Go

                     foo := &pb.Foo{...}
                     any, err := ptypes.MarshalAny(foo)
                     ...
                     foo := &pb.Foo{}
                     if err := ptypes.UnmarshalAny(any, foo); err != nil {
                       ...
                     }

                The pack methods provided by protobuf library will by default
                use

                'type.googleapis.com/full.type.name' as the type URL and the
                unpack

                methods only use the fully qualified type name after the last
                '/'

                in the type URL, for example "foo.bar.com/x/y.z" will yield type

                name "y.z".



                JSON

                ====

                The JSON representation of an `Any` value uses the regular

                representation of the deserialized, embedded message, with an

                additional field `@type` which contains the type URL. Example:

                    package google.profile;
                    message Person {
                      string first_name = 1;
                      string last_name = 2;
                    }

                    {
                      "@type": "type.googleapis.com/google.profile.Person",
                      "firstName": <string>,
                      "lastName": <string>
                    }

                If the embedded message type is well-known and has a custom JSON

                representation, that representation will be embedded adding a
                field

                `value` which holds the custom JSON in addition to the `@type`

                field. Example (for message [google.protobuf.Duration][]):

                    {
                      "@type": "type.googleapis.com/google.protobuf.Duration",
                      "value": "1.212s"
                    }
            title: >-
              extension_options are arbitrary options that can be added by
              chains

              when the default options are not sufficient. If any of these are
              present

              and can't be handled, the transaction will be rejected
          non_critical_extension_options:
            type: array
            items:
              type: object
              properties:
                type_url:
                  type: string
                  description: >-
                    A URL/resource name that uniquely identifies the type of the
                    serialized

                    protocol buffer message. This string must contain at least

                    one "/" character. The last segment of the URL's path must
                    represent

                    the fully qualified name of the type (as in

                    `path/google.protobuf.Duration`). The name should be in a
                    canonical form

                    (e.g., leading "." is not accepted).


                    In practice, teams usually precompile into the binary all
                    types that they

                    expect it to use in the context of Any. However, for URLs
                    which use the

                    scheme `http`, `https`, or no scheme, one can optionally set
                    up a type

                    server that maps type URLs to message definitions as
                    follows:


                    * If no scheme is provided, `https` is assumed.

                    * An HTTP GET on the URL must yield a
                    [google.protobuf.Type][]
                      value in binary format, or produce an error.
                    * Applications are allowed to cache lookup results based on
                    the
                      URL, or have them precompiled into a binary to avoid any
                      lookup. Therefore, binary compatibility needs to be preserved
                      on changes to types. (Use versioned type names to manage
                      breaking changes.)

                    Note: this functionality is not currently available in the
                    official

                    protobuf release, and it is not used for type URLs beginning
                    with

                    type.googleapis.com.


                    Schemes other than `http`, `https` (or the empty scheme)
                    might be

                    used with implementation specific semantics.
                value:
                  type: string
                  format: byte
                  description: >-
                    Must be a valid serialized protocol buffer of the above
                    specified type.
              description: >-
                `Any` contains an arbitrary serialized protocol buffer message
                along with a

                URL that describes the type of the serialized message.


                Protobuf library provides support to pack/unpack Any values in
                the form

                of utility functions or additional generated methods of the Any
                type.


                Example 1: Pack and unpack a message in C++.

                    Foo foo = ...;
                    Any any;
                    any.PackFrom(foo);
                    ...
                    if (any.UnpackTo(&foo)) {
                      ...
                    }

                Example 2: Pack and unpack a message in Java.

                    Foo foo = ...;
                    Any any = Any.pack(foo);
                    ...
                    if (any.is(Foo.class)) {
                      foo = any.unpack(Foo.class);
                    }

                 Example 3: Pack and unpack a message in Python.

                    foo = Foo(...)
                    any = Any()
                    any.Pack(foo)
                    ...
                    if any.Is(Foo.DESCRIPTOR):
                      any.Unpack(foo)
                      ...

                 Example 4: Pack and unpack a message in Go

                     foo := &pb.Foo{...}
                     any, err := ptypes.MarshalAny(foo)
                     ...
                     foo := &pb.Foo{}
                     if err := ptypes.UnmarshalAny(any, foo); err != nil {
                       ...
                     }

                The pack methods provided by protobuf library will by default
                use

                'type.googleapis.com/full.type.name' as the type URL and the
                unpack

                methods only use the fully qualified type name after the last
                '/'

                in the type URL, for example "foo.bar.com/x/y.z" will yield type

                name "y.z".



                JSON

                ====

                The JSON representation of an `Any` value uses the regular

                representation of the deserialized, embedded message, with an

                additional field `@type` which contains the type URL. Example:

                    package google.profile;
                    message Person {
                      string first_name = 1;
                      string last_name = 2;
                    }

                    {
                      "@type": "type.googleapis.com/google.profile.Person",
                      "firstName": <string>,
                      "lastName": <string>
                    }

                If the embedded message type is well-known and has a custom JSON

                representation, that representation will be embedded adding a
                field

                `value` which holds the custom JSON in addition to the `@type`

                field. Example (for message [google.protobuf.Duration][]):

                    {
                      "@type": "type.googleapis.com/google.protobuf.Duration",
                      "value": "1.212s"
                    }
            title: >-
              extension_options are arbitrary options that can be added by
              chains

              when the default options are not sufficient. If any of these are
              present

              and can't be handled, they will be ignored
        description: TxBody is the body of a transaction that all signers sign over.
      auth_info:
        $ref: '#/definitions/cosmos.tx.v1beta1.AuthInfo'
        title: |-
          auth_info is the authorization related content of the transaction,
          specifically signers, signer modes and fee
      signatures:
        type: array
        items:
          type: string
          format: byte
        description: >-
          signatures is a list of signatures that matches the length and order
          of

          AuthInfo's signer_infos to allow connecting signature meta information
          like

          public key and signing mode by position.
    description: Tx is the standard type used for broadcasting transactions.
  cosmos.tx.v1beta1.TxBody:
    type: object
    properties:
      messages:
        type: array
        items:
          type: object
          properties:
            type_url:
              type: string
              description: >-
                A URL/resource name that uniquely identifies the type of the
                serialized

                protocol buffer message. This string must contain at least

                one "/" character. The last segment of the URL's path must
                represent

                the fully qualified name of the type (as in

                `path/google.protobuf.Duration`). The name should be in a
                canonical form

                (e.g., leading "." is not accepted).


                In practice, teams usually precompile into the binary all types
                that they

                expect it to use in the context of Any. However, for URLs which
                use the

                scheme `http`, `https`, or no scheme, one can optionally set up
                a type

                server that maps type URLs to message definitions as follows:


                * If no scheme is provided, `https` is assumed.

                * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                  value in binary format, or produce an error.
                * Applications are allowed to cache lookup results based on the
                  URL, or have them precompiled into a binary to avoid any
                  lookup. Therefore, binary compatibility needs to be preserved
                  on changes to types. (Use versioned type names to manage
                  breaking changes.)

                Note: this functionality is not currently available in the
                official

                protobuf release, and it is not used for type URLs beginning
                with

                type.googleapis.com.


                Schemes other than `http`, `https` (or the empty scheme) might
                be

                used with implementation specific semantics.
            value:
              type: string
              format: byte
              description: >-
                Must be a valid serialized protocol buffer of the above
                specified type.
          description: >-
            `Any` contains an arbitrary serialized protocol buffer message along
            with a

            URL that describes the type of the serialized message.


            Protobuf library provides support to pack/unpack Any values in the
            form

            of utility functions or additional generated methods of the Any
            type.


            Example 1: Pack and unpack a message in C++.

                Foo foo = ...;
                Any any;
                any.PackFrom(foo);
                ...
                if (any.UnpackTo(&foo)) {
                  ...
                }

            Example 2: Pack and unpack a message in Java.

                Foo foo = ...;
                Any any = Any.pack(foo);
                ...
                if (any.is(Foo.class)) {
                  foo = any.unpack(Foo.class);
                }

             Example 3: Pack and unpack a message in Python.

                foo = Foo(...)
                any = Any()
                any.Pack(foo)
                ...
                if any.Is(Foo.DESCRIPTOR):
                  any.Unpack(foo)
                  ...

             Example 4: Pack and unpack a message in Go

                 foo := &pb.Foo{...}
                 any, err := ptypes.MarshalAny(foo)
                 ...
                 foo := &pb.Foo{}
                 if err := ptypes.UnmarshalAny(any, foo); err != nil {
                   ...
                 }

            The pack methods provided by protobuf library will by default use

            'type.googleapis.com/full.type.name' as the type URL and the unpack

            methods only use the fully qualified type name after the last '/'

            in the type URL, for example "foo.bar.com/x/y.z" will yield type

            name "y.z".



            JSON

            ====

            The JSON representation of an `Any` value uses the regular

            representation of the deserialized, embedded message, with an

            additional field `@type` which contains the type URL. Example:

                package google.profile;
                message Person {
                  string first_name = 1;
                  string last_name = 2;
                }

                {
                  "@type": "type.googleapis.com/google.profile.Person",
                  "firstName": <string>,
                  "lastName": <string>
                }

            If the embedded message type is well-known and has a custom JSON

            representation, that representation will be embedded adding a field

            `value` which holds the custom JSON in addition to the `@type`

            field. Example (for message [google.protobuf.Duration][]):

                {
                  "@type": "type.googleapis.com/google.protobuf.Duration",
                  "value": "1.212s"
                }
        description: >-
          messages is a list of messages to be executed. The required signers of

          those messages define the number and order of elements in AuthInfo's

          signer_infos and Tx's signatures. Each required signer address is
          added to

          the list only the first time it occurs.

          By convention, the first required signer (usually from the first
          message)

          is referred to as the primary signer and pays the fee for the whole

          transaction.
      memo:
        type: string
        description: >-
          memo is any arbitrary note/comment to be added to the transaction.

          WARNING: in clients, any publicly exposed text should not be called
          memo,

          but should be called `note` instead (see
          https://github.com/cosmos/cosmos-sdk/issues/9122).
      timeout_height:
        type: string
        format: uint64
        title: |-
          timeout is the block height after which this transaction will not
          be processed by the chain
      extension_options:
        type: array
        items:
          type: object
          properties:
            type_url:
              type: string
              description: >-
                A URL/resource name that uniquely identifies the type of the
                serialized

                protocol buffer message. This string must contain at least

                one "/" character. The last segment of the URL's path must
                represent

                the fully qualified name of the type (as in

                `path/google.protobuf.Duration`). The name should be in a
                canonical form

                (e.g., leading "." is not accepted).


                In practice, teams usually precompile into the binary all types
                that they

                expect it to use in the context of Any. However, for URLs which
                use the

                scheme `http`, `https`, or no scheme, one can optionally set up
                a type

                server that maps type URLs to message definitions as follows:


                * If no scheme is provided, `https` is assumed.

                * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                  value in binary format, or produce an error.
                * Applications are allowed to cache lookup results based on the
                  URL, or have them precompiled into a binary to avoid any
                  lookup. Therefore, binary compatibility needs to be preserved
                  on changes to types. (Use versioned type names to manage
                  breaking changes.)

                Note: this functionality is not currently available in the
                official

                protobuf release, and it is not used for type URLs beginning
                with

                type.googleapis.com.


                Schemes other than `http`, `https` (or the empty scheme) might
                be

                used with implementation specific semantics.
            value:
              type: string
              format: byte
              description: >-
                Must be a valid serialized protocol buffer of the above
                specified type.
          description: >-
            `Any` contains an arbitrary serialized protocol buffer message along
            with a

            URL that describes the type of the serialized message.


            Protobuf library provides support to pack/unpack Any values in the
            form

            of utility functions or additional generated methods of the Any
            type.


            Example 1: Pack and unpack a message in C++.

                Foo foo = ...;
                Any any;
                any.PackFrom(foo);
                ...
                if (any.UnpackTo(&foo)) {
                  ...
                }

            Example 2: Pack and unpack a message in Java.

                Foo foo = ...;
                Any any = Any.pack(foo);
                ...
                if (any.is(Foo.class)) {
                  foo = any.unpack(Foo.class);
                }

             Example 3: Pack and unpack a message in Python.

                foo = Foo(...)
                any = Any()
                any.Pack(foo)
                ...
                if any.Is(Foo.DESCRIPTOR):
                  any.Unpack(foo)
                  ...

             Example 4: Pack and unpack a message in Go

                 foo := &pb.Foo{...}
                 any, err := ptypes.MarshalAny(foo)
                 ...
                 foo := &pb.Foo{}
                 if err := ptypes.UnmarshalAny(any, foo); err != nil {
                   ...
                 }

            The pack methods provided by protobuf library will by default use

            'type.googleapis.com/full.type.name' as the type URL and the unpack

            methods only use the fully qualified type name after the last '/'

            in the type URL, for example "foo.bar.com/x/y.z" will yield type

            name "y.z".



            JSON

            ====

            The JSON representation of an `Any` value uses the regular

            representation of the deserialized, embedded message, with an

            additional field `@type` which contains the type URL. Example:

                package google.profile;
                message Person {
                  string first_name = 1;
                  string last_name = 2;
                }

                {
                  "@type": "type.googleapis.com/google.profile.Person",
                  "firstName": <string>,
                  "lastName": <string>
                }

            If the embedded message type is well-known and has a custom JSON

            representation, that representation will be embedded adding a field

            `value` which holds the custom JSON in addition to the `@type`

            field. Example (for message [google.protobuf.Duration][]):

                {
                  "@type": "type.googleapis.com/google.protobuf.Duration",
                  "value": "1.212s"
                }
        title: >-
          extension_options are arbitrary options that can be added by chains

          when the default options are not sufficient. If any of these are
          present

          and can't be handled, the transaction will be rejected
      non_critical_extension_options:
        type: array
        items:
          type: object
          properties:
            type_url:
              type: string
              description: >-
                A URL/resource name that uniquely identifies the type of the
                serialized

                protocol buffer message. This string must contain at least

                one "/" character. The last segment of the URL's path must
                represent

                the fully qualified name of the type (as in

                `path/google.protobuf.Duration`). The name should be in a
                canonical form

                (e.g., leading "." is not accepted).


                In practice, teams usually precompile into the binary all types
                that they

                expect it to use in the context of Any. However, for URLs which
                use the

                scheme `http`, `https`, or no scheme, one can optionally set up
                a type

                server that maps type URLs to message definitions as follows:


                * If no scheme is provided, `https` is assumed.

                * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                  value in binary format, or produce an error.
                * Applications are allowed to cache lookup results based on the
                  URL, or have them precompiled into a binary to avoid any
                  lookup. Therefore, binary compatibility needs to be preserved
                  on changes to types. (Use versioned type names to manage
                  breaking changes.)

                Note: this functionality is not currently available in the
                official

                protobuf release, and it is not used for type URLs beginning
                with

                type.googleapis.com.


                Schemes other than `http`, `https` (or the empty scheme) might
                be

                used with implementation specific semantics.
            value:
              type: string
              format: byte
              description: >-
                Must be a valid serialized protocol buffer of the above
                specified type.
          description: >-
            `Any` contains an arbitrary serialized protocol buffer message along
            with a

            URL that describes the type of the serialized message.


            Protobuf library provides support to pack/unpack Any values in the
            form

            of utility functions or additional generated methods of the Any
            type.


            Example 1: Pack and unpack a message in C++.

                Foo foo = ...;
                Any any;
                any.PackFrom(foo);
                ...
                if (any.UnpackTo(&foo)) {
                  ...
                }

            Example 2: Pack and unpack a message in Java.

                Foo foo = ...;
                Any any = Any.pack(foo);
                ...
                if (any.is(Foo.class)) {
                  foo = any.unpack(Foo.class);
                }

             Example 3: Pack and unpack a message in Python.

                foo = Foo(...)
                any = Any()
                any.Pack(foo)
                ...
                if any.Is(Foo.DESCRIPTOR):
                  any.Unpack(foo)
                  ...

             Example 4: Pack and unpack a message in Go

                 foo := &pb.Foo{...}
                 any, err := ptypes.MarshalAny(foo)
                 ...
                 foo := &pb.Foo{}
                 if err := ptypes.UnmarshalAny(any, foo); err != nil {
                   ...
                 }

            The pack methods provided by protobuf library will by default use

            'type.googleapis.com/full.type.name' as the type URL and the unpack

            methods only use the fully qualified type name after the last '/'

            in the type URL, for example "foo.bar.com/x/y.z" will yield type

            name "y.z".



            JSON

            ====

            The JSON representation of an `Any` value uses the regular

            representation of the deserialized, embedded message, with an

            additional field `@type` which contains the type URL. Example:

                package google.profile;
                message Person {
                  string first_name = 1;
                  string last_name = 2;
                }

                {
                  "@type": "type.googleapis.com/google.profile.Person",
                  "firstName": <string>,
                  "lastName": <string>
                }

            If the embedded message type is well-known and has a custom JSON

            representation, that representation will be embedded adding a field

            `value` which holds the custom JSON in addition to the `@type`

            field. Example (for message [google.protobuf.Duration][]):

                {
                  "@type": "type.googleapis.com/google.protobuf.Duration",
                  "value": "1.212s"
                }
        title: >-
          extension_options are arbitrary options that can be added by chains

          when the default options are not sufficient. If any of these are
          present

          and can't be handled, they will be ignored
    description: TxBody is the body of a transaction that all signers sign over.
  tendermint.abci.Event:
    type: object
    properties:
      type:
        type: string
      attributes:
        type: array
        items:
          type: object
          properties:
            key:
              type: string
              format: byte
            value:
              type: string
              format: byte
            index:
              type: boolean
          description: EventAttribute is a single key-value pair, associated with an event.
    description: >-
      Event allows application developers to attach additional information to

      ResponseBeginBlock, ResponseEndBlock, ResponseCheckTx and
      ResponseDeliverTx.

      Later, transactions may be queried using these events.
  tendermint.abci.EventAttribute:
    type: object
    properties:
      key:
        type: string
        format: byte
      value:
        type: string
        format: byte
      index:
        type: boolean
    description: EventAttribute is a single key-value pair, associated with an event.
  cosmos.upgrade.v1beta1.ModuleVersion:
    type: object
    properties:
      name:
        type: string
        title: name of the app module
      version:
        type: string
        format: uint64
        title: consensus version of the app module
    description: |-
      ModuleVersion specifies a module and its consensus version.

      Since: cosmos-sdk 0.43
  cosmos.upgrade.v1beta1.Plan:
    type: object
    properties:
      name:
        type: string
        description: >-
          Sets the name for the upgrade. This name will be used by the upgraded

          version of the software to apply any special "on-upgrade" commands
          during

          the first BeginBlock method after the upgrade is applied. It is also
          used

          to detect whether a software version can handle a given upgrade. If no

          upgrade handler with this name has been set in the software, it will
          be

          assumed that the software is out-of-date when the upgrade Time or
          Height is

          reached and the software will exit.
      time:
        type: string
        format: date-time
        description: >-
          Deprecated: Time based upgrades have been deprecated. Time based
          upgrade logic

          has been removed from the SDK.

          If this field is not empty, an error will be thrown.
      height:
        type: string
        format: int64
        description: |-
          The height at which the upgrade must be performed.
          Only used if Time is not set.
      info:
        type: string
        title: |-
          Any application specific upgrade info to be included on-chain
          such as a git commit that validators could automatically upgrade to
      upgraded_client_state:
        type: object
        properties:
          type_url:
            type: string
            description: >-
              A URL/resource name that uniquely identifies the type of the
              serialized

              protocol buffer message. This string must contain at least

              one "/" character. The last segment of the URL's path must
              represent

              the fully qualified name of the type (as in

              `path/google.protobuf.Duration`). The name should be in a
              canonical form

              (e.g., leading "." is not accepted).


              In practice, teams usually precompile into the binary all types
              that they

              expect it to use in the context of Any. However, for URLs which
              use the

              scheme `http`, `https`, or no scheme, one can optionally set up a
              type

              server that maps type URLs to message definitions as follows:


              * If no scheme is provided, `https` is assumed.

              * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                value in binary format, or produce an error.
              * Applications are allowed to cache lookup results based on the
                URL, or have them precompiled into a binary to avoid any
                lookup. Therefore, binary compatibility needs to be preserved
                on changes to types. (Use versioned type names to manage
                breaking changes.)

              Note: this functionality is not currently available in the
              official

              protobuf release, and it is not used for type URLs beginning with

              type.googleapis.com.


              Schemes other than `http`, `https` (or the empty scheme) might be

              used with implementation specific semantics.
          value:
            type: string
            format: byte
            description: >-
              Must be a valid serialized protocol buffer of the above specified
              type.
        description: >-
          `Any` contains an arbitrary serialized protocol buffer message along
          with a

          URL that describes the type of the serialized message.


          Protobuf library provides support to pack/unpack Any values in the
          form

          of utility functions or additional generated methods of the Any type.


          Example 1: Pack and unpack a message in C++.

              Foo foo = ...;
              Any any;
              any.PackFrom(foo);
              ...
              if (any.UnpackTo(&foo)) {
                ...
              }

          Example 2: Pack and unpack a message in Java.

              Foo foo = ...;
              Any any = Any.pack(foo);
              ...
              if (any.is(Foo.class)) {
                foo = any.unpack(Foo.class);
              }

           Example 3: Pack and unpack a message in Python.

              foo = Foo(...)
              any = Any()
              any.Pack(foo)
              ...
              if any.Is(Foo.DESCRIPTOR):
                any.Unpack(foo)
                ...

           Example 4: Pack and unpack a message in Go

               foo := &pb.Foo{...}
               any, err := ptypes.MarshalAny(foo)
               ...
               foo := &pb.Foo{}
               if err := ptypes.UnmarshalAny(any, foo); err != nil {
                 ...
               }

          The pack methods provided by protobuf library will by default use

          'type.googleapis.com/full.type.name' as the type URL and the unpack

          methods only use the fully qualified type name after the last '/'

          in the type URL, for example "foo.bar.com/x/y.z" will yield type

          name "y.z".



          JSON

          ====

          The JSON representation of an `Any` value uses the regular

          representation of the deserialized, embedded message, with an

          additional field `@type` which contains the type URL. Example:

              package google.profile;
              message Person {
                string first_name = 1;
                string last_name = 2;
              }

              {
                "@type": "type.googleapis.com/google.profile.Person",
                "firstName": <string>,
                "lastName": <string>
              }

          If the embedded message type is well-known and has a custom JSON

          representation, that representation will be embedded adding a field

          `value` which holds the custom JSON in addition to the `@type`

          field. Example (for message [google.protobuf.Duration][]):

              {
                "@type": "type.googleapis.com/google.protobuf.Duration",
                "value": "1.212s"
              }
    description: >-
      Plan specifies information about a planned upgrade and when it should
      occur.
  cosmos.upgrade.v1beta1.QueryAppliedPlanResponse:
    type: object
    properties:
      height:
        type: string
        format: int64
        description: height is the block height at which the plan was applied.
    description: >-
      QueryAppliedPlanResponse is the response type for the Query/AppliedPlan
      RPC

      method.
  cosmos.upgrade.v1beta1.QueryAuthorityResponse:
    type: object
    properties:
      address:
        type: string
    description: 'Since: cosmos-sdk 0.46'
    title: QueryAuthorityResponse is the response type for Query/Authority
  cosmos.upgrade.v1beta1.QueryCurrentPlanResponse:
    type: object
    properties:
      plan:
        description: plan is the current upgrade plan.
        type: object
        properties:
          name:
            type: string
            description: >-
              Sets the name for the upgrade. This name will be used by the
              upgraded

              version of the software to apply any special "on-upgrade" commands
              during

              the first BeginBlock method after the upgrade is applied. It is
              also used

              to detect whether a software version can handle a given upgrade.
              If no

              upgrade handler with this name has been set in the software, it
              will be

              assumed that the software is out-of-date when the upgrade Time or
              Height is

              reached and the software will exit.
          time:
            type: string
            format: date-time
            description: >-
              Deprecated: Time based upgrades have been deprecated. Time based
              upgrade logic

              has been removed from the SDK.

              If this field is not empty, an error will be thrown.
          height:
            type: string
            format: int64
            description: |-
              The height at which the upgrade must be performed.
              Only used if Time is not set.
          info:
            type: string
            title: >-
              Any application specific upgrade info to be included on-chain

              such as a git commit that validators could automatically upgrade
              to
          upgraded_client_state:
            type: object
            properties:
              type_url:
                type: string
                description: >-
                  A URL/resource name that uniquely identifies the type of the
                  serialized

                  protocol buffer message. This string must contain at least

                  one "/" character. The last segment of the URL's path must
                  represent

                  the fully qualified name of the type (as in

                  `path/google.protobuf.Duration`). The name should be in a
                  canonical form

                  (e.g., leading "." is not accepted).


                  In practice, teams usually precompile into the binary all
                  types that they

                  expect it to use in the context of Any. However, for URLs
                  which use the

                  scheme `http`, `https`, or no scheme, one can optionally set
                  up a type

                  server that maps type URLs to message definitions as follows:


                  * If no scheme is provided, `https` is assumed.

                  * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                    value in binary format, or produce an error.
                  * Applications are allowed to cache lookup results based on
                  the
                    URL, or have them precompiled into a binary to avoid any
                    lookup. Therefore, binary compatibility needs to be preserved
                    on changes to types. (Use versioned type names to manage
                    breaking changes.)

                  Note: this functionality is not currently available in the
                  official

                  protobuf release, and it is not used for type URLs beginning
                  with

                  type.googleapis.com.


                  Schemes other than `http`, `https` (or the empty scheme) might
                  be

                  used with implementation specific semantics.
              value:
                type: string
                format: byte
                description: >-
                  Must be a valid serialized protocol buffer of the above
                  specified type.
            description: >-
              `Any` contains an arbitrary serialized protocol buffer message
              along with a

              URL that describes the type of the serialized message.


              Protobuf library provides support to pack/unpack Any values in the
              form

              of utility functions or additional generated methods of the Any
              type.


              Example 1: Pack and unpack a message in C++.

                  Foo foo = ...;
                  Any any;
                  any.PackFrom(foo);
                  ...
                  if (any.UnpackTo(&foo)) {
                    ...
                  }

              Example 2: Pack and unpack a message in Java.

                  Foo foo = ...;
                  Any any = Any.pack(foo);
                  ...
                  if (any.is(Foo.class)) {
                    foo = any.unpack(Foo.class);
                  }

               Example 3: Pack and unpack a message in Python.

                  foo = Foo(...)
                  any = Any()
                  any.Pack(foo)
                  ...
                  if any.Is(Foo.DESCRIPTOR):
                    any.Unpack(foo)
                    ...

               Example 4: Pack and unpack a message in Go

                   foo := &pb.Foo{...}
                   any, err := ptypes.MarshalAny(foo)
                   ...
                   foo := &pb.Foo{}
                   if err := ptypes.UnmarshalAny(any, foo); err != nil {
                     ...
                   }

              The pack methods provided by protobuf library will by default use

              'type.googleapis.com/full.type.name' as the type URL and the
              unpack

              methods only use the fully qualified type name after the last '/'

              in the type URL, for example "foo.bar.com/x/y.z" will yield type

              name "y.z".



              JSON

              ====

              The JSON representation of an `Any` value uses the regular

              representation of the deserialized, embedded message, with an

              additional field `@type` which contains the type URL. Example:

                  package google.profile;
                  message Person {
                    string first_name = 1;
                    string last_name = 2;
                  }

                  {
                    "@type": "type.googleapis.com/google.profile.Person",
                    "firstName": <string>,
                    "lastName": <string>
                  }

              If the embedded message type is well-known and has a custom JSON

              representation, that representation will be embedded adding a
              field

              `value` which holds the custom JSON in addition to the `@type`

              field. Example (for message [google.protobuf.Duration][]):

                  {
                    "@type": "type.googleapis.com/google.protobuf.Duration",
                    "value": "1.212s"
                  }
    description: >-
      QueryCurrentPlanResponse is the response type for the Query/CurrentPlan
      RPC

      method.
  cosmos.upgrade.v1beta1.QueryModuleVersionsResponse:
    type: object
    properties:
      module_versions:
        type: array
        items:
          type: object
          properties:
            name:
              type: string
              title: name of the app module
            version:
              type: string
              format: uint64
              title: consensus version of the app module
          description: |-
            ModuleVersion specifies a module and its consensus version.

            Since: cosmos-sdk 0.43
        description: >-
          module_versions is a list of module names with their consensus
          versions.
    description: >-
      QueryModuleVersionsResponse is the response type for the
      Query/ModuleVersions

      RPC method.


      Since: cosmos-sdk 0.43
  cosmos.upgrade.v1beta1.QueryUpgradedConsensusStateResponse:
    type: object
    properties:
      upgraded_consensus_state:
        type: string
        format: byte
        title: 'Since: cosmos-sdk 0.43'
    description: >-
      QueryUpgradedConsensusStateResponse is the response type for the
      Query/UpgradedConsensusState

      RPC method.
  cosmos.authz.v1beta1.Grant:
    type: object
    properties:
      authorization:
        type: object
        properties:
          type_url:
            type: string
            description: >-
              A URL/resource name that uniquely identifies the type of the
              serialized

              protocol buffer message. This string must contain at least

              one "/" character. The last segment of the URL's path must
              represent

              the fully qualified name of the type (as in

              `path/google.protobuf.Duration`). The name should be in a
              canonical form

              (e.g., leading "." is not accepted).


              In practice, teams usually precompile into the binary all types
              that they

              expect it to use in the context of Any. However, for URLs which
              use the

              scheme `http`, `https`, or no scheme, one can optionally set up a
              type

              server that maps type URLs to message definitions as follows:


              * If no scheme is provided, `https` is assumed.

              * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                value in binary format, or produce an error.
              * Applications are allowed to cache lookup results based on the
                URL, or have them precompiled into a binary to avoid any
                lookup. Therefore, binary compatibility needs to be preserved
                on changes to types. (Use versioned type names to manage
                breaking changes.)

              Note: this functionality is not currently available in the
              official

              protobuf release, and it is not used for type URLs beginning with

              type.googleapis.com.


              Schemes other than `http`, `https` (or the empty scheme) might be

              used with implementation specific semantics.
          value:
            type: string
            format: byte
            description: >-
              Must be a valid serialized protocol buffer of the above specified
              type.
        description: >-
          `Any` contains an arbitrary serialized protocol buffer message along
          with a

          URL that describes the type of the serialized message.


          Protobuf library provides support to pack/unpack Any values in the
          form

          of utility functions or additional generated methods of the Any type.


          Example 1: Pack and unpack a message in C++.

              Foo foo = ...;
              Any any;
              any.PackFrom(foo);
              ...
              if (any.UnpackTo(&foo)) {
                ...
              }

          Example 2: Pack and unpack a message in Java.

              Foo foo = ...;
              Any any = Any.pack(foo);
              ...
              if (any.is(Foo.class)) {
                foo = any.unpack(Foo.class);
              }

           Example 3: Pack and unpack a message in Python.

              foo = Foo(...)
              any = Any()
              any.Pack(foo)
              ...
              if any.Is(Foo.DESCRIPTOR):
                any.Unpack(foo)
                ...

           Example 4: Pack and unpack a message in Go

               foo := &pb.Foo{...}
               any, err := ptypes.MarshalAny(foo)
               ...
               foo := &pb.Foo{}
               if err := ptypes.UnmarshalAny(any, foo); err != nil {
                 ...
               }

          The pack methods provided by protobuf library will by default use

          'type.googleapis.com/full.type.name' as the type URL and the unpack

          methods only use the fully qualified type name after the last '/'

          in the type URL, for example "foo.bar.com/x/y.z" will yield type

          name "y.z".



          JSON

          ====

          The JSON representation of an `Any` value uses the regular

          representation of the deserialized, embedded message, with an

          additional field `@type` which contains the type URL. Example:

              package google.profile;
              message Person {
                string first_name = 1;
                string last_name = 2;
              }

              {
                "@type": "type.googleapis.com/google.profile.Person",
                "firstName": <string>,
                "lastName": <string>
              }

          If the embedded message type is well-known and has a custom JSON

          representation, that representation will be embedded adding a field

          `value` which holds the custom JSON in addition to the `@type`

          field. Example (for message [google.protobuf.Duration][]):

              {
                "@type": "type.googleapis.com/google.protobuf.Duration",
                "value": "1.212s"
              }
      expiration:
        type: string
        format: date-time
        title: >-
          time when the grant will expire and will be pruned. If null, then the
          grant

          doesn't have a time expiration (other conditions  in `authorization`

          may apply to invalidate the grant)
    description: |-
      Grant gives permissions to execute
      the provide method with expiration time.
  cosmos.authz.v1beta1.GrantAuthorization:
    type: object
    properties:
      granter:
        type: string
      grantee:
        type: string
      authorization:
        type: object
        properties:
          type_url:
            type: string
            description: >-
              A URL/resource name that uniquely identifies the type of the
              serialized

              protocol buffer message. This string must contain at least

              one "/" character. The last segment of the URL's path must
              represent

              the fully qualified name of the type (as in

              `path/google.protobuf.Duration`). The name should be in a
              canonical form

              (e.g., leading "." is not accepted).


              In practice, teams usually precompile into the binary all types
              that they

              expect it to use in the context of Any. However, for URLs which
              use the

              scheme `http`, `https`, or no scheme, one can optionally set up a
              type

              server that maps type URLs to message definitions as follows:


              * If no scheme is provided, `https` is assumed.

              * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                value in binary format, or produce an error.
              * Applications are allowed to cache lookup results based on the
                URL, or have them precompiled into a binary to avoid any
                lookup. Therefore, binary compatibility needs to be preserved
                on changes to types. (Use versioned type names to manage
                breaking changes.)

              Note: this functionality is not currently available in the
              official

              protobuf release, and it is not used for type URLs beginning with

              type.googleapis.com.


              Schemes other than `http`, `https` (or the empty scheme) might be

              used with implementation specific semantics.
          value:
            type: string
            format: byte
            description: >-
              Must be a valid serialized protocol buffer of the above specified
              type.
        description: >-
          `Any` contains an arbitrary serialized protocol buffer message along
          with a

          URL that describes the type of the serialized message.


          Protobuf library provides support to pack/unpack Any values in the
          form

          of utility functions or additional generated methods of the Any type.


          Example 1: Pack and unpack a message in C++.

              Foo foo = ...;
              Any any;
              any.PackFrom(foo);
              ...
              if (any.UnpackTo(&foo)) {
                ...
              }

          Example 2: Pack and unpack a message in Java.

              Foo foo = ...;
              Any any = Any.pack(foo);
              ...
              if (any.is(Foo.class)) {
                foo = any.unpack(Foo.class);
              }

           Example 3: Pack and unpack a message in Python.

              foo = Foo(...)
              any = Any()
              any.Pack(foo)
              ...
              if any.Is(Foo.DESCRIPTOR):
                any.Unpack(foo)
                ...

           Example 4: Pack and unpack a message in Go

               foo := &pb.Foo{...}
               any, err := ptypes.MarshalAny(foo)
               ...
               foo := &pb.Foo{}
               if err := ptypes.UnmarshalAny(any, foo); err != nil {
                 ...
               }

          The pack methods provided by protobuf library will by default use

          'type.googleapis.com/full.type.name' as the type URL and the unpack

          methods only use the fully qualified type name after the last '/'

          in the type URL, for example "foo.bar.com/x/y.z" will yield type

          name "y.z".



          JSON

          ====

          The JSON representation of an `Any` value uses the regular

          representation of the deserialized, embedded message, with an

          additional field `@type` which contains the type URL. Example:

              package google.profile;
              message Person {
                string first_name = 1;
                string last_name = 2;
              }

              {
                "@type": "type.googleapis.com/google.profile.Person",
                "firstName": <string>,
                "lastName": <string>
              }

          If the embedded message type is well-known and has a custom JSON

          representation, that representation will be embedded adding a field

          `value` which holds the custom JSON in addition to the `@type`

          field. Example (for message [google.protobuf.Duration][]):

              {
                "@type": "type.googleapis.com/google.protobuf.Duration",
                "value": "1.212s"
              }
      expiration:
        type: string
        format: date-time
    title: >-
      GrantAuthorization extends a grant with both the addresses of the grantee
      and granter.

      It is used in genesis.proto and query.proto
  cosmos.authz.v1beta1.QueryGranteeGrantsResponse:
    type: object
    properties:
      grants:
        type: array
        items:
          type: object
          properties:
            granter:
              type: string
            grantee:
              type: string
            authorization:
              type: object
              properties:
                type_url:
                  type: string
                  description: >-
                    A URL/resource name that uniquely identifies the type of the
                    serialized

                    protocol buffer message. This string must contain at least

                    one "/" character. The last segment of the URL's path must
                    represent

                    the fully qualified name of the type (as in

                    `path/google.protobuf.Duration`). The name should be in a
                    canonical form

                    (e.g., leading "." is not accepted).


                    In practice, teams usually precompile into the binary all
                    types that they

                    expect it to use in the context of Any. However, for URLs
                    which use the

                    scheme `http`, `https`, or no scheme, one can optionally set
                    up a type

                    server that maps type URLs to message definitions as
                    follows:


                    * If no scheme is provided, `https` is assumed.

                    * An HTTP GET on the URL must yield a
                    [google.protobuf.Type][]
                      value in binary format, or produce an error.
                    * Applications are allowed to cache lookup results based on
                    the
                      URL, or have them precompiled into a binary to avoid any
                      lookup. Therefore, binary compatibility needs to be preserved
                      on changes to types. (Use versioned type names to manage
                      breaking changes.)

                    Note: this functionality is not currently available in the
                    official

                    protobuf release, and it is not used for type URLs beginning
                    with

                    type.googleapis.com.


                    Schemes other than `http`, `https` (or the empty scheme)
                    might be

                    used with implementation specific semantics.
                value:
                  type: string
                  format: byte
                  description: >-
                    Must be a valid serialized protocol buffer of the above
                    specified type.
              description: >-
                `Any` contains an arbitrary serialized protocol buffer message
                along with a

                URL that describes the type of the serialized message.


                Protobuf library provides support to pack/unpack Any values in
                the form

                of utility functions or additional generated methods of the Any
                type.


                Example 1: Pack and unpack a message in C++.

                    Foo foo = ...;
                    Any any;
                    any.PackFrom(foo);
                    ...
                    if (any.UnpackTo(&foo)) {
                      ...
                    }

                Example 2: Pack and unpack a message in Java.

                    Foo foo = ...;
                    Any any = Any.pack(foo);
                    ...
                    if (any.is(Foo.class)) {
                      foo = any.unpack(Foo.class);
                    }

                 Example 3: Pack and unpack a message in Python.

                    foo = Foo(...)
                    any = Any()
                    any.Pack(foo)
                    ...
                    if any.Is(Foo.DESCRIPTOR):
                      any.Unpack(foo)
                      ...

                 Example 4: Pack and unpack a message in Go

                     foo := &pb.Foo{...}
                     any, err := ptypes.MarshalAny(foo)
                     ...
                     foo := &pb.Foo{}
                     if err := ptypes.UnmarshalAny(any, foo); err != nil {
                       ...
                     }

                The pack methods provided by protobuf library will by default
                use

                'type.googleapis.com/full.type.name' as the type URL and the
                unpack

                methods only use the fully qualified type name after the last
                '/'

                in the type URL, for example "foo.bar.com/x/y.z" will yield type

                name "y.z".



                JSON

                ====

                The JSON representation of an `Any` value uses the regular

                representation of the deserialized, embedded message, with an

                additional field `@type` which contains the type URL. Example:

                    package google.profile;
                    message Person {
                      string first_name = 1;
                      string last_name = 2;
                    }

                    {
                      "@type": "type.googleapis.com/google.profile.Person",
                      "firstName": <string>,
                      "lastName": <string>
                    }

                If the embedded message type is well-known and has a custom JSON

                representation, that representation will be embedded adding a
                field

                `value` which holds the custom JSON in addition to the `@type`

                field. Example (for message [google.protobuf.Duration][]):

                    {
                      "@type": "type.googleapis.com/google.protobuf.Duration",
                      "value": "1.212s"
                    }
            expiration:
              type: string
              format: date-time
          title: >-
            GrantAuthorization extends a grant with both the addresses of the
            grantee and granter.

            It is used in genesis.proto and query.proto
        description: grants is a list of grants granted to the grantee.
      pagination:
        description: pagination defines an pagination for the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: >-
      QueryGranteeGrantsResponse is the response type for the
      Query/GranteeGrants RPC method.
  cosmos.authz.v1beta1.QueryGranterGrantsResponse:
    type: object
    properties:
      grants:
        type: array
        items:
          type: object
          properties:
            granter:
              type: string
            grantee:
              type: string
            authorization:
              type: object
              properties:
                type_url:
                  type: string
                  description: >-
                    A URL/resource name that uniquely identifies the type of the
                    serialized

                    protocol buffer message. This string must contain at least

                    one "/" character. The last segment of the URL's path must
                    represent

                    the fully qualified name of the type (as in

                    `path/google.protobuf.Duration`). The name should be in a
                    canonical form

                    (e.g., leading "." is not accepted).


                    In practice, teams usually precompile into the binary all
                    types that they

                    expect it to use in the context of Any. However, for URLs
                    which use the

                    scheme `http`, `https`, or no scheme, one can optionally set
                    up a type

                    server that maps type URLs to message definitions as
                    follows:


                    * If no scheme is provided, `https` is assumed.

                    * An HTTP GET on the URL must yield a
                    [google.protobuf.Type][]
                      value in binary format, or produce an error.
                    * Applications are allowed to cache lookup results based on
                    the
                      URL, or have them precompiled into a binary to avoid any
                      lookup. Therefore, binary compatibility needs to be preserved
                      on changes to types. (Use versioned type names to manage
                      breaking changes.)

                    Note: this functionality is not currently available in the
                    official

                    protobuf release, and it is not used for type URLs beginning
                    with

                    type.googleapis.com.


                    Schemes other than `http`, `https` (or the empty scheme)
                    might be

                    used with implementation specific semantics.
                value:
                  type: string
                  format: byte
                  description: >-
                    Must be a valid serialized protocol buffer of the above
                    specified type.
              description: >-
                `Any` contains an arbitrary serialized protocol buffer message
                along with a

                URL that describes the type of the serialized message.


                Protobuf library provides support to pack/unpack Any values in
                the form

                of utility functions or additional generated methods of the Any
                type.


                Example 1: Pack and unpack a message in C++.

                    Foo foo = ...;
                    Any any;
                    any.PackFrom(foo);
                    ...
                    if (any.UnpackTo(&foo)) {
                      ...
                    }

                Example 2: Pack and unpack a message in Java.

                    Foo foo = ...;
                    Any any = Any.pack(foo);
                    ...
                    if (any.is(Foo.class)) {
                      foo = any.unpack(Foo.class);
                    }

                 Example 3: Pack and unpack a message in Python.

                    foo = Foo(...)
                    any = Any()
                    any.Pack(foo)
                    ...
                    if any.Is(Foo.DESCRIPTOR):
                      any.Unpack(foo)
                      ...

                 Example 4: Pack and unpack a message in Go

                     foo := &pb.Foo{...}
                     any, err := ptypes.MarshalAny(foo)
                     ...
                     foo := &pb.Foo{}
                     if err := ptypes.UnmarshalAny(any, foo); err != nil {
                       ...
                     }

                The pack methods provided by protobuf library will by default
                use

                'type.googleapis.com/full.type.name' as the type URL and the
                unpack

                methods only use the fully qualified type name after the last
                '/'

                in the type URL, for example "foo.bar.com/x/y.z" will yield type

                name "y.z".



                JSON

                ====

                The JSON representation of an `Any` value uses the regular

                representation of the deserialized, embedded message, with an

                additional field `@type` which contains the type URL. Example:

                    package google.profile;
                    message Person {
                      string first_name = 1;
                      string last_name = 2;
                    }

                    {
                      "@type": "type.googleapis.com/google.profile.Person",
                      "firstName": <string>,
                      "lastName": <string>
                    }

                If the embedded message type is well-known and has a custom JSON

                representation, that representation will be embedded adding a
                field

                `value` which holds the custom JSON in addition to the `@type`

                field. Example (for message [google.protobuf.Duration][]):

                    {
                      "@type": "type.googleapis.com/google.protobuf.Duration",
                      "value": "1.212s"
                    }
            expiration:
              type: string
              format: date-time
          title: >-
            GrantAuthorization extends a grant with both the addresses of the
            grantee and granter.

            It is used in genesis.proto and query.proto
        description: grants is a list of grants granted by the granter.
      pagination:
        description: pagination defines an pagination for the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: >-
      QueryGranterGrantsResponse is the response type for the
      Query/GranterGrants RPC method.
  cosmos.authz.v1beta1.QueryGrantsResponse:
    type: object
    properties:
      grants:
        type: array
        items:
          type: object
          properties:
            authorization:
              type: object
              properties:
                type_url:
                  type: string
                  description: >-
                    A URL/resource name that uniquely identifies the type of the
                    serialized

                    protocol buffer message. This string must contain at least

                    one "/" character. The last segment of the URL's path must
                    represent

                    the fully qualified name of the type (as in

                    `path/google.protobuf.Duration`). The name should be in a
                    canonical form

                    (e.g., leading "." is not accepted).


                    In practice, teams usually precompile into the binary all
                    types that they

                    expect it to use in the context of Any. However, for URLs
                    which use the

                    scheme `http`, `https`, or no scheme, one can optionally set
                    up a type

                    server that maps type URLs to message definitions as
                    follows:


                    * If no scheme is provided, `https` is assumed.

                    * An HTTP GET on the URL must yield a
                    [google.protobuf.Type][]
                      value in binary format, or produce an error.
                    * Applications are allowed to cache lookup results based on
                    the
                      URL, or have them precompiled into a binary to avoid any
                      lookup. Therefore, binary compatibility needs to be preserved
                      on changes to types. (Use versioned type names to manage
                      breaking changes.)

                    Note: this functionality is not currently available in the
                    official

                    protobuf release, and it is not used for type URLs beginning
                    with

                    type.googleapis.com.


                    Schemes other than `http`, `https` (or the empty scheme)
                    might be

                    used with implementation specific semantics.
                value:
                  type: string
                  format: byte
                  description: >-
                    Must be a valid serialized protocol buffer of the above
                    specified type.
              description: >-
                `Any` contains an arbitrary serialized protocol buffer message
                along with a

                URL that describes the type of the serialized message.


                Protobuf library provides support to pack/unpack Any values in
                the form

                of utility functions or additional generated methods of the Any
                type.


                Example 1: Pack and unpack a message in C++.

                    Foo foo = ...;
                    Any any;
                    any.PackFrom(foo);
                    ...
                    if (any.UnpackTo(&foo)) {
                      ...
                    }

                Example 2: Pack and unpack a message in Java.

                    Foo foo = ...;
                    Any any = Any.pack(foo);
                    ...
                    if (any.is(Foo.class)) {
                      foo = any.unpack(Foo.class);
                    }

                 Example 3: Pack and unpack a message in Python.

                    foo = Foo(...)
                    any = Any()
                    any.Pack(foo)
                    ...
                    if any.Is(Foo.DESCRIPTOR):
                      any.Unpack(foo)
                      ...

                 Example 4: Pack and unpack a message in Go

                     foo := &pb.Foo{...}
                     any, err := ptypes.MarshalAny(foo)
                     ...
                     foo := &pb.Foo{}
                     if err := ptypes.UnmarshalAny(any, foo); err != nil {
                       ...
                     }

                The pack methods provided by protobuf library will by default
                use

                'type.googleapis.com/full.type.name' as the type URL and the
                unpack

                methods only use the fully qualified type name after the last
                '/'

                in the type URL, for example "foo.bar.com/x/y.z" will yield type

                name "y.z".



                JSON

                ====

                The JSON representation of an `Any` value uses the regular

                representation of the deserialized, embedded message, with an

                additional field `@type` which contains the type URL. Example:

                    package google.profile;
                    message Person {
                      string first_name = 1;
                      string last_name = 2;
                    }

                    {
                      "@type": "type.googleapis.com/google.profile.Person",
                      "firstName": <string>,
                      "lastName": <string>
                    }

                If the embedded message type is well-known and has a custom JSON

                representation, that representation will be embedded adding a
                field

                `value` which holds the custom JSON in addition to the `@type`

                field. Example (for message [google.protobuf.Duration][]):

                    {
                      "@type": "type.googleapis.com/google.protobuf.Duration",
                      "value": "1.212s"
                    }
            expiration:
              type: string
              format: date-time
              title: >-
                time when the grant will expire and will be pruned. If null,
                then the grant

                doesn't have a time expiration (other conditions  in
                `authorization`

                may apply to invalidate the grant)
          description: |-
            Grant gives permissions to execute
            the provide method with expiration time.
        description: authorizations is a list of grants granted for grantee by granter.
      pagination:
        description: pagination defines an pagination for the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: >-
      QueryGrantsResponse is the response type for the Query/Authorizations RPC
      method.
  cosmos.feegrant.v1beta1.Grant:
    type: object
    properties:
      granter:
        type: string
        description: >-
          granter is the address of the user granting an allowance of their
          funds.
      grantee:
        type: string
        description: >-
          grantee is the address of the user being granted an allowance of
          another user's funds.
      allowance:
        description: allowance can be any of basic, periodic, allowed fee allowance.
        type: object
        properties:
          type_url:
            type: string
            description: >-
              A URL/resource name that uniquely identifies the type of the
              serialized

              protocol buffer message. This string must contain at least

              one "/" character. The last segment of the URL's path must
              represent

              the fully qualified name of the type (as in

              `path/google.protobuf.Duration`). The name should be in a
              canonical form

              (e.g., leading "." is not accepted).


              In practice, teams usually precompile into the binary all types
              that they

              expect it to use in the context of Any. However, for URLs which
              use the

              scheme `http`, `https`, or no scheme, one can optionally set up a
              type

              server that maps type URLs to message definitions as follows:


              * If no scheme is provided, `https` is assumed.

              * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                value in binary format, or produce an error.
              * Applications are allowed to cache lookup results based on the
                URL, or have them precompiled into a binary to avoid any
                lookup. Therefore, binary compatibility needs to be preserved
                on changes to types. (Use versioned type names to manage
                breaking changes.)

              Note: this functionality is not currently available in the
              official

              protobuf release, and it is not used for type URLs beginning with

              type.googleapis.com.


              Schemes other than `http`, `https` (or the empty scheme) might be

              used with implementation specific semantics.
          value:
            type: string
            format: byte
            description: >-
              Must be a valid serialized protocol buffer of the above specified
              type.
    title: Grant is stored in the KVStore to record a grant with full context
  cosmos.feegrant.v1beta1.QueryAllowanceResponse:
    type: object
    properties:
      allowance:
        description: allowance is a allowance granted for grantee by granter.
        type: object
        properties:
          granter:
            type: string
            description: >-
              granter is the address of the user granting an allowance of their
              funds.
          grantee:
            type: string
            description: >-
              grantee is the address of the user being granted an allowance of
              another user's funds.
          allowance:
            description: allowance can be any of basic, periodic, allowed fee allowance.
            type: object
            properties:
              type_url:
                type: string
                description: >-
                  A URL/resource name that uniquely identifies the type of the
                  serialized

                  protocol buffer message. This string must contain at least

                  one "/" character. The last segment of the URL's path must
                  represent

                  the fully qualified name of the type (as in

                  `path/google.protobuf.Duration`). The name should be in a
                  canonical form

                  (e.g., leading "." is not accepted).


                  In practice, teams usually precompile into the binary all
                  types that they

                  expect it to use in the context of Any. However, for URLs
                  which use the

                  scheme `http`, `https`, or no scheme, one can optionally set
                  up a type

                  server that maps type URLs to message definitions as follows:


                  * If no scheme is provided, `https` is assumed.

                  * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                    value in binary format, or produce an error.
                  * Applications are allowed to cache lookup results based on
                  the
                    URL, or have them precompiled into a binary to avoid any
                    lookup. Therefore, binary compatibility needs to be preserved
                    on changes to types. (Use versioned type names to manage
                    breaking changes.)

                  Note: this functionality is not currently available in the
                  official

                  protobuf release, and it is not used for type URLs beginning
                  with

                  type.googleapis.com.


                  Schemes other than `http`, `https` (or the empty scheme) might
                  be

                  used with implementation specific semantics.
              value:
                type: string
                format: byte
                description: >-
                  Must be a valid serialized protocol buffer of the above
                  specified type.
        title: Grant is stored in the KVStore to record a grant with full context
    description: >-
      QueryAllowanceResponse is the response type for the Query/Allowance RPC
      method.
  cosmos.feegrant.v1beta1.QueryAllowancesByGranterResponse:
    type: object
    properties:
      allowances:
        type: array
        items:
          type: object
          properties:
            granter:
              type: string
              description: >-
                granter is the address of the user granting an allowance of
                their funds.
            grantee:
              type: string
              description: >-
                grantee is the address of the user being granted an allowance of
                another user's funds.
            allowance:
              description: allowance can be any of basic, periodic, allowed fee allowance.
              type: object
              properties:
                type_url:
                  type: string
                  description: >-
                    A URL/resource name that uniquely identifies the type of the
                    serialized

                    protocol buffer message. This string must contain at least

                    one "/" character. The last segment of the URL's path must
                    represent

                    the fully qualified name of the type (as in

                    `path/google.protobuf.Duration`). The name should be in a
                    canonical form

                    (e.g., leading "." is not accepted).


                    In practice, teams usually precompile into the binary all
                    types that they

                    expect it to use in the context of Any. However, for URLs
                    which use the

                    scheme `http`, `https`, or no scheme, one can optionally set
                    up a type

                    server that maps type URLs to message definitions as
                    follows:


                    * If no scheme is provided, `https` is assumed.

                    * An HTTP GET on the URL must yield a
                    [google.protobuf.Type][]
                      value in binary format, or produce an error.
                    * Applications are allowed to cache lookup results based on
                    the
                      URL, or have them precompiled into a binary to avoid any
                      lookup. Therefore, binary compatibility needs to be preserved
                      on changes to types. (Use versioned type names to manage
                      breaking changes.)

                    Note: this functionality is not currently available in the
                    official

                    protobuf release, and it is not used for type URLs beginning
                    with

                    type.googleapis.com.


                    Schemes other than `http`, `https` (or the empty scheme)
                    might be

                    used with implementation specific semantics.
                value:
                  type: string
                  format: byte
                  description: >-
                    Must be a valid serialized protocol buffer of the above
                    specified type.
          title: Grant is stored in the KVStore to record a grant with full context
        description: allowances that have been issued by the granter.
      pagination:
        description: pagination defines an pagination for the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: >-
      QueryAllowancesByGranterResponse is the response type for the
      Query/AllowancesByGranter RPC method.


      Since: cosmos-sdk 0.46
  cosmos.feegrant.v1beta1.QueryAllowancesResponse:
    type: object
    properties:
      allowances:
        type: array
        items:
          type: object
          properties:
            granter:
              type: string
              description: >-
                granter is the address of the user granting an allowance of
                their funds.
            grantee:
              type: string
              description: >-
                grantee is the address of the user being granted an allowance of
                another user's funds.
            allowance:
              description: allowance can be any of basic, periodic, allowed fee allowance.
              type: object
              properties:
                type_url:
                  type: string
                  description: >-
                    A URL/resource name that uniquely identifies the type of the
                    serialized

                    protocol buffer message. This string must contain at least

                    one "/" character. The last segment of the URL's path must
                    represent

                    the fully qualified name of the type (as in

                    `path/google.protobuf.Duration`). The name should be in a
                    canonical form

                    (e.g., leading "." is not accepted).


                    In practice, teams usually precompile into the binary all
                    types that they

                    expect it to use in the context of Any. However, for URLs
                    which use the

                    scheme `http`, `https`, or no scheme, one can optionally set
                    up a type

                    server that maps type URLs to message definitions as
                    follows:


                    * If no scheme is provided, `https` is assumed.

                    * An HTTP GET on the URL must yield a
                    [google.protobuf.Type][]
                      value in binary format, or produce an error.
                    * Applications are allowed to cache lookup results based on
                    the
                      URL, or have them precompiled into a binary to avoid any
                      lookup. Therefore, binary compatibility needs to be preserved
                      on changes to types. (Use versioned type names to manage
                      breaking changes.)

                    Note: this functionality is not currently available in the
                    official

                    protobuf release, and it is not used for type URLs beginning
                    with

                    type.googleapis.com.


                    Schemes other than `http`, `https` (or the empty scheme)
                    might be

                    used with implementation specific semantics.
                value:
                  type: string
                  format: byte
                  description: >-
                    Must be a valid serialized protocol buffer of the above
                    specified type.
          title: Grant is stored in the KVStore to record a grant with full context
        description: allowances are allowance's granted for grantee by granter.
      pagination:
        description: pagination defines an pagination for the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: >-
      QueryAllowancesResponse is the response type for the Query/Allowances RPC
      method.
  cosmos.nft.v1beta1.Class:
    type: object
    properties:
      id:
        type: string
        title: >-
          id defines the unique identifier of the NFT classification, similar to
          the contract address of ERC721
      name:
        type: string
        title: >-
          name defines the human-readable name of the NFT classification.
          Optional
      symbol:
        type: string
        title: symbol is an abbreviated name for nft classification. Optional
      description:
        type: string
        title: description is a brief description of nft classification. Optional
      uri:
        type: string
        title: >-
          uri for the class metadata stored off chain. It can define schema for
          Class and NFT `Data` attributes. Optional
      uri_hash:
        type: string
        title: uri_hash is a hash of the document pointed by uri. Optional
      data:
        type: object
        properties:
          type_url:
            type: string
            description: >-
              A URL/resource name that uniquely identifies the type of the
              serialized

              protocol buffer message. This string must contain at least

              one "/" character. The last segment of the URL's path must
              represent

              the fully qualified name of the type (as in

              `path/google.protobuf.Duration`). The name should be in a
              canonical form

              (e.g., leading "." is not accepted).


              In practice, teams usually precompile into the binary all types
              that they

              expect it to use in the context of Any. However, for URLs which
              use the

              scheme `http`, `https`, or no scheme, one can optionally set up a
              type

              server that maps type URLs to message definitions as follows:


              * If no scheme is provided, `https` is assumed.

              * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                value in binary format, or produce an error.
              * Applications are allowed to cache lookup results based on the
                URL, or have them precompiled into a binary to avoid any
                lookup. Therefore, binary compatibility needs to be preserved
                on changes to types. (Use versioned type names to manage
                breaking changes.)

              Note: this functionality is not currently available in the
              official

              protobuf release, and it is not used for type URLs beginning with

              type.googleapis.com.


              Schemes other than `http`, `https` (or the empty scheme) might be

              used with implementation specific semantics.
          value:
            type: string
            format: byte
            description: >-
              Must be a valid serialized protocol buffer of the above specified
              type.
        description: >-
          `Any` contains an arbitrary serialized protocol buffer message along
          with a

          URL that describes the type of the serialized message.


          Protobuf library provides support to pack/unpack Any values in the
          form

          of utility functions or additional generated methods of the Any type.


          Example 1: Pack and unpack a message in C++.

              Foo foo = ...;
              Any any;
              any.PackFrom(foo);
              ...
              if (any.UnpackTo(&foo)) {
                ...
              }

          Example 2: Pack and unpack a message in Java.

              Foo foo = ...;
              Any any = Any.pack(foo);
              ...
              if (any.is(Foo.class)) {
                foo = any.unpack(Foo.class);
              }

           Example 3: Pack and unpack a message in Python.

              foo = Foo(...)
              any = Any()
              any.Pack(foo)
              ...
              if any.Is(Foo.DESCRIPTOR):
                any.Unpack(foo)
                ...

           Example 4: Pack and unpack a message in Go

               foo := &pb.Foo{...}
               any, err := ptypes.MarshalAny(foo)
               ...
               foo := &pb.Foo{}
               if err := ptypes.UnmarshalAny(any, foo); err != nil {
                 ...
               }

          The pack methods provided by protobuf library will by default use

          'type.googleapis.com/full.type.name' as the type URL and the unpack

          methods only use the fully qualified type name after the last '/'

          in the type URL, for example "foo.bar.com/x/y.z" will yield type

          name "y.z".



          JSON

          ====

          The JSON representation of an `Any` value uses the regular

          representation of the deserialized, embedded message, with an

          additional field `@type` which contains the type URL. Example:

              package google.profile;
              message Person {
                string first_name = 1;
                string last_name = 2;
              }

              {
                "@type": "type.googleapis.com/google.profile.Person",
                "firstName": <string>,
                "lastName": <string>
              }

          If the embedded message type is well-known and has a custom JSON

          representation, that representation will be embedded adding a field

          `value` which holds the custom JSON in addition to the `@type`

          field. Example (for message [google.protobuf.Duration][]):

              {
                "@type": "type.googleapis.com/google.protobuf.Duration",
                "value": "1.212s"
              }
        title: data is the app specific metadata of the NFT class. Optional
    description: Class defines the class of the nft type.
  cosmos.nft.v1beta1.NFT:
    type: object
    properties:
      class_id:
        type: string
        title: >-
          class_id associated with the NFT, similar to the contract address of
          ERC721
      id:
        type: string
        title: id is a unique identifier of the NFT
      uri:
        type: string
        title: uri for the NFT metadata stored off chain
      uri_hash:
        type: string
        title: uri_hash is a hash of the document pointed by uri
      data:
        type: object
        properties:
          type_url:
            type: string
            description: >-
              A URL/resource name that uniquely identifies the type of the
              serialized

              protocol buffer message. This string must contain at least

              one "/" character. The last segment of the URL's path must
              represent

              the fully qualified name of the type (as in

              `path/google.protobuf.Duration`). The name should be in a
              canonical form

              (e.g., leading "." is not accepted).


              In practice, teams usually precompile into the binary all types
              that they

              expect it to use in the context of Any. However, for URLs which
              use the

              scheme `http`, `https`, or no scheme, one can optionally set up a
              type

              server that maps type URLs to message definitions as follows:


              * If no scheme is provided, `https` is assumed.

              * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                value in binary format, or produce an error.
              * Applications are allowed to cache lookup results based on the
                URL, or have them precompiled into a binary to avoid any
                lookup. Therefore, binary compatibility needs to be preserved
                on changes to types. (Use versioned type names to manage
                breaking changes.)

              Note: this functionality is not currently available in the
              official

              protobuf release, and it is not used for type URLs beginning with

              type.googleapis.com.


              Schemes other than `http`, `https` (or the empty scheme) might be

              used with implementation specific semantics.
          value:
            type: string
            format: byte
            description: >-
              Must be a valid serialized protocol buffer of the above specified
              type.
        description: >-
          `Any` contains an arbitrary serialized protocol buffer message along
          with a

          URL that describes the type of the serialized message.


          Protobuf library provides support to pack/unpack Any values in the
          form

          of utility functions or additional generated methods of the Any type.


          Example 1: Pack and unpack a message in C++.

              Foo foo = ...;
              Any any;
              any.PackFrom(foo);
              ...
              if (any.UnpackTo(&foo)) {
                ...
              }

          Example 2: Pack and unpack a message in Java.

              Foo foo = ...;
              Any any = Any.pack(foo);
              ...
              if (any.is(Foo.class)) {
                foo = any.unpack(Foo.class);
              }

           Example 3: Pack and unpack a message in Python.

              foo = Foo(...)
              any = Any()
              any.Pack(foo)
              ...
              if any.Is(Foo.DESCRIPTOR):
                any.Unpack(foo)
                ...

           Example 4: Pack and unpack a message in Go

               foo := &pb.Foo{...}
               any, err := ptypes.MarshalAny(foo)
               ...
               foo := &pb.Foo{}
               if err := ptypes.UnmarshalAny(any, foo); err != nil {
                 ...
               }

          The pack methods provided by protobuf library will by default use

          'type.googleapis.com/full.type.name' as the type URL and the unpack

          methods only use the fully qualified type name after the last '/'

          in the type URL, for example "foo.bar.com/x/y.z" will yield type

          name "y.z".



          JSON

          ====

          The JSON representation of an `Any` value uses the regular

          representation of the deserialized, embedded message, with an

          additional field `@type` which contains the type URL. Example:

              package google.profile;
              message Person {
                string first_name = 1;
                string last_name = 2;
              }

              {
                "@type": "type.googleapis.com/google.profile.Person",
                "firstName": <string>,
                "lastName": <string>
              }

          If the embedded message type is well-known and has a custom JSON

          representation, that representation will be embedded adding a field

          `value` which holds the custom JSON in addition to the `@type`

          field. Example (for message [google.protobuf.Duration][]):

              {
                "@type": "type.googleapis.com/google.protobuf.Duration",
                "value": "1.212s"
              }
        title: data is an app specific data of the NFT. Optional
    description: NFT defines the NFT.
  cosmos.nft.v1beta1.QueryBalanceResponse:
    type: object
    properties:
      amount:
        type: string
        format: uint64
    title: QueryBalanceResponse is the response type for the Query/Balance RPC method
  cosmos.nft.v1beta1.QueryClassResponse:
    type: object
    properties:
      class:
        type: object
        properties:
          id:
            type: string
            title: >-
              id defines the unique identifier of the NFT classification,
              similar to the contract address of ERC721
          name:
            type: string
            title: >-
              name defines the human-readable name of the NFT classification.
              Optional
          symbol:
            type: string
            title: symbol is an abbreviated name for nft classification. Optional
          description:
            type: string
            title: description is a brief description of nft classification. Optional
          uri:
            type: string
            title: >-
              uri for the class metadata stored off chain. It can define schema
              for Class and NFT `Data` attributes. Optional
          uri_hash:
            type: string
            title: uri_hash is a hash of the document pointed by uri. Optional
          data:
            type: object
            properties:
              type_url:
                type: string
                description: >-
                  A URL/resource name that uniquely identifies the type of the
                  serialized

                  protocol buffer message. This string must contain at least

                  one "/" character. The last segment of the URL's path must
                  represent

                  the fully qualified name of the type (as in

                  `path/google.protobuf.Duration`). The name should be in a
                  canonical form

                  (e.g., leading "." is not accepted).


                  In practice, teams usually precompile into the binary all
                  types that they

                  expect it to use in the context of Any. However, for URLs
                  which use the

                  scheme `http`, `https`, or no scheme, one can optionally set
                  up a type

                  server that maps type URLs to message definitions as follows:


                  * If no scheme is provided, `https` is assumed.

                  * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                    value in binary format, or produce an error.
                  * Applications are allowed to cache lookup results based on
                  the
                    URL, or have them precompiled into a binary to avoid any
                    lookup. Therefore, binary compatibility needs to be preserved
                    on changes to types. (Use versioned type names to manage
                    breaking changes.)

                  Note: this functionality is not currently available in the
                  official

                  protobuf release, and it is not used for type URLs beginning
                  with

                  type.googleapis.com.


                  Schemes other than `http`, `https` (or the empty scheme) might
                  be

                  used with implementation specific semantics.
              value:
                type: string
                format: byte
                description: >-
                  Must be a valid serialized protocol buffer of the above
                  specified type.
            description: >-
              `Any` contains an arbitrary serialized protocol buffer message
              along with a

              URL that describes the type of the serialized message.


              Protobuf library provides support to pack/unpack Any values in the
              form

              of utility functions or additional generated methods of the Any
              type.


              Example 1: Pack and unpack a message in C++.

                  Foo foo = ...;
                  Any any;
                  any.PackFrom(foo);
                  ...
                  if (any.UnpackTo(&foo)) {
                    ...
                  }

              Example 2: Pack and unpack a message in Java.

                  Foo foo = ...;
                  Any any = Any.pack(foo);
                  ...
                  if (any.is(Foo.class)) {
                    foo = any.unpack(Foo.class);
                  }

               Example 3: Pack and unpack a message in Python.

                  foo = Foo(...)
                  any = Any()
                  any.Pack(foo)
                  ...
                  if any.Is(Foo.DESCRIPTOR):
                    any.Unpack(foo)
                    ...

               Example 4: Pack and unpack a message in Go

                   foo := &pb.Foo{...}
                   any, err := ptypes.MarshalAny(foo)
                   ...
                   foo := &pb.Foo{}
                   if err := ptypes.UnmarshalAny(any, foo); err != nil {
                     ...
                   }

              The pack methods provided by protobuf library will by default use

              'type.googleapis.com/full.type.name' as the type URL and the
              unpack

              methods only use the fully qualified type name after the last '/'

              in the type URL, for example "foo.bar.com/x/y.z" will yield type

              name "y.z".



              JSON

              ====

              The JSON representation of an `Any` value uses the regular

              representation of the deserialized, embedded message, with an

              additional field `@type` which contains the type URL. Example:

                  package google.profile;
                  message Person {
                    string first_name = 1;
                    string last_name = 2;
                  }

                  {
                    "@type": "type.googleapis.com/google.profile.Person",
                    "firstName": <string>,
                    "lastName": <string>
                  }

              If the embedded message type is well-known and has a custom JSON

              representation, that representation will be embedded adding a
              field

              `value` which holds the custom JSON in addition to the `@type`

              field. Example (for message [google.protobuf.Duration][]):

                  {
                    "@type": "type.googleapis.com/google.protobuf.Duration",
                    "value": "1.212s"
                  }
            title: data is the app specific metadata of the NFT class. Optional
        description: Class defines the class of the nft type.
    title: QueryClassResponse is the response type for the Query/Class RPC method
  cosmos.nft.v1beta1.QueryClassesResponse:
    type: object
    properties:
      classes:
        type: array
        items:
          type: object
          properties:
            id:
              type: string
              title: >-
                id defines the unique identifier of the NFT classification,
                similar to the contract address of ERC721
            name:
              type: string
              title: >-
                name defines the human-readable name of the NFT classification.
                Optional
            symbol:
              type: string
              title: symbol is an abbreviated name for nft classification. Optional
            description:
              type: string
              title: >-
                description is a brief description of nft classification.
                Optional
            uri:
              type: string
              title: >-
                uri for the class metadata stored off chain. It can define
                schema for Class and NFT `Data` attributes. Optional
            uri_hash:
              type: string
              title: uri_hash is a hash of the document pointed by uri. Optional
            data:
              type: object
              properties:
                type_url:
                  type: string
                  description: >-
                    A URL/resource name that uniquely identifies the type of the
                    serialized

                    protocol buffer message. This string must contain at least

                    one "/" character. The last segment of the URL's path must
                    represent

                    the fully qualified name of the type (as in

                    `path/google.protobuf.Duration`). The name should be in a
                    canonical form

                    (e.g., leading "." is not accepted).


                    In practice, teams usually precompile into the binary all
                    types that they

                    expect it to use in the context of Any. However, for URLs
                    which use the

                    scheme `http`, `https`, or no scheme, one can optionally set
                    up a type

                    server that maps type URLs to message definitions as
                    follows:


                    * If no scheme is provided, `https` is assumed.

                    * An HTTP GET on the URL must yield a
                    [google.protobuf.Type][]
                      value in binary format, or produce an error.
                    * Applications are allowed to cache lookup results based on
                    the
                      URL, or have them precompiled into a binary to avoid any
                      lookup. Therefore, binary compatibility needs to be preserved
                      on changes to types. (Use versioned type names to manage
                      breaking changes.)

                    Note: this functionality is not currently available in the
                    official

                    protobuf release, and it is not used for type URLs beginning
                    with

                    type.googleapis.com.


                    Schemes other than `http`, `https` (or the empty scheme)
                    might be

                    used with implementation specific semantics.
                value:
                  type: string
                  format: byte
                  description: >-
                    Must be a valid serialized protocol buffer of the above
                    specified type.
              description: >-
                `Any` contains an arbitrary serialized protocol buffer message
                along with a

                URL that describes the type of the serialized message.


                Protobuf library provides support to pack/unpack Any values in
                the form

                of utility functions or additional generated methods of the Any
                type.


                Example 1: Pack and unpack a message in C++.

                    Foo foo = ...;
                    Any any;
                    any.PackFrom(foo);
                    ...
                    if (any.UnpackTo(&foo)) {
                      ...
                    }

                Example 2: Pack and unpack a message in Java.

                    Foo foo = ...;
                    Any any = Any.pack(foo);
                    ...
                    if (any.is(Foo.class)) {
                      foo = any.unpack(Foo.class);
                    }

                 Example 3: Pack and unpack a message in Python.

                    foo = Foo(...)
                    any = Any()
                    any.Pack(foo)
                    ...
                    if any.Is(Foo.DESCRIPTOR):
                      any.Unpack(foo)
                      ...

                 Example 4: Pack and unpack a message in Go

                     foo := &pb.Foo{...}
                     any, err := ptypes.MarshalAny(foo)
                     ...
                     foo := &pb.Foo{}
                     if err := ptypes.UnmarshalAny(any, foo); err != nil {
                       ...
                     }

                The pack methods provided by protobuf library will by default
                use

                'type.googleapis.com/full.type.name' as the type URL and the
                unpack

                methods only use the fully qualified type name after the last
                '/'

                in the type URL, for example "foo.bar.com/x/y.z" will yield type

                name "y.z".



                JSON

                ====

                The JSON representation of an `Any` value uses the regular

                representation of the deserialized, embedded message, with an

                additional field `@type` which contains the type URL. Example:

                    package google.profile;
                    message Person {
                      string first_name = 1;
                      string last_name = 2;
                    }

                    {
                      "@type": "type.googleapis.com/google.profile.Person",
                      "firstName": <string>,
                      "lastName": <string>
                    }

                If the embedded message type is well-known and has a custom JSON

                representation, that representation will be embedded adding a
                field

                `value` which holds the custom JSON in addition to the `@type`

                field. Example (for message [google.protobuf.Duration][]):

                    {
                      "@type": "type.googleapis.com/google.protobuf.Duration",
                      "value": "1.212s"
                    }
              title: data is the app specific metadata of the NFT class. Optional
          description: Class defines the class of the nft type.
      pagination:
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
        description: |-
          PageResponse is to be embedded in gRPC response messages where the
          corresponding request message has used PageRequest.

           message SomeResponse {
                   repeated Bar results = 1;
                   PageResponse page = 2;
           }
    title: QueryClassesResponse is the response type for the Query/Classes RPC method
  cosmos.nft.v1beta1.QueryNFTResponse:
    type: object
    properties:
      nft:
        type: object
        properties:
          class_id:
            type: string
            title: >-
              class_id associated with the NFT, similar to the contract address
              of ERC721
          id:
            type: string
            title: id is a unique identifier of the NFT
          uri:
            type: string
            title: uri for the NFT metadata stored off chain
          uri_hash:
            type: string
            title: uri_hash is a hash of the document pointed by uri
          data:
            type: object
            properties:
              type_url:
                type: string
                description: >-
                  A URL/resource name that uniquely identifies the type of the
                  serialized

                  protocol buffer message. This string must contain at least

                  one "/" character. The last segment of the URL's path must
                  represent

                  the fully qualified name of the type (as in

                  `path/google.protobuf.Duration`). The name should be in a
                  canonical form

                  (e.g., leading "." is not accepted).


                  In practice, teams usually precompile into the binary all
                  types that they

                  expect it to use in the context of Any. However, for URLs
                  which use the

                  scheme `http`, `https`, or no scheme, one can optionally set
                  up a type

                  server that maps type URLs to message definitions as follows:


                  * If no scheme is provided, `https` is assumed.

                  * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                    value in binary format, or produce an error.
                  * Applications are allowed to cache lookup results based on
                  the
                    URL, or have them precompiled into a binary to avoid any
                    lookup. Therefore, binary compatibility needs to be preserved
                    on changes to types. (Use versioned type names to manage
                    breaking changes.)

                  Note: this functionality is not currently available in the
                  official

                  protobuf release, and it is not used for type URLs beginning
                  with

                  type.googleapis.com.


                  Schemes other than `http`, `https` (or the empty scheme) might
                  be

                  used with implementation specific semantics.
              value:
                type: string
                format: byte
                description: >-
                  Must be a valid serialized protocol buffer of the above
                  specified type.
            description: >-
              `Any` contains an arbitrary serialized protocol buffer message
              along with a

              URL that describes the type of the serialized message.


              Protobuf library provides support to pack/unpack Any values in the
              form

              of utility functions or additional generated methods of the Any
              type.


              Example 1: Pack and unpack a message in C++.

                  Foo foo = ...;
                  Any any;
                  any.PackFrom(foo);
                  ...
                  if (any.UnpackTo(&foo)) {
                    ...
                  }

              Example 2: Pack and unpack a message in Java.

                  Foo foo = ...;
                  Any any = Any.pack(foo);
                  ...
                  if (any.is(Foo.class)) {
                    foo = any.unpack(Foo.class);
                  }

               Example 3: Pack and unpack a message in Python.

                  foo = Foo(...)
                  any = Any()
                  any.Pack(foo)
                  ...
                  if any.Is(Foo.DESCRIPTOR):
                    any.Unpack(foo)
                    ...

               Example 4: Pack and unpack a message in Go

                   foo := &pb.Foo{...}
                   any, err := ptypes.MarshalAny(foo)
                   ...
                   foo := &pb.Foo{}
                   if err := ptypes.UnmarshalAny(any, foo); err != nil {
                     ...
                   }

              The pack methods provided by protobuf library will by default use

              'type.googleapis.com/full.type.name' as the type URL and the
              unpack

              methods only use the fully qualified type name after the last '/'

              in the type URL, for example "foo.bar.com/x/y.z" will yield type

              name "y.z".



              JSON

              ====

              The JSON representation of an `Any` value uses the regular

              representation of the deserialized, embedded message, with an

              additional field `@type` which contains the type URL. Example:

                  package google.profile;
                  message Person {
                    string first_name = 1;
                    string last_name = 2;
                  }

                  {
                    "@type": "type.googleapis.com/google.profile.Person",
                    "firstName": <string>,
                    "lastName": <string>
                  }

              If the embedded message type is well-known and has a custom JSON

              representation, that representation will be embedded adding a
              field

              `value` which holds the custom JSON in addition to the `@type`

              field. Example (for message [google.protobuf.Duration][]):

                  {
                    "@type": "type.googleapis.com/google.protobuf.Duration",
                    "value": "1.212s"
                  }
            title: data is an app specific data of the NFT. Optional
        description: NFT defines the NFT.
    title: QueryNFTResponse is the response type for the Query/NFT RPC method
  cosmos.nft.v1beta1.QueryNFTsResponse:
    type: object
    properties:
      nfts:
        type: array
        items:
          type: object
          properties:
            class_id:
              type: string
              title: >-
                class_id associated with the NFT, similar to the contract
                address of ERC721
            id:
              type: string
              title: id is a unique identifier of the NFT
            uri:
              type: string
              title: uri for the NFT metadata stored off chain
            uri_hash:
              type: string
              title: uri_hash is a hash of the document pointed by uri
            data:
              type: object
              properties:
                type_url:
                  type: string
                  description: >-
                    A URL/resource name that uniquely identifies the type of the
                    serialized

                    protocol buffer message. This string must contain at least

                    one "/" character. The last segment of the URL's path must
                    represent

                    the fully qualified name of the type (as in

                    `path/google.protobuf.Duration`). The name should be in a
                    canonical form

                    (e.g., leading "." is not accepted).


                    In practice, teams usually precompile into the binary all
                    types that they

                    expect it to use in the context of Any. However, for URLs
                    which use the

                    scheme `http`, `https`, or no scheme, one can optionally set
                    up a type

                    server that maps type URLs to message definitions as
                    follows:


                    * If no scheme is provided, `https` is assumed.

                    * An HTTP GET on the URL must yield a
                    [google.protobuf.Type][]
                      value in binary format, or produce an error.
                    * Applications are allowed to cache lookup results based on
                    the
                      URL, or have them precompiled into a binary to avoid any
                      lookup. Therefore, binary compatibility needs to be preserved
                      on changes to types. (Use versioned type names to manage
                      breaking changes.)

                    Note: this functionality is not currently available in the
                    official

                    protobuf release, and it is not used for type URLs beginning
                    with

                    type.googleapis.com.


                    Schemes other than `http`, `https` (or the empty scheme)
                    might be

                    used with implementation specific semantics.
                value:
                  type: string
                  format: byte
                  description: >-
                    Must be a valid serialized protocol buffer of the above
                    specified type.
              description: >-
                `Any` contains an arbitrary serialized protocol buffer message
                along with a

                URL that describes the type of the serialized message.


                Protobuf library provides support to pack/unpack Any values in
                the form

                of utility functions or additional generated methods of the Any
                type.


                Example 1: Pack and unpack a message in C++.

                    Foo foo = ...;
                    Any any;
                    any.PackFrom(foo);
                    ...
                    if (any.UnpackTo(&foo)) {
                      ...
                    }

                Example 2: Pack and unpack a message in Java.

                    Foo foo = ...;
                    Any any = Any.pack(foo);
                    ...
                    if (any.is(Foo.class)) {
                      foo = any.unpack(Foo.class);
                    }

                 Example 3: Pack and unpack a message in Python.

                    foo = Foo(...)
                    any = Any()
                    any.Pack(foo)
                    ...
                    if any.Is(Foo.DESCRIPTOR):
                      any.Unpack(foo)
                      ...

                 Example 4: Pack and unpack a message in Go

                     foo := &pb.Foo{...}
                     any, err := ptypes.MarshalAny(foo)
                     ...
                     foo := &pb.Foo{}
                     if err := ptypes.UnmarshalAny(any, foo); err != nil {
                       ...
                     }

                The pack methods provided by protobuf library will by default
                use

                'type.googleapis.com/full.type.name' as the type URL and the
                unpack

                methods only use the fully qualified type name after the last
                '/'

                in the type URL, for example "foo.bar.com/x/y.z" will yield type

                name "y.z".



                JSON

                ====

                The JSON representation of an `Any` value uses the regular

                representation of the deserialized, embedded message, with an

                additional field `@type` which contains the type URL. Example:

                    package google.profile;
                    message Person {
                      string first_name = 1;
                      string last_name = 2;
                    }

                    {
                      "@type": "type.googleapis.com/google.profile.Person",
                      "firstName": <string>,
                      "lastName": <string>
                    }

                If the embedded message type is well-known and has a custom JSON

                representation, that representation will be embedded adding a
                field

                `value` which holds the custom JSON in addition to the `@type`

                field. Example (for message [google.protobuf.Duration][]):

                    {
                      "@type": "type.googleapis.com/google.protobuf.Duration",
                      "value": "1.212s"
                    }
              title: data is an app specific data of the NFT. Optional
          description: NFT defines the NFT.
      pagination:
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
        description: |-
          PageResponse is to be embedded in gRPC response messages where the
          corresponding request message has used PageRequest.

           message SomeResponse {
                   repeated Bar results = 1;
                   PageResponse page = 2;
           }
    title: QueryNFTsResponse is the response type for the Query/NFTs RPC methods
  cosmos.nft.v1beta1.QueryOwnerResponse:
    type: object
    properties:
      owner:
        type: string
    title: QueryOwnerResponse is the response type for the Query/Owner RPC method
  cosmos.nft.v1beta1.QuerySupplyResponse:
    type: object
    properties:
      amount:
        type: string
        format: uint64
    title: QuerySupplyResponse is the response type for the Query/Supply RPC method
  cosmos.group.v1.GroupInfo:
    type: object
    properties:
      id:
        type: string
        format: uint64
        description: id is the unique ID of the group.
      admin:
        type: string
        description: admin is the account address of the group's admin.
      metadata:
        type: string
        description: metadata is any arbitrary metadata to attached to the group.
      version:
        type: string
        format: uint64
        title: >-
          version is used to track changes to a group's membership structure
          that

          would break existing proposals. Whenever any members weight is
          changed,

          or any member is added or removed this version is incremented and will

          cause proposals based on older versions of this group to fail
      total_weight:
        type: string
        description: total_weight is the sum of the group members' weights.
      created_at:
        type: string
        format: date-time
        description: created_at is a timestamp specifying when a group was created.
    description: GroupInfo represents the high-level on-chain information for a group.
  cosmos.group.v1.GroupMember:
    type: object
    properties:
      group_id:
        type: string
        format: uint64
        description: group_id is the unique ID of the group.
      member:
        description: member is the member data.
        type: object
        properties:
          address:
            type: string
            description: address is the member's account address.
          weight:
            type: string
            description: >-
              weight is the member's voting weight that should be greater than
              0.
          metadata:
            type: string
            description: metadata is any arbitrary metadata attached to the member.
          added_at:
            type: string
            format: date-time
            description: added_at is a timestamp specifying when a member was added.
    description: GroupMember represents the relationship between a group and a member.
  cosmos.group.v1.GroupPolicyInfo:
    type: object
    properties:
      address:
        type: string
        description: address is the account address of group policy.
      group_id:
        type: string
        format: uint64
        description: group_id is the unique ID of the group.
      admin:
        type: string
        description: admin is the account address of the group admin.
      metadata:
        type: string
        description: metadata is any arbitrary metadata to attached to the group policy.
      version:
        type: string
        format: uint64
        description: >-
          version is used to track changes to a group's GroupPolicyInfo
          structure that

          would create a different result on a running proposal.
      decision_policy:
        type: object
        properties:
          type_url:
            type: string
            description: >-
              A URL/resource name that uniquely identifies the type of the
              serialized

              protocol buffer message. This string must contain at least

              one "/" character. The last segment of the URL's path must
              represent

              the fully qualified name of the type (as in

              `path/google.protobuf.Duration`). The name should be in a
              canonical form

              (e.g., leading "." is not accepted).


              In practice, teams usually precompile into the binary all types
              that they

              expect it to use in the context of Any. However, for URLs which
              use the

              scheme `http`, `https`, or no scheme, one can optionally set up a
              type

              server that maps type URLs to message definitions as follows:


              * If no scheme is provided, `https` is assumed.

              * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                value in binary format, or produce an error.
              * Applications are allowed to cache lookup results based on the
                URL, or have them precompiled into a binary to avoid any
                lookup. Therefore, binary compatibility needs to be preserved
                on changes to types. (Use versioned type names to manage
                breaking changes.)

              Note: this functionality is not currently available in the
              official

              protobuf release, and it is not used for type URLs beginning with

              type.googleapis.com.


              Schemes other than `http`, `https` (or the empty scheme) might be

              used with implementation specific semantics.
          value:
            type: string
            format: byte
            description: >-
              Must be a valid serialized protocol buffer of the above specified
              type.
        description: >-
          `Any` contains an arbitrary serialized protocol buffer message along
          with a

          URL that describes the type of the serialized message.


          Protobuf library provides support to pack/unpack Any values in the
          form

          of utility functions or additional generated methods of the Any type.


          Example 1: Pack and unpack a message in C++.

              Foo foo = ...;
              Any any;
              any.PackFrom(foo);
              ...
              if (any.UnpackTo(&foo)) {
                ...
              }

          Example 2: Pack and unpack a message in Java.

              Foo foo = ...;
              Any any = Any.pack(foo);
              ...
              if (any.is(Foo.class)) {
                foo = any.unpack(Foo.class);
              }

           Example 3: Pack and unpack a message in Python.

              foo = Foo(...)
              any = Any()
              any.Pack(foo)
              ...
              if any.Is(Foo.DESCRIPTOR):
                any.Unpack(foo)
                ...

           Example 4: Pack and unpack a message in Go

               foo := &pb.Foo{...}
               any, err := ptypes.MarshalAny(foo)
               ...
               foo := &pb.Foo{}
               if err := ptypes.UnmarshalAny(any, foo); err != nil {
                 ...
               }

          The pack methods provided by protobuf library will by default use

          'type.googleapis.com/full.type.name' as the type URL and the unpack

          methods only use the fully qualified type name after the last '/'

          in the type URL, for example "foo.bar.com/x/y.z" will yield type

          name "y.z".



          JSON

          ====

          The JSON representation of an `Any` value uses the regular

          representation of the deserialized, embedded message, with an

          additional field `@type` which contains the type URL. Example:

              package google.profile;
              message Person {
                string first_name = 1;
                string last_name = 2;
              }

              {
                "@type": "type.googleapis.com/google.profile.Person",
                "firstName": <string>,
                "lastName": <string>
              }

          If the embedded message type is well-known and has a custom JSON

          representation, that representation will be embedded adding a field

          `value` which holds the custom JSON in addition to the `@type`

          field. Example (for message [google.protobuf.Duration][]):

              {
                "@type": "type.googleapis.com/google.protobuf.Duration",
                "value": "1.212s"
              }
      created_at:
        type: string
        format: date-time
        description: created_at is a timestamp specifying when a group policy was created.
    description: >-
      GroupPolicyInfo represents the high-level on-chain information for a group
      policy.
  cosmos.group.v1.Member:
    type: object
    properties:
      address:
        type: string
        description: address is the member's account address.
      weight:
        type: string
        description: weight is the member's voting weight that should be greater than 0.
      metadata:
        type: string
        description: metadata is any arbitrary metadata attached to the member.
      added_at:
        type: string
        format: date-time
        description: added_at is a timestamp specifying when a member was added.
    description: |-
      Member represents a group member with an account address,
      non-zero weight, metadata and added_at timestamp.
  cosmos.group.v1.Proposal:
    type: object
    properties:
      id:
        type: string
        format: uint64
        description: id is the unique id of the proposal.
      group_policy_address:
        type: string
        description: group_policy_address is the account address of group policy.
      metadata:
        type: string
        description: metadata is any arbitrary metadata to attached to the proposal.
      proposers:
        type: array
        items:
          type: string
        description: proposers are the account addresses of the proposers.
      submit_time:
        type: string
        format: date-time
        description: submit_time is a timestamp specifying when a proposal was submitted.
      group_version:
        type: string
        format: uint64
        description: |-
          group_version tracks the version of the group at proposal submission.
          This field is here for informational purposes only.
      group_policy_version:
        type: string
        format: uint64
        description: >-
          group_policy_version tracks the version of the group policy at
          proposal submission.

          When a decision policy is changed, existing proposals from previous
          policy

          versions will become invalid with the `ABORTED` status.

          This field is here for informational purposes only.
      status:
        description: >-
          status represents the high level position in the life cycle of the
          proposal. Initial value is Submitted.
        type: string
        enum:
          - PROPOSAL_STATUS_UNSPECIFIED
          - PROPOSAL_STATUS_SUBMITTED
          - PROPOSAL_STATUS_ACCEPTED
          - PROPOSAL_STATUS_REJECTED
          - PROPOSAL_STATUS_ABORTED
          - PROPOSAL_STATUS_WITHDRAWN
        default: PROPOSAL_STATUS_UNSPECIFIED
      final_tally_result:
        description: >-
          final_tally_result contains the sums of all weighted votes for this

          proposal for each vote option. It is empty at submission, and only

          populated after tallying, at voting period end or at proposal
          execution,

          whichever happens first.
        type: object
        properties:
          yes_count:
            type: string
            description: yes_count is the weighted sum of yes votes.
          abstain_count:
            type: string
            description: abstain_count is the weighted sum of abstainers.
          no_count:
            type: string
            description: no_count is the weighted sum of no votes.
          no_with_veto_count:
            type: string
            description: no_with_veto_count is the weighted sum of veto.
      voting_period_end:
        type: string
        format: date-time
        description: >-
          voting_period_end is the timestamp before which voting must be done.

          Unless a successfull MsgExec is called before (to execute a proposal
          whose

          tally is successful before the voting period ends), tallying will be
          done

          at this point, and the `final_tally_result`and `status` fields will be

          accordingly updated.
      executor_result:
        description: >-
          executor_result is the final result of the proposal execution. Initial
          value is NotRun.
        type: string
        enum:
          - PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED
          - PROPOSAL_EXECUTOR_RESULT_NOT_RUN
          - PROPOSAL_EXECUTOR_RESULT_SUCCESS
          - PROPOSAL_EXECUTOR_RESULT_FAILURE
        default: PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED
      messages:
        type: array
        items:
          type: object
          properties:
            type_url:
              type: string
              description: >-
                A URL/resource name that uniquely identifies the type of the
                serialized

                protocol buffer message. This string must contain at least

                one "/" character. The last segment of the URL's path must
                represent

                the fully qualified name of the type (as in

                `path/google.protobuf.Duration`). The name should be in a
                canonical form

                (e.g., leading "." is not accepted).


                In practice, teams usually precompile into the binary all types
                that they

                expect it to use in the context of Any. However, for URLs which
                use the

                scheme `http`, `https`, or no scheme, one can optionally set up
                a type

                server that maps type URLs to message definitions as follows:


                * If no scheme is provided, `https` is assumed.

                * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                  value in binary format, or produce an error.
                * Applications are allowed to cache lookup results based on the
                  URL, or have them precompiled into a binary to avoid any
                  lookup. Therefore, binary compatibility needs to be preserved
                  on changes to types. (Use versioned type names to manage
                  breaking changes.)

                Note: this functionality is not currently available in the
                official

                protobuf release, and it is not used for type URLs beginning
                with

                type.googleapis.com.


                Schemes other than `http`, `https` (or the empty scheme) might
                be

                used with implementation specific semantics.
            value:
              type: string
              format: byte
              description: >-
                Must be a valid serialized protocol buffer of the above
                specified type.
          description: >-
            `Any` contains an arbitrary serialized protocol buffer message along
            with a

            URL that describes the type of the serialized message.


            Protobuf library provides support to pack/unpack Any values in the
            form

            of utility functions or additional generated methods of the Any
            type.


            Example 1: Pack and unpack a message in C++.

                Foo foo = ...;
                Any any;
                any.PackFrom(foo);
                ...
                if (any.UnpackTo(&foo)) {
                  ...
                }

            Example 2: Pack and unpack a message in Java.

                Foo foo = ...;
                Any any = Any.pack(foo);
                ...
                if (any.is(Foo.class)) {
                  foo = any.unpack(Foo.class);
                }

             Example 3: Pack and unpack a message in Python.

                foo = Foo(...)
                any = Any()
                any.Pack(foo)
                ...
                if any.Is(Foo.DESCRIPTOR):
                  any.Unpack(foo)
                  ...

             Example 4: Pack and unpack a message in Go

                 foo := &pb.Foo{...}
                 any, err := ptypes.MarshalAny(foo)
                 ...
                 foo := &pb.Foo{}
                 if err := ptypes.UnmarshalAny(any, foo); err != nil {
                   ...
                 }

            The pack methods provided by protobuf library will by default use

            'type.googleapis.com/full.type.name' as the type URL and the unpack

            methods only use the fully qualified type name after the last '/'

            in the type URL, for example "foo.bar.com/x/y.z" will yield type

            name "y.z".



            JSON

            ====

            The JSON representation of an `Any` value uses the regular

            representation of the deserialized, embedded message, with an

            additional field `@type` which contains the type URL. Example:

                package google.profile;
                message Person {
                  string first_name = 1;
                  string last_name = 2;
                }

                {
                  "@type": "type.googleapis.com/google.profile.Person",
                  "firstName": <string>,
                  "lastName": <string>
                }

            If the embedded message type is well-known and has a custom JSON

            representation, that representation will be embedded adding a field

            `value` which holds the custom JSON in addition to the `@type`

            field. Example (for message [google.protobuf.Duration][]):

                {
                  "@type": "type.googleapis.com/google.protobuf.Duration",
                  "value": "1.212s"
                }
        description: >-
          messages is a list of `sdk.Msg`s that will be executed if the proposal
          passes.
    description: >-
      Proposal defines a group proposal. Any member of a group can submit a
      proposal

      for a group policy to decide upon.

      A proposal consists of a set of `sdk.Msg`s that will be executed if the
      proposal

      passes as well as some optional metadata associated with the proposal.
  cosmos.group.v1.ProposalExecutorResult:
    type: string
    enum:
      - PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED
      - PROPOSAL_EXECUTOR_RESULT_NOT_RUN
      - PROPOSAL_EXECUTOR_RESULT_SUCCESS
      - PROPOSAL_EXECUTOR_RESULT_FAILURE
    default: PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED
    description: |-
      ProposalExecutorResult defines types of proposal executor results.

       - PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED: An empty value is not allowed.
       - PROPOSAL_EXECUTOR_RESULT_NOT_RUN: We have not yet run the executor.
       - PROPOSAL_EXECUTOR_RESULT_SUCCESS: The executor was successful and proposed action updated state.
       - PROPOSAL_EXECUTOR_RESULT_FAILURE: The executor returned an error and proposed action didn't update state.
  cosmos.group.v1.ProposalStatus:
    type: string
    enum:
      - PROPOSAL_STATUS_UNSPECIFIED
      - PROPOSAL_STATUS_SUBMITTED
      - PROPOSAL_STATUS_ACCEPTED
      - PROPOSAL_STATUS_REJECTED
      - PROPOSAL_STATUS_ABORTED
      - PROPOSAL_STATUS_WITHDRAWN
    default: PROPOSAL_STATUS_UNSPECIFIED
    description: |-
      ProposalStatus defines proposal statuses.

       - PROPOSAL_STATUS_UNSPECIFIED: An empty value is invalid and not allowed.
       - PROPOSAL_STATUS_SUBMITTED: Initial status of a proposal when submitted.
       - PROPOSAL_STATUS_ACCEPTED: Final status of a proposal when the final tally is done and the outcome
      passes the group policy's decision policy.
       - PROPOSAL_STATUS_REJECTED: Final status of a proposal when the final tally is done and the outcome
      is rejected by the group policy's decision policy.
       - PROPOSAL_STATUS_ABORTED: Final status of a proposal when the group policy is modified before the
      final tally.
       - PROPOSAL_STATUS_WITHDRAWN: A proposal can be withdrawn before the voting start time by the owner.
      When this happens the final status is Withdrawn.
  cosmos.group.v1.QueryGroupInfoResponse:
    type: object
    properties:
      info:
        description: info is the GroupInfo for the group.
        type: object
        properties:
          id:
            type: string
            format: uint64
            description: id is the unique ID of the group.
          admin:
            type: string
            description: admin is the account address of the group's admin.
          metadata:
            type: string
            description: metadata is any arbitrary metadata to attached to the group.
          version:
            type: string
            format: uint64
            title: >-
              version is used to track changes to a group's membership structure
              that

              would break existing proposals. Whenever any members weight is
              changed,

              or any member is added or removed this version is incremented and
              will

              cause proposals based on older versions of this group to fail
          total_weight:
            type: string
            description: total_weight is the sum of the group members' weights.
          created_at:
            type: string
            format: date-time
            description: created_at is a timestamp specifying when a group was created.
    description: QueryGroupInfoResponse is the Query/GroupInfo response type.
  cosmos.group.v1.QueryGroupMembersResponse:
    type: object
    properties:
      members:
        type: array
        items:
          type: object
          properties:
            group_id:
              type: string
              format: uint64
              description: group_id is the unique ID of the group.
            member:
              description: member is the member data.
              type: object
              properties:
                address:
                  type: string
                  description: address is the member's account address.
                weight:
                  type: string
                  description: >-
                    weight is the member's voting weight that should be greater
                    than 0.
                metadata:
                  type: string
                  description: metadata is any arbitrary metadata attached to the member.
                added_at:
                  type: string
                  format: date-time
                  description: added_at is a timestamp specifying when a member was added.
          description: >-
            GroupMember represents the relationship between a group and a
            member.
        description: members are the members of the group with given group_id.
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: QueryGroupMembersResponse is the Query/GroupMembersResponse response type.
  cosmos.group.v1.QueryGroupPoliciesByAdminResponse:
    type: object
    properties:
      group_policies:
        type: array
        items:
          type: object
          properties:
            address:
              type: string
              description: address is the account address of group policy.
            group_id:
              type: string
              format: uint64
              description: group_id is the unique ID of the group.
            admin:
              type: string
              description: admin is the account address of the group admin.
            metadata:
              type: string
              description: >-
                metadata is any arbitrary metadata to attached to the group
                policy.
            version:
              type: string
              format: uint64
              description: >-
                version is used to track changes to a group's GroupPolicyInfo
                structure that

                would create a different result on a running proposal.
            decision_policy:
              type: object
              properties:
                type_url:
                  type: string
                  description: >-
                    A URL/resource name that uniquely identifies the type of the
                    serialized

                    protocol buffer message. This string must contain at least

                    one "/" character. The last segment of the URL's path must
                    represent

                    the fully qualified name of the type (as in

                    `path/google.protobuf.Duration`). The name should be in a
                    canonical form

                    (e.g., leading "." is not accepted).


                    In practice, teams usually precompile into the binary all
                    types that they

                    expect it to use in the context of Any. However, for URLs
                    which use the

                    scheme `http`, `https`, or no scheme, one can optionally set
                    up a type

                    server that maps type URLs to message definitions as
                    follows:


                    * If no scheme is provided, `https` is assumed.

                    * An HTTP GET on the URL must yield a
                    [google.protobuf.Type][]
                      value in binary format, or produce an error.
                    * Applications are allowed to cache lookup results based on
                    the
                      URL, or have them precompiled into a binary to avoid any
                      lookup. Therefore, binary compatibility needs to be preserved
                      on changes to types. (Use versioned type names to manage
                      breaking changes.)

                    Note: this functionality is not currently available in the
                    official

                    protobuf release, and it is not used for type URLs beginning
                    with

                    type.googleapis.com.


                    Schemes other than `http`, `https` (or the empty scheme)
                    might be

                    used with implementation specific semantics.
                value:
                  type: string
                  format: byte
                  description: >-
                    Must be a valid serialized protocol buffer of the above
                    specified type.
              description: >-
                `Any` contains an arbitrary serialized protocol buffer message
                along with a

                URL that describes the type of the serialized message.


                Protobuf library provides support to pack/unpack Any values in
                the form

                of utility functions or additional generated methods of the Any
                type.


                Example 1: Pack and unpack a message in C++.

                    Foo foo = ...;
                    Any any;
                    any.PackFrom(foo);
                    ...
                    if (any.UnpackTo(&foo)) {
                      ...
                    }

                Example 2: Pack and unpack a message in Java.

                    Foo foo = ...;
                    Any any = Any.pack(foo);
                    ...
                    if (any.is(Foo.class)) {
                      foo = any.unpack(Foo.class);
                    }

                 Example 3: Pack and unpack a message in Python.

                    foo = Foo(...)
                    any = Any()
                    any.Pack(foo)
                    ...
                    if any.Is(Foo.DESCRIPTOR):
                      any.Unpack(foo)
                      ...

                 Example 4: Pack and unpack a message in Go

                     foo := &pb.Foo{...}
                     any, err := ptypes.MarshalAny(foo)
                     ...
                     foo := &pb.Foo{}
                     if err := ptypes.UnmarshalAny(any, foo); err != nil {
                       ...
                     }

                The pack methods provided by protobuf library will by default
                use

                'type.googleapis.com/full.type.name' as the type URL and the
                unpack

                methods only use the fully qualified type name after the last
                '/'

                in the type URL, for example "foo.bar.com/x/y.z" will yield type

                name "y.z".



                JSON

                ====

                The JSON representation of an `Any` value uses the regular

                representation of the deserialized, embedded message, with an

                additional field `@type` which contains the type URL. Example:

                    package google.profile;
                    message Person {
                      string first_name = 1;
                      string last_name = 2;
                    }

                    {
                      "@type": "type.googleapis.com/google.profile.Person",
                      "firstName": <string>,
                      "lastName": <string>
                    }

                If the embedded message type is well-known and has a custom JSON

                representation, that representation will be embedded adding a
                field

                `value` which holds the custom JSON in addition to the `@type`

                field. Example (for message [google.protobuf.Duration][]):

                    {
                      "@type": "type.googleapis.com/google.protobuf.Duration",
                      "value": "1.212s"
                    }
            created_at:
              type: string
              format: date-time
              description: >-
                created_at is a timestamp specifying when a group policy was
                created.
          description: >-
            GroupPolicyInfo represents the high-level on-chain information for a
            group policy.
        description: group_policies are the group policies info with provided admin.
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: >-
      QueryGroupPoliciesByAdminResponse is the Query/GroupPoliciesByAdmin
      response type.
  cosmos.group.v1.QueryGroupPoliciesByGroupResponse:
    type: object
    properties:
      group_policies:
        type: array
        items:
          type: object
          properties:
            address:
              type: string
              description: address is the account address of group policy.
            group_id:
              type: string
              format: uint64
              description: group_id is the unique ID of the group.
            admin:
              type: string
              description: admin is the account address of the group admin.
            metadata:
              type: string
              description: >-
                metadata is any arbitrary metadata to attached to the group
                policy.
            version:
              type: string
              format: uint64
              description: >-
                version is used to track changes to a group's GroupPolicyInfo
                structure that

                would create a different result on a running proposal.
            decision_policy:
              type: object
              properties:
                type_url:
                  type: string
                  description: >-
                    A URL/resource name that uniquely identifies the type of the
                    serialized

                    protocol buffer message. This string must contain at least

                    one "/" character. The last segment of the URL's path must
                    represent

                    the fully qualified name of the type (as in

                    `path/google.protobuf.Duration`). The name should be in a
                    canonical form

                    (e.g., leading "." is not accepted).


                    In practice, teams usually precompile into the binary all
                    types that they

                    expect it to use in the context of Any. However, for URLs
                    which use the

                    scheme `http`, `https`, or no scheme, one can optionally set
                    up a type

                    server that maps type URLs to message definitions as
                    follows:


                    * If no scheme is provided, `https` is assumed.

                    * An HTTP GET on the URL must yield a
                    [google.protobuf.Type][]
                      value in binary format, or produce an error.
                    * Applications are allowed to cache lookup results based on
                    the
                      URL, or have them precompiled into a binary to avoid any
                      lookup. Therefore, binary compatibility needs to be preserved
                      on changes to types. (Use versioned type names to manage
                      breaking changes.)

                    Note: this functionality is not currently available in the
                    official

                    protobuf release, and it is not used for type URLs beginning
                    with

                    type.googleapis.com.


                    Schemes other than `http`, `https` (or the empty scheme)
                    might be

                    used with implementation specific semantics.
                value:
                  type: string
                  format: byte
                  description: >-
                    Must be a valid serialized protocol buffer of the above
                    specified type.
              description: >-
                `Any` contains an arbitrary serialized protocol buffer message
                along with a

                URL that describes the type of the serialized message.


                Protobuf library provides support to pack/unpack Any values in
                the form

                of utility functions or additional generated methods of the Any
                type.


                Example 1: Pack and unpack a message in C++.

                    Foo foo = ...;
                    Any any;
                    any.PackFrom(foo);
                    ...
                    if (any.UnpackTo(&foo)) {
                      ...
                    }

                Example 2: Pack and unpack a message in Java.

                    Foo foo = ...;
                    Any any = Any.pack(foo);
                    ...
                    if (any.is(Foo.class)) {
                      foo = any.unpack(Foo.class);
                    }

                 Example 3: Pack and unpack a message in Python.

                    foo = Foo(...)
                    any = Any()
                    any.Pack(foo)
                    ...
                    if any.Is(Foo.DESCRIPTOR):
                      any.Unpack(foo)
                      ...

                 Example 4: Pack and unpack a message in Go

                     foo := &pb.Foo{...}
                     any, err := ptypes.MarshalAny(foo)
                     ...
                     foo := &pb.Foo{}
                     if err := ptypes.UnmarshalAny(any, foo); err != nil {
                       ...
                     }

                The pack methods provided by protobuf library will by default
                use

                'type.googleapis.com/full.type.name' as the type URL and the
                unpack

                methods only use the fully qualified type name after the last
                '/'

                in the type URL, for example "foo.bar.com/x/y.z" will yield type

                name "y.z".



                JSON

                ====

                The JSON representation of an `Any` value uses the regular

                representation of the deserialized, embedded message, with an

                additional field `@type` which contains the type URL. Example:

                    package google.profile;
                    message Person {
                      string first_name = 1;
                      string last_name = 2;
                    }

                    {
                      "@type": "type.googleapis.com/google.profile.Person",
                      "firstName": <string>,
                      "lastName": <string>
                    }

                If the embedded message type is well-known and has a custom JSON

                representation, that representation will be embedded adding a
                field

                `value` which holds the custom JSON in addition to the `@type`

                field. Example (for message [google.protobuf.Duration][]):

                    {
                      "@type": "type.googleapis.com/google.protobuf.Duration",
                      "value": "1.212s"
                    }
            created_at:
              type: string
              format: date-time
              description: >-
                created_at is a timestamp specifying when a group policy was
                created.
          description: >-
            GroupPolicyInfo represents the high-level on-chain information for a
            group policy.
        description: >-
          group_policies are the group policies info associated with the
          provided group.
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: >-
      QueryGroupPoliciesByGroupResponse is the Query/GroupPoliciesByGroup
      response type.
  cosmos.group.v1.QueryGroupPolicyInfoResponse:
    type: object
    properties:
      info:
        type: object
        properties:
          address:
            type: string
            description: address is the account address of group policy.
          group_id:
            type: string
            format: uint64
            description: group_id is the unique ID of the group.
          admin:
            type: string
            description: admin is the account address of the group admin.
          metadata:
            type: string
            description: >-
              metadata is any arbitrary metadata to attached to the group
              policy.
          version:
            type: string
            format: uint64
            description: >-
              version is used to track changes to a group's GroupPolicyInfo
              structure that

              would create a different result on a running proposal.
          decision_policy:
            type: object
            properties:
              type_url:
                type: string
                description: >-
                  A URL/resource name that uniquely identifies the type of the
                  serialized

                  protocol buffer message. This string must contain at least

                  one "/" character. The last segment of the URL's path must
                  represent

                  the fully qualified name of the type (as in

                  `path/google.protobuf.Duration`). The name should be in a
                  canonical form

                  (e.g., leading "." is not accepted).


                  In practice, teams usually precompile into the binary all
                  types that they

                  expect it to use in the context of Any. However, for URLs
                  which use the

                  scheme `http`, `https`, or no scheme, one can optionally set
                  up a type

                  server that maps type URLs to message definitions as follows:


                  * If no scheme is provided, `https` is assumed.

                  * An HTTP GET on the URL must yield a [google.protobuf.Type][]
                    value in binary format, or produce an error.
                  * Applications are allowed to cache lookup results based on
                  the
                    URL, or have them precompiled into a binary to avoid any
                    lookup. Therefore, binary compatibility needs to be preserved
                    on changes to types. (Use versioned type names to manage
                    breaking changes.)

                  Note: this functionality is not currently available in the
                  official

                  protobuf release, and it is not used for type URLs beginning
                  with

                  type.googleapis.com.


                  Schemes other than `http`, `https` (or the empty scheme) might
                  be

                  used with implementation specific semantics.
              value:
                type: string
                format: byte
                description: >-
                  Must be a valid serialized protocol buffer of the above
                  specified type.
            description: >-
              `Any` contains an arbitrary serialized protocol buffer message
              along with a

              URL that describes the type of the serialized message.


              Protobuf library provides support to pack/unpack Any values in the
              form

              of utility functions or additional generated methods of the Any
              type.


              Example 1: Pack and unpack a message in C++.

                  Foo foo = ...;
                  Any any;
                  any.PackFrom(foo);
                  ...
                  if (any.UnpackTo(&foo)) {
                    ...
                  }

              Example 2: Pack and unpack a message in Java.

                  Foo foo = ...;
                  Any any = Any.pack(foo);
                  ...
                  if (any.is(Foo.class)) {
                    foo = any.unpack(Foo.class);
                  }

               Example 3: Pack and unpack a message in Python.

                  foo = Foo(...)
                  any = Any()
                  any.Pack(foo)
                  ...
                  if any.Is(Foo.DESCRIPTOR):
                    any.Unpack(foo)
                    ...

               Example 4: Pack and unpack a message in Go

                   foo := &pb.Foo{...}
                   any, err := ptypes.MarshalAny(foo)
                   ...
                   foo := &pb.Foo{}
                   if err := ptypes.UnmarshalAny(any, foo); err != nil {
                     ...
                   }

              The pack methods provided by protobuf library will by default use

              'type.googleapis.com/full.type.name' as the type URL and the
              unpack

              methods only use the fully qualified type name after the last '/'

              in the type URL, for example "foo.bar.com/x/y.z" will yield type

              name "y.z".



              JSON

              ====

              The JSON representation of an `Any` value uses the regular

              representation of the deserialized, embedded message, with an

              additional field `@type` which contains the type URL. Example:

                  package google.profile;
                  message Person {
                    string first_name = 1;
                    string last_name = 2;
                  }

                  {
                    "@type": "type.googleapis.com/google.profile.Person",
                    "firstName": <string>,
                    "lastName": <string>
                  }

              If the embedded message type is well-known and has a custom JSON

              representation, that representation will be embedded adding a
              field

              `value` which holds the custom JSON in addition to the `@type`

              field. Example (for message [google.protobuf.Duration][]):

                  {
                    "@type": "type.googleapis.com/google.protobuf.Duration",
                    "value": "1.212s"
                  }
          created_at:
            type: string
            format: date-time
            description: >-
              created_at is a timestamp specifying when a group policy was
              created.
        description: >-
          GroupPolicyInfo represents the high-level on-chain information for a
          group policy.
    description: QueryGroupPolicyInfoResponse is the Query/GroupPolicyInfo response type.
  cosmos.group.v1.QueryGroupsByAdminResponse:
    type: object
    properties:
      groups:
        type: array
        items:
          type: object
          properties:
            id:
              type: string
              format: uint64
              description: id is the unique ID of the group.
            admin:
              type: string
              description: admin is the account address of the group's admin.
            metadata:
              type: string
              description: metadata is any arbitrary metadata to attached to the group.
            version:
              type: string
              format: uint64
              title: >-
                version is used to track changes to a group's membership
                structure that

                would break existing proposals. Whenever any members weight is
                changed,

                or any member is added or removed this version is incremented
                and will

                cause proposals based on older versions of this group to fail
            total_weight:
              type: string
              description: total_weight is the sum of the group members' weights.
            created_at:
              type: string
              format: date-time
              description: created_at is a timestamp specifying when a group was created.
          description: >-
            GroupInfo represents the high-level on-chain information for a
            group.
        description: groups are the groups info with the provided admin.
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: >-
      QueryGroupsByAdminResponse is the Query/GroupsByAdminResponse response
      type.
  cosmos.group.v1.QueryGroupsByMemberResponse:
    type: object
    properties:
      groups:
        type: array
        items:
          type: object
          properties:
            id:
              type: string
              format: uint64
              description: id is the unique ID of the group.
            admin:
              type: string
              description: admin is the account address of the group's admin.
            metadata:
              type: string
              description: metadata is any arbitrary metadata to attached to the group.
            version:
              type: string
              format: uint64
              title: >-
                version is used to track changes to a group's membership
                structure that

                would break existing proposals. Whenever any members weight is
                changed,

                or any member is added or removed this version is incremented
                and will

                cause proposals based on older versions of this group to fail
            total_weight:
              type: string
              description: total_weight is the sum of the group members' weights.
            created_at:
              type: string
              format: date-time
              description: created_at is a timestamp specifying when a group was created.
          description: >-
            GroupInfo represents the high-level on-chain information for a
            group.
        description: groups are the groups info with the provided group member.
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: QueryGroupsByMemberResponse is the Query/GroupsByMember response type.
  cosmos.group.v1.QueryProposalResponse:
    type: object
    properties:
      proposal:
        description: proposal is the proposal info.
        type: object
        properties:
          id:
            type: string
            format: uint64
            description: id is the unique id of the proposal.
          group_policy_address:
            type: string
            description: group_policy_address is the account address of group policy.
          metadata:
            type: string
            description: metadata is any arbitrary metadata to attached to the proposal.
          proposers:
            type: array
            items:
              type: string
            description: proposers are the account addresses of the proposers.
          submit_time:
            type: string
            format: date-time
            description: >-
              submit_time is a timestamp specifying when a proposal was
              submitted.
          group_version:
            type: string
            format: uint64
            description: >-
              group_version tracks the version of the group at proposal
              submission.

              This field is here for informational purposes only.
          group_policy_version:
            type: string
            format: uint64
            description: >-
              group_policy_version tracks the version of the group policy at
              proposal submission.

              When a decision policy is changed, existing proposals from
              previous policy

              versions will become invalid with the `ABORTED` status.

              This field is here for informational purposes only.
          status:
            description: >-
              status represents the high level position in the life cycle of the
              proposal. Initial value is Submitted.
            type: string
            enum:
              - PROPOSAL_STATUS_UNSPECIFIED
              - PROPOSAL_STATUS_SUBMITTED
              - PROPOSAL_STATUS_ACCEPTED
              - PROPOSAL_STATUS_REJECTED
              - PROPOSAL_STATUS_ABORTED
              - PROPOSAL_STATUS_WITHDRAWN
            default: PROPOSAL_STATUS_UNSPECIFIED
          final_tally_result:
            description: >-
              final_tally_result contains the sums of all weighted votes for
              this

              proposal for each vote option. It is empty at submission, and only

              populated after tallying, at voting period end or at proposal
              execution,

              whichever happens first.
            type: object
            properties:
              yes_count:
                type: string
                description: yes_count is the weighted sum of yes votes.
              abstain_count:
                type: string
                description: abstain_count is the weighted sum of abstainers.
              no_count:
                type: string
                description: no_count is the weighted sum of no votes.
              no_with_veto_count:
                type: string
                description: no_with_veto_count is the weighted sum of veto.
          voting_period_end:
            type: string
            format: date-time
            description: >-
              voting_period_end is the timestamp before which voting must be
              done.

              Unless a successfull MsgExec is called before (to execute a
              proposal whose

              tally is successful before the voting period ends), tallying will
              be done

              at this point, and the `final_tally_result`and `status` fields
              will be

              accordingly updated.
          executor_result:
            description: >-
              executor_result is the final result of the proposal execution.
              Initial value is NotRun.
            type: string
            enum:
              - PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED
              - PROPOSAL_EXECUTOR_RESULT_NOT_RUN
              - PROPOSAL_EXECUTOR_RESULT_SUCCESS
              - PROPOSAL_EXECUTOR_RESULT_FAILURE
            default: PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED
          messages:
            type: array
            items:
              type: object
              properties:
                type_url:
                  type: string
                  description: >-
                    A URL/resource name that uniquely identifies the type of the
                    serialized

                    protocol buffer message. This string must contain at least

                    one "/" character. The last segment of the URL's path must
                    represent

                    the fully qualified name of the type (as in

                    `path/google.protobuf.Duration`). The name should be in a
                    canonical form

                    (e.g., leading "." is not accepted).


                    In practice, teams usually precompile into the binary all
                    types that they

                    expect it to use in the context of Any. However, for URLs
                    which use the

                    scheme `http`, `https`, or no scheme, one can optionally set
                    up a type

                    server that maps type URLs to message definitions as
                    follows:


                    * If no scheme is provided, `https` is assumed.

                    * An HTTP GET on the URL must yield a
                    [google.protobuf.Type][]
                      value in binary format, or produce an error.
                    * Applications are allowed to cache lookup results based on
                    the
                      URL, or have them precompiled into a binary to avoid any
                      lookup. Therefore, binary compatibility needs to be preserved
                      on changes to types. (Use versioned type names to manage
                      breaking changes.)

                    Note: this functionality is not currently available in the
                    official

                    protobuf release, and it is not used for type URLs beginning
                    with

                    type.googleapis.com.


                    Schemes other than `http`, `https` (or the empty scheme)
                    might be

                    used with implementation specific semantics.
                value:
                  type: string
                  format: byte
                  description: >-
                    Must be a valid serialized protocol buffer of the above
                    specified type.
              description: >-
                `Any` contains an arbitrary serialized protocol buffer message
                along with a

                URL that describes the type of the serialized message.


                Protobuf library provides support to pack/unpack Any values in
                the form

                of utility functions or additional generated methods of the Any
                type.


                Example 1: Pack and unpack a message in C++.

                    Foo foo = ...;
                    Any any;
                    any.PackFrom(foo);
                    ...
                    if (any.UnpackTo(&foo)) {
                      ...
                    }

                Example 2: Pack and unpack a message in Java.

                    Foo foo = ...;
                    Any any = Any.pack(foo);
                    ...
                    if (any.is(Foo.class)) {
                      foo = any.unpack(Foo.class);
                    }

                 Example 3: Pack and unpack a message in Python.

                    foo = Foo(...)
                    any = Any()
                    any.Pack(foo)
                    ...
                    if any.Is(Foo.DESCRIPTOR):
                      any.Unpack(foo)
                      ...

                 Example 4: Pack and unpack a message in Go

                     foo := &pb.Foo{...}
                     any, err := ptypes.MarshalAny(foo)
                     ...
                     foo := &pb.Foo{}
                     if err := ptypes.UnmarshalAny(any, foo); err != nil {
                       ...
                     }

                The pack methods provided by protobuf library will by default
                use

                'type.googleapis.com/full.type.name' as the type URL and the
                unpack

                methods only use the fully qualified type name after the last
                '/'

                in the type URL, for example "foo.bar.com/x/y.z" will yield type

                name "y.z".



                JSON

                ====

                The JSON representation of an `Any` value uses the regular

                representation of the deserialized, embedded message, with an

                additional field `@type` which contains the type URL. Example:

                    package google.profile;
                    message Person {
                      string first_name = 1;
                      string last_name = 2;
                    }

                    {
                      "@type": "type.googleapis.com/google.profile.Person",
                      "firstName": <string>,
                      "lastName": <string>
                    }

                If the embedded message type is well-known and has a custom JSON

                representation, that representation will be embedded adding a
                field

                `value` which holds the custom JSON in addition to the `@type`

                field. Example (for message [google.protobuf.Duration][]):

                    {
                      "@type": "type.googleapis.com/google.protobuf.Duration",
                      "value": "1.212s"
                    }
            description: >-
              messages is a list of `sdk.Msg`s that will be executed if the
              proposal passes.
    description: QueryProposalResponse is the Query/Proposal response type.
  cosmos.group.v1.QueryProposalsByGroupPolicyResponse:
    type: object
    properties:
      proposals:
        type: array
        items:
          type: object
          properties:
            id:
              type: string
              format: uint64
              description: id is the unique id of the proposal.
            group_policy_address:
              type: string
              description: group_policy_address is the account address of group policy.
            metadata:
              type: string
              description: metadata is any arbitrary metadata to attached to the proposal.
            proposers:
              type: array
              items:
                type: string
              description: proposers are the account addresses of the proposers.
            submit_time:
              type: string
              format: date-time
              description: >-
                submit_time is a timestamp specifying when a proposal was
                submitted.
            group_version:
              type: string
              format: uint64
              description: >-
                group_version tracks the version of the group at proposal
                submission.

                This field is here for informational purposes only.
            group_policy_version:
              type: string
              format: uint64
              description: >-
                group_policy_version tracks the version of the group policy at
                proposal submission.

                When a decision policy is changed, existing proposals from
                previous policy

                versions will become invalid with the `ABORTED` status.

                This field is here for informational purposes only.
            status:
              description: >-
                status represents the high level position in the life cycle of
                the proposal. Initial value is Submitted.
              type: string
              enum:
                - PROPOSAL_STATUS_UNSPECIFIED
                - PROPOSAL_STATUS_SUBMITTED
                - PROPOSAL_STATUS_ACCEPTED
                - PROPOSAL_STATUS_REJECTED
                - PROPOSAL_STATUS_ABORTED
                - PROPOSAL_STATUS_WITHDRAWN
              default: PROPOSAL_STATUS_UNSPECIFIED
            final_tally_result:
              description: >-
                final_tally_result contains the sums of all weighted votes for
                this

                proposal for each vote option. It is empty at submission, and
                only

                populated after tallying, at voting period end or at proposal
                execution,

                whichever happens first.
              type: object
              properties:
                yes_count:
                  type: string
                  description: yes_count is the weighted sum of yes votes.
                abstain_count:
                  type: string
                  description: abstain_count is the weighted sum of abstainers.
                no_count:
                  type: string
                  description: no_count is the weighted sum of no votes.
                no_with_veto_count:
                  type: string
                  description: no_with_veto_count is the weighted sum of veto.
            voting_period_end:
              type: string
              format: date-time
              description: >-
                voting_period_end is the timestamp before which voting must be
                done.

                Unless a successfull MsgExec is called before (to execute a
                proposal whose

                tally is successful before the voting period ends), tallying
                will be done

                at this point, and the `final_tally_result`and `status` fields
                will be

                accordingly updated.
            executor_result:
              description: >-
                executor_result is the final result of the proposal execution.
                Initial value is NotRun.
              type: string
              enum:
                - PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED
                - PROPOSAL_EXECUTOR_RESULT_NOT_RUN
                - PROPOSAL_EXECUTOR_RESULT_SUCCESS
                - PROPOSAL_EXECUTOR_RESULT_FAILURE
              default: PROPOSAL_EXECUTOR_RESULT_UNSPECIFIED
            messages:
              type: array
              items:
                type: object
                properties:
                  type_url:
                    type: string
                    description: >-
                      A URL/resource name that uniquely identifies the type of
                      the serialized

                      protocol buffer message. This string must contain at least

                      one "/" character. The last segment of the URL's path must
                      represent

                      the fully qualified name of the type (as in

                      `path/google.protobuf.Duration`). The name should be in a
                      canonical form

                      (e.g., leading "." is not accepted).


                      In practice, teams usually precompile into the binary all
                      types that they

                      expect it to use in the context of Any. However, for URLs
                      which use the

                      scheme `http`, `https`, or no scheme, one can optionally
                      set up a type

                      server that maps type URLs to message definitions as
                      follows:


                      * If no scheme is provided, `https` is assumed.

                      * An HTTP GET on the URL must yield a
                      [google.protobuf.Type][]
                        value in binary format, or produce an error.
                      * Applications are allowed to cache lookup results based
                      on the
                        URL, or have them precompiled into a binary to avoid any
                        lookup. Therefore, binary compatibility needs to be preserved
                        on changes to types. (Use versioned type names to manage
                        breaking changes.)

                      Note: this functionality is not currently available in the
                      official

                      protobuf release, and it is not used for type URLs
                      beginning with

                      type.googleapis.com.


                      Schemes other than `http`, `https` (or the empty scheme)
                      might be

                      used with implementation specific semantics.
                  value:
                    type: string
                    format: byte
                    description: >-
                      Must be a valid serialized protocol buffer of the above
                      specified type.
                description: >-
                  `Any` contains an arbitrary serialized protocol buffer message
                  along with a

                  URL that describes the type of the serialized message.


                  Protobuf library provides support to pack/unpack Any values in
                  the form

                  of utility functions or additional generated methods of the
                  Any type.


                  Example 1: Pack and unpack a message in C++.

                      Foo foo = ...;
                      Any any;
                      any.PackFrom(foo);
                      ...
                      if (any.UnpackTo(&foo)) {
                        ...
                      }

                  Example 2: Pack and unpack a message in Java.

                      Foo foo = ...;
                      Any any = Any.pack(foo);
                      ...
                      if (any.is(Foo.class)) {
                        foo = any.unpack(Foo.class);
                      }

                   Example 3: Pack and unpack a message in Python.

                      foo = Foo(...)
                      any = Any()
                      any.Pack(foo)
                      ...
                      if any.Is(Foo.DESCRIPTOR):
                        any.Unpack(foo)
                        ...

                   Example 4: Pack and unpack a message in Go

                       foo := &pb.Foo{...}
                       any, err := ptypes.MarshalAny(foo)
                       ...
                       foo := &pb.Foo{}
                       if err := ptypes.UnmarshalAny(any, foo); err != nil {
                         ...
                       }

                  The pack methods provided by protobuf library will by default
                  use

                  'type.googleapis.com/full.type.name' as the type URL and the
                  unpack

                  methods only use the fully qualified type name after the last
                  '/'

                  in the type URL, for example "foo.bar.com/x/y.z" will yield
                  type

                  name "y.z".



                  JSON

                  ====

                  The JSON representation of an `Any` value uses the regular

                  representation of the deserialized, embedded message, with an

                  additional field `@type` which contains the type URL. Example:

                      package google.profile;
                      message Person {
                        string first_name = 1;
                        string last_name = 2;
                      }

                      {
                        "@type": "type.googleapis.com/google.profile.Person",
                        "firstName": <string>,
                        "lastName": <string>
                      }

                  If the embedded message type is well-known and has a custom
                  JSON

                  representation, that representation will be embedded adding a
                  field

                  `value` which holds the custom JSON in addition to the `@type`

                  field. Example (for message [google.protobuf.Duration][]):

                      {
                        "@type": "type.googleapis.com/google.protobuf.Duration",
                        "value": "1.212s"
                      }
              description: >-
                messages is a list of `sdk.Msg`s that will be executed if the
                proposal passes.
          description: >-
            Proposal defines a group proposal. Any member of a group can submit
            a proposal

            for a group policy to decide upon.

            A proposal consists of a set of `sdk.Msg`s that will be executed if
            the proposal

            passes as well as some optional metadata associated with the
            proposal.
        description: proposals are the proposals with given group policy.
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: >-
      QueryProposalsByGroupPolicyResponse is the Query/ProposalByGroupPolicy
      response type.
  cosmos.group.v1.QueryTallyResultResponse:
    type: object
    properties:
      tally:
        description: tally defines the requested tally.
        type: object
        properties:
          yes_count:
            type: string
            description: yes_count is the weighted sum of yes votes.
          abstain_count:
            type: string
            description: abstain_count is the weighted sum of abstainers.
          no_count:
            type: string
            description: no_count is the weighted sum of no votes.
          no_with_veto_count:
            type: string
            description: no_with_veto_count is the weighted sum of veto.
    description: QueryTallyResultResponse is the Query/TallyResult response type.
  cosmos.group.v1.QueryVoteByProposalVoterResponse:
    type: object
    properties:
      vote:
        description: vote is the vote with given proposal_id and voter.
        type: object
        properties:
          proposal_id:
            type: string
            format: uint64
            description: proposal is the unique ID of the proposal.
          voter:
            type: string
            description: voter is the account address of the voter.
          option:
            description: option is the voter's choice on the proposal.
            type: string
            enum:
              - VOTE_OPTION_UNSPECIFIED
              - VOTE_OPTION_YES
              - VOTE_OPTION_ABSTAIN
              - VOTE_OPTION_NO
              - VOTE_OPTION_NO_WITH_VETO
            default: VOTE_OPTION_UNSPECIFIED
          metadata:
            type: string
            description: metadata is any arbitrary metadata to attached to the vote.
          submit_time:
            type: string
            format: date-time
            description: submit_time is the timestamp when the vote was submitted.
    description: >-
      QueryVoteByProposalVoterResponse is the Query/VoteByProposalVoter response
      type.
  cosmos.group.v1.QueryVotesByProposalResponse:
    type: object
    properties:
      votes:
        type: array
        items:
          type: object
          properties:
            proposal_id:
              type: string
              format: uint64
              description: proposal is the unique ID of the proposal.
            voter:
              type: string
              description: voter is the account address of the voter.
            option:
              description: option is the voter's choice on the proposal.
              type: string
              enum:
                - VOTE_OPTION_UNSPECIFIED
                - VOTE_OPTION_YES
                - VOTE_OPTION_ABSTAIN
                - VOTE_OPTION_NO
                - VOTE_OPTION_NO_WITH_VETO
              default: VOTE_OPTION_UNSPECIFIED
            metadata:
              type: string
              description: metadata is any arbitrary metadata to attached to the vote.
            submit_time:
              type: string
              format: date-time
              description: submit_time is the timestamp when the vote was submitted.
          description: Vote represents a vote for a proposal.
        description: votes are the list of votes for given proposal_id.
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: QueryVotesByProposalResponse is the Query/VotesByProposal response type.
  cosmos.group.v1.QueryVotesByVoterResponse:
    type: object
    properties:
      votes:
        type: array
        items:
          type: object
          properties:
            proposal_id:
              type: string
              format: uint64
              description: proposal is the unique ID of the proposal.
            voter:
              type: string
              description: voter is the account address of the voter.
            option:
              description: option is the voter's choice on the proposal.
              type: string
              enum:
                - VOTE_OPTION_UNSPECIFIED
                - VOTE_OPTION_YES
                - VOTE_OPTION_ABSTAIN
                - VOTE_OPTION_NO
                - VOTE_OPTION_NO_WITH_VETO
              default: VOTE_OPTION_UNSPECIFIED
            metadata:
              type: string
              description: metadata is any arbitrary metadata to attached to the vote.
            submit_time:
              type: string
              format: date-time
              description: submit_time is the timestamp when the vote was submitted.
          description: Vote represents a vote for a proposal.
        description: votes are the list of votes by given voter.
      pagination:
        description: pagination defines the pagination in the response.
        type: object
        properties:
          next_key:
            type: string
            format: byte
            description: |-
              next_key is the key to be passed to PageRequest.key to
              query the next page most efficiently. It will be empty if
              there are no more results.
          total:
            type: string
            format: uint64
            title: >-
              total is total number of results available if
              PageRequest.count_total

              was set, its value is undefined otherwise
    description: QueryVotesByVoterResponse is the Query/VotesByVoter response type.
  cosmos.group.v1.TallyResult:
    type: object
    properties:
      yes_count:
        type: string
        description: yes_count is the weighted sum of yes votes.
      abstain_count:
        type: string
        description: abstain_count is the weighted sum of abstainers.
      no_count:
        type: string
        description: no_count is the weighted sum of no votes.
      no_with_veto_count:
        type: string
        description: no_with_veto_count is the weighted sum of veto.
    description: TallyResult represents the sum of weighted votes for each vote option.
  cosmos.group.v1.Vote:
    type: object
    properties:
      proposal_id:
        type: string
        format: uint64
        description: proposal is the unique ID of the proposal.
      voter:
        type: string
        description: voter is the account address of the voter.
      option:
        description: option is the voter's choice on the proposal.
        type: string
        enum:
          - VOTE_OPTION_UNSPECIFIED
          - VOTE_OPTION_YES
          - VOTE_OPTION_ABSTAIN
          - VOTE_OPTION_NO
          - VOTE_OPTION_NO_WITH_VETO
        default: VOTE_OPTION_UNSPECIFIED
      metadata:
        type: string
        description: metadata is any arbitrary metadata to attached to the vote.
      submit_time:
        type: string
        format: date-time
        description: submit_time is the timestamp when the vote was submitted.
    description: Vote represents a vote for a proposal.
  cosmos.group.v1.VoteOption:
    type: string
    enum:
      - VOTE_OPTION_UNSPECIFIED
      - VOTE_OPTION_YES
      - VOTE_OPTION_ABSTAIN
      - VOTE_OPTION_NO
      - VOTE_OPTION_NO_WITH_VETO
    default: VOTE_OPTION_UNSPECIFIED
    description: |-
      VoteOption enumerates the valid vote options for a given proposal.

       - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines an unspecified vote option which will
      return an error.
       - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option.
       - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option.
       - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option.
       - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option.