/ packages / schema / compiled.js
compiled.js
   1  /*eslint-disable block-scoped-var, id-length, no-control-regex, no-magic-numbers, no-prototype-builtins, no-redeclare, no-shadow, no-var, sort-vars*/
   2  import $protobuf from "protobufjs";
   3  
   4  // Common aliases
   5  const $Reader = $protobuf.Reader, $Writer = $protobuf.Writer, $util = $protobuf.util;
   6  
   7  // Exported root namespace
   8  const $root = $protobuf.roots["default"] || ($protobuf.roots["default"] = {});
   9  
  10  export const market = $root.market = (() => {
  11  
  12      /**
  13       * Namespace market.
  14       * @exports market
  15       * @namespace
  16       */
  17      const market = {};
  18  
  19      market.mass = (function() {
  20  
  21          /**
  22           * Namespace mass.
  23           * @memberof market
  24           * @namespace
  25           */
  26          const mass = {};
  27  
  28          mass.AuthenticateRequest = (function() {
  29  
  30              /**
  31               * Properties of an AuthenticateRequest.
  32               * @memberof market.mass
  33               * @interface IAuthenticateRequest
  34               * @property {market.mass.IPublicKey|null} [publicKey] AuthenticateRequest publicKey
  35               */
  36  
  37              /**
  38               * Constructs a new AuthenticateRequest.
  39               * @memberof market.mass
  40               * @classdesc Represents an AuthenticateRequest.
  41               * @implements IAuthenticateRequest
  42               * @constructor
  43               * @param {market.mass.IAuthenticateRequest=} [properties] Properties to set
  44               */
  45              function AuthenticateRequest(properties) {
  46                  if (properties)
  47                      for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
  48                          if (properties[keys[i]] != null)
  49                              this[keys[i]] = properties[keys[i]];
  50              }
  51  
  52              /**
  53               * AuthenticateRequest publicKey.
  54               * @member {market.mass.IPublicKey|null|undefined} publicKey
  55               * @memberof market.mass.AuthenticateRequest
  56               * @instance
  57               */
  58              AuthenticateRequest.prototype.publicKey = null;
  59  
  60              /**
  61               * Creates a new AuthenticateRequest instance using the specified properties.
  62               * @function create
  63               * @memberof market.mass.AuthenticateRequest
  64               * @static
  65               * @param {market.mass.IAuthenticateRequest=} [properties] Properties to set
  66               * @returns {market.mass.AuthenticateRequest} AuthenticateRequest instance
  67               */
  68              AuthenticateRequest.create = function create(properties) {
  69                  return new AuthenticateRequest(properties);
  70              };
  71  
  72              /**
  73               * Encodes the specified AuthenticateRequest message. Does not implicitly {@link market.mass.AuthenticateRequest.verify|verify} messages.
  74               * @function encode
  75               * @memberof market.mass.AuthenticateRequest
  76               * @static
  77               * @param {market.mass.IAuthenticateRequest} message AuthenticateRequest message or plain object to encode
  78               * @param {$protobuf.Writer} [writer] Writer to encode to
  79               * @returns {$protobuf.Writer} Writer
  80               */
  81              AuthenticateRequest.encode = function encode(message, writer) {
  82                  if (!writer)
  83                      writer = $Writer.create();
  84                  if (message.publicKey != null && Object.hasOwnProperty.call(message, "publicKey"))
  85                      $root.market.mass.PublicKey.encode(message.publicKey, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
  86                  return writer;
  87              };
  88  
  89              /**
  90               * Encodes the specified AuthenticateRequest message, length delimited. Does not implicitly {@link market.mass.AuthenticateRequest.verify|verify} messages.
  91               * @function encodeDelimited
  92               * @memberof market.mass.AuthenticateRequest
  93               * @static
  94               * @param {market.mass.IAuthenticateRequest} message AuthenticateRequest message or plain object to encode
  95               * @param {$protobuf.Writer} [writer] Writer to encode to
  96               * @returns {$protobuf.Writer} Writer
  97               */
  98              AuthenticateRequest.encodeDelimited = function encodeDelimited(message, writer) {
  99                  return this.encode(message, writer).ldelim();
 100              };
 101  
 102              /**
 103               * Decodes an AuthenticateRequest message from the specified reader or buffer.
 104               * @function decode
 105               * @memberof market.mass.AuthenticateRequest
 106               * @static
 107               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
 108               * @param {number} [length] Message length if known beforehand
 109               * @returns {market.mass.AuthenticateRequest} AuthenticateRequest
 110               * @throws {Error} If the payload is not a reader or valid buffer
 111               * @throws {$protobuf.util.ProtocolError} If required fields are missing
 112               */
 113              AuthenticateRequest.decode = function decode(reader, length, error) {
 114                  if (!(reader instanceof $Reader))
 115                      reader = $Reader.create(reader);
 116                  let end = length === undefined ? reader.len : reader.pos + length, message = new $root.market.mass.AuthenticateRequest();
 117                  while (reader.pos < end) {
 118                      let tag = reader.uint32();
 119                      if (tag === error)
 120                          break;
 121                      switch (tag >>> 3) {
 122                      case 2: {
 123                              message.publicKey = $root.market.mass.PublicKey.decode(reader, reader.uint32());
 124                              break;
 125                          }
 126                      default:
 127                          reader.skipType(tag & 7);
 128                          break;
 129                      }
 130                  }
 131                  return message;
 132              };
 133  
 134              /**
 135               * Decodes an AuthenticateRequest message from the specified reader or buffer, length delimited.
 136               * @function decodeDelimited
 137               * @memberof market.mass.AuthenticateRequest
 138               * @static
 139               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
 140               * @returns {market.mass.AuthenticateRequest} AuthenticateRequest
 141               * @throws {Error} If the payload is not a reader or valid buffer
 142               * @throws {$protobuf.util.ProtocolError} If required fields are missing
 143               */
 144              AuthenticateRequest.decodeDelimited = function decodeDelimited(reader) {
 145                  if (!(reader instanceof $Reader))
 146                      reader = new $Reader(reader);
 147                  return this.decode(reader, reader.uint32());
 148              };
 149  
 150              /**
 151               * Verifies an AuthenticateRequest message.
 152               * @function verify
 153               * @memberof market.mass.AuthenticateRequest
 154               * @static
 155               * @param {Object.<string,*>} message Plain object to verify
 156               * @returns {string|null} `null` if valid, otherwise the reason why it is not
 157               */
 158              AuthenticateRequest.verify = function verify(message) {
 159                  if (typeof message !== "object" || message === null)
 160                      return "object expected";
 161                  if (message.publicKey != null && message.hasOwnProperty("publicKey")) {
 162                      let error = $root.market.mass.PublicKey.verify(message.publicKey);
 163                      if (error)
 164                          return "publicKey." + error;
 165                  }
 166                  return null;
 167              };
 168  
 169              /**
 170               * Creates an AuthenticateRequest message from a plain object. Also converts values to their respective internal types.
 171               * @function fromObject
 172               * @memberof market.mass.AuthenticateRequest
 173               * @static
 174               * @param {Object.<string,*>} object Plain object
 175               * @returns {market.mass.AuthenticateRequest} AuthenticateRequest
 176               */
 177              AuthenticateRequest.fromObject = function fromObject(object) {
 178                  if (object instanceof $root.market.mass.AuthenticateRequest)
 179                      return object;
 180                  let message = new $root.market.mass.AuthenticateRequest();
 181                  if (object.publicKey != null) {
 182                      if (typeof object.publicKey !== "object")
 183                          throw TypeError(".market.mass.AuthenticateRequest.publicKey: object expected");
 184                      message.publicKey = $root.market.mass.PublicKey.fromObject(object.publicKey);
 185                  }
 186                  return message;
 187              };
 188  
 189              /**
 190               * Creates a plain object from an AuthenticateRequest message. Also converts values to other types if specified.
 191               * @function toObject
 192               * @memberof market.mass.AuthenticateRequest
 193               * @static
 194               * @param {market.mass.AuthenticateRequest} message AuthenticateRequest
 195               * @param {$protobuf.IConversionOptions} [options] Conversion options
 196               * @returns {Object.<string,*>} Plain object
 197               */
 198              AuthenticateRequest.toObject = function toObject(message, options) {
 199                  if (!options)
 200                      options = {};
 201                  let object = {};
 202                  if (options.defaults)
 203                      object.publicKey = null;
 204                  if (message.publicKey != null && message.hasOwnProperty("publicKey"))
 205                      object.publicKey = $root.market.mass.PublicKey.toObject(message.publicKey, options);
 206                  return object;
 207              };
 208  
 209              /**
 210               * Converts this AuthenticateRequest to JSON.
 211               * @function toJSON
 212               * @memberof market.mass.AuthenticateRequest
 213               * @instance
 214               * @returns {Object.<string,*>} JSON object
 215               */
 216              AuthenticateRequest.prototype.toJSON = function toJSON() {
 217                  return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
 218              };
 219  
 220              /**
 221               * Gets the default type url for AuthenticateRequest
 222               * @function getTypeUrl
 223               * @memberof market.mass.AuthenticateRequest
 224               * @static
 225               * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
 226               * @returns {string} The default type url
 227               */
 228              AuthenticateRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
 229                  if (typeUrlPrefix === undefined) {
 230                      typeUrlPrefix = "type.googleapis.com";
 231                  }
 232                  return typeUrlPrefix + "/market.mass.AuthenticateRequest";
 233              };
 234  
 235              return AuthenticateRequest;
 236          })();
 237  
 238          mass.ChallengeSolvedRequest = (function() {
 239  
 240              /**
 241               * Properties of a ChallengeSolvedRequest.
 242               * @memberof market.mass
 243               * @interface IChallengeSolvedRequest
 244               * @property {market.mass.ISignature|null} [signature] ChallengeSolvedRequest signature
 245               */
 246  
 247              /**
 248               * Constructs a new ChallengeSolvedRequest.
 249               * @memberof market.mass
 250               * @classdesc Represents a ChallengeSolvedRequest.
 251               * @implements IChallengeSolvedRequest
 252               * @constructor
 253               * @param {market.mass.IChallengeSolvedRequest=} [properties] Properties to set
 254               */
 255              function ChallengeSolvedRequest(properties) {
 256                  if (properties)
 257                      for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
 258                          if (properties[keys[i]] != null)
 259                              this[keys[i]] = properties[keys[i]];
 260              }
 261  
 262              /**
 263               * ChallengeSolvedRequest signature.
 264               * @member {market.mass.ISignature|null|undefined} signature
 265               * @memberof market.mass.ChallengeSolvedRequest
 266               * @instance
 267               */
 268              ChallengeSolvedRequest.prototype.signature = null;
 269  
 270              /**
 271               * Creates a new ChallengeSolvedRequest instance using the specified properties.
 272               * @function create
 273               * @memberof market.mass.ChallengeSolvedRequest
 274               * @static
 275               * @param {market.mass.IChallengeSolvedRequest=} [properties] Properties to set
 276               * @returns {market.mass.ChallengeSolvedRequest} ChallengeSolvedRequest instance
 277               */
 278              ChallengeSolvedRequest.create = function create(properties) {
 279                  return new ChallengeSolvedRequest(properties);
 280              };
 281  
 282              /**
 283               * Encodes the specified ChallengeSolvedRequest message. Does not implicitly {@link market.mass.ChallengeSolvedRequest.verify|verify} messages.
 284               * @function encode
 285               * @memberof market.mass.ChallengeSolvedRequest
 286               * @static
 287               * @param {market.mass.IChallengeSolvedRequest} message ChallengeSolvedRequest message or plain object to encode
 288               * @param {$protobuf.Writer} [writer] Writer to encode to
 289               * @returns {$protobuf.Writer} Writer
 290               */
 291              ChallengeSolvedRequest.encode = function encode(message, writer) {
 292                  if (!writer)
 293                      writer = $Writer.create();
 294                  if (message.signature != null && Object.hasOwnProperty.call(message, "signature"))
 295                      $root.market.mass.Signature.encode(message.signature, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
 296                  return writer;
 297              };
 298  
 299              /**
 300               * Encodes the specified ChallengeSolvedRequest message, length delimited. Does not implicitly {@link market.mass.ChallengeSolvedRequest.verify|verify} messages.
 301               * @function encodeDelimited
 302               * @memberof market.mass.ChallengeSolvedRequest
 303               * @static
 304               * @param {market.mass.IChallengeSolvedRequest} message ChallengeSolvedRequest message or plain object to encode
 305               * @param {$protobuf.Writer} [writer] Writer to encode to
 306               * @returns {$protobuf.Writer} Writer
 307               */
 308              ChallengeSolvedRequest.encodeDelimited = function encodeDelimited(message, writer) {
 309                  return this.encode(message, writer).ldelim();
 310              };
 311  
 312              /**
 313               * Decodes a ChallengeSolvedRequest message from the specified reader or buffer.
 314               * @function decode
 315               * @memberof market.mass.ChallengeSolvedRequest
 316               * @static
 317               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
 318               * @param {number} [length] Message length if known beforehand
 319               * @returns {market.mass.ChallengeSolvedRequest} ChallengeSolvedRequest
 320               * @throws {Error} If the payload is not a reader or valid buffer
 321               * @throws {$protobuf.util.ProtocolError} If required fields are missing
 322               */
 323              ChallengeSolvedRequest.decode = function decode(reader, length, error) {
 324                  if (!(reader instanceof $Reader))
 325                      reader = $Reader.create(reader);
 326                  let end = length === undefined ? reader.len : reader.pos + length, message = new $root.market.mass.ChallengeSolvedRequest();
 327                  while (reader.pos < end) {
 328                      let tag = reader.uint32();
 329                      if (tag === error)
 330                          break;
 331                      switch (tag >>> 3) {
 332                      case 2: {
 333                              message.signature = $root.market.mass.Signature.decode(reader, reader.uint32());
 334                              break;
 335                          }
 336                      default:
 337                          reader.skipType(tag & 7);
 338                          break;
 339                      }
 340                  }
 341                  return message;
 342              };
 343  
 344              /**
 345               * Decodes a ChallengeSolvedRequest message from the specified reader or buffer, length delimited.
 346               * @function decodeDelimited
 347               * @memberof market.mass.ChallengeSolvedRequest
 348               * @static
 349               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
 350               * @returns {market.mass.ChallengeSolvedRequest} ChallengeSolvedRequest
 351               * @throws {Error} If the payload is not a reader or valid buffer
 352               * @throws {$protobuf.util.ProtocolError} If required fields are missing
 353               */
 354              ChallengeSolvedRequest.decodeDelimited = function decodeDelimited(reader) {
 355                  if (!(reader instanceof $Reader))
 356                      reader = new $Reader(reader);
 357                  return this.decode(reader, reader.uint32());
 358              };
 359  
 360              /**
 361               * Verifies a ChallengeSolvedRequest message.
 362               * @function verify
 363               * @memberof market.mass.ChallengeSolvedRequest
 364               * @static
 365               * @param {Object.<string,*>} message Plain object to verify
 366               * @returns {string|null} `null` if valid, otherwise the reason why it is not
 367               */
 368              ChallengeSolvedRequest.verify = function verify(message) {
 369                  if (typeof message !== "object" || message === null)
 370                      return "object expected";
 371                  if (message.signature != null && message.hasOwnProperty("signature")) {
 372                      let error = $root.market.mass.Signature.verify(message.signature);
 373                      if (error)
 374                          return "signature." + error;
 375                  }
 376                  return null;
 377              };
 378  
 379              /**
 380               * Creates a ChallengeSolvedRequest message from a plain object. Also converts values to their respective internal types.
 381               * @function fromObject
 382               * @memberof market.mass.ChallengeSolvedRequest
 383               * @static
 384               * @param {Object.<string,*>} object Plain object
 385               * @returns {market.mass.ChallengeSolvedRequest} ChallengeSolvedRequest
 386               */
 387              ChallengeSolvedRequest.fromObject = function fromObject(object) {
 388                  if (object instanceof $root.market.mass.ChallengeSolvedRequest)
 389                      return object;
 390                  let message = new $root.market.mass.ChallengeSolvedRequest();
 391                  if (object.signature != null) {
 392                      if (typeof object.signature !== "object")
 393                          throw TypeError(".market.mass.ChallengeSolvedRequest.signature: object expected");
 394                      message.signature = $root.market.mass.Signature.fromObject(object.signature);
 395                  }
 396                  return message;
 397              };
 398  
 399              /**
 400               * Creates a plain object from a ChallengeSolvedRequest message. Also converts values to other types if specified.
 401               * @function toObject
 402               * @memberof market.mass.ChallengeSolvedRequest
 403               * @static
 404               * @param {market.mass.ChallengeSolvedRequest} message ChallengeSolvedRequest
 405               * @param {$protobuf.IConversionOptions} [options] Conversion options
 406               * @returns {Object.<string,*>} Plain object
 407               */
 408              ChallengeSolvedRequest.toObject = function toObject(message, options) {
 409                  if (!options)
 410                      options = {};
 411                  let object = {};
 412                  if (options.defaults)
 413                      object.signature = null;
 414                  if (message.signature != null && message.hasOwnProperty("signature"))
 415                      object.signature = $root.market.mass.Signature.toObject(message.signature, options);
 416                  return object;
 417              };
 418  
 419              /**
 420               * Converts this ChallengeSolvedRequest to JSON.
 421               * @function toJSON
 422               * @memberof market.mass.ChallengeSolvedRequest
 423               * @instance
 424               * @returns {Object.<string,*>} JSON object
 425               */
 426              ChallengeSolvedRequest.prototype.toJSON = function toJSON() {
 427                  return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
 428              };
 429  
 430              /**
 431               * Gets the default type url for ChallengeSolvedRequest
 432               * @function getTypeUrl
 433               * @memberof market.mass.ChallengeSolvedRequest
 434               * @static
 435               * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
 436               * @returns {string} The default type url
 437               */
 438              ChallengeSolvedRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
 439                  if (typeUrlPrefix === undefined) {
 440                      typeUrlPrefix = "type.googleapis.com";
 441                  }
 442                  return typeUrlPrefix + "/market.mass.ChallengeSolvedRequest";
 443              };
 444  
 445              return ChallengeSolvedRequest;
 446          })();
 447  
 448          mass.RequestId = (function() {
 449  
 450              /**
 451               * Properties of a RequestId.
 452               * @memberof market.mass
 453               * @interface IRequestId
 454               * @property {number|Long|null} [raw] RequestId raw
 455               */
 456  
 457              /**
 458               * Constructs a new RequestId.
 459               * @memberof market.mass
 460               * @classdesc Represents a RequestId.
 461               * @implements IRequestId
 462               * @constructor
 463               * @param {market.mass.IRequestId=} [properties] Properties to set
 464               */
 465              function RequestId(properties) {
 466                  if (properties)
 467                      for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
 468                          if (properties[keys[i]] != null)
 469                              this[keys[i]] = properties[keys[i]];
 470              }
 471  
 472              /**
 473               * RequestId raw.
 474               * @member {number|Long} raw
 475               * @memberof market.mass.RequestId
 476               * @instance
 477               */
 478              RequestId.prototype.raw = $util.Long ? $util.Long.fromBits(0,0,false) : 0;
 479  
 480              /**
 481               * Creates a new RequestId instance using the specified properties.
 482               * @function create
 483               * @memberof market.mass.RequestId
 484               * @static
 485               * @param {market.mass.IRequestId=} [properties] Properties to set
 486               * @returns {market.mass.RequestId} RequestId instance
 487               */
 488              RequestId.create = function create(properties) {
 489                  return new RequestId(properties);
 490              };
 491  
 492              /**
 493               * Encodes the specified RequestId message. Does not implicitly {@link market.mass.RequestId.verify|verify} messages.
 494               * @function encode
 495               * @memberof market.mass.RequestId
 496               * @static
 497               * @param {market.mass.IRequestId} message RequestId message or plain object to encode
 498               * @param {$protobuf.Writer} [writer] Writer to encode to
 499               * @returns {$protobuf.Writer} Writer
 500               */
 501              RequestId.encode = function encode(message, writer) {
 502                  if (!writer)
 503                      writer = $Writer.create();
 504                  if (message.raw != null && Object.hasOwnProperty.call(message, "raw"))
 505                      writer.uint32(/* id 1, wireType 0 =*/8).sint64(message.raw);
 506                  return writer;
 507              };
 508  
 509              /**
 510               * Encodes the specified RequestId message, length delimited. Does not implicitly {@link market.mass.RequestId.verify|verify} messages.
 511               * @function encodeDelimited
 512               * @memberof market.mass.RequestId
 513               * @static
 514               * @param {market.mass.IRequestId} message RequestId message or plain object to encode
 515               * @param {$protobuf.Writer} [writer] Writer to encode to
 516               * @returns {$protobuf.Writer} Writer
 517               */
 518              RequestId.encodeDelimited = function encodeDelimited(message, writer) {
 519                  return this.encode(message, writer).ldelim();
 520              };
 521  
 522              /**
 523               * Decodes a RequestId message from the specified reader or buffer.
 524               * @function decode
 525               * @memberof market.mass.RequestId
 526               * @static
 527               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
 528               * @param {number} [length] Message length if known beforehand
 529               * @returns {market.mass.RequestId} RequestId
 530               * @throws {Error} If the payload is not a reader or valid buffer
 531               * @throws {$protobuf.util.ProtocolError} If required fields are missing
 532               */
 533              RequestId.decode = function decode(reader, length, error) {
 534                  if (!(reader instanceof $Reader))
 535                      reader = $Reader.create(reader);
 536                  let end = length === undefined ? reader.len : reader.pos + length, message = new $root.market.mass.RequestId();
 537                  while (reader.pos < end) {
 538                      let tag = reader.uint32();
 539                      if (tag === error)
 540                          break;
 541                      switch (tag >>> 3) {
 542                      case 1: {
 543                              message.raw = reader.sint64();
 544                              break;
 545                          }
 546                      default:
 547                          reader.skipType(tag & 7);
 548                          break;
 549                      }
 550                  }
 551                  return message;
 552              };
 553  
 554              /**
 555               * Decodes a RequestId message from the specified reader or buffer, length delimited.
 556               * @function decodeDelimited
 557               * @memberof market.mass.RequestId
 558               * @static
 559               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
 560               * @returns {market.mass.RequestId} RequestId
 561               * @throws {Error} If the payload is not a reader or valid buffer
 562               * @throws {$protobuf.util.ProtocolError} If required fields are missing
 563               */
 564              RequestId.decodeDelimited = function decodeDelimited(reader) {
 565                  if (!(reader instanceof $Reader))
 566                      reader = new $Reader(reader);
 567                  return this.decode(reader, reader.uint32());
 568              };
 569  
 570              /**
 571               * Verifies a RequestId message.
 572               * @function verify
 573               * @memberof market.mass.RequestId
 574               * @static
 575               * @param {Object.<string,*>} message Plain object to verify
 576               * @returns {string|null} `null` if valid, otherwise the reason why it is not
 577               */
 578              RequestId.verify = function verify(message) {
 579                  if (typeof message !== "object" || message === null)
 580                      return "object expected";
 581                  if (message.raw != null && message.hasOwnProperty("raw"))
 582                      if (!$util.isInteger(message.raw) && !(message.raw && $util.isInteger(message.raw.low) && $util.isInteger(message.raw.high)))
 583                          return "raw: integer|Long expected";
 584                  return null;
 585              };
 586  
 587              /**
 588               * Creates a RequestId message from a plain object. Also converts values to their respective internal types.
 589               * @function fromObject
 590               * @memberof market.mass.RequestId
 591               * @static
 592               * @param {Object.<string,*>} object Plain object
 593               * @returns {market.mass.RequestId} RequestId
 594               */
 595              RequestId.fromObject = function fromObject(object) {
 596                  if (object instanceof $root.market.mass.RequestId)
 597                      return object;
 598                  let message = new $root.market.mass.RequestId();
 599                  if (object.raw != null)
 600                      if ($util.Long)
 601                          (message.raw = $util.Long.fromValue(object.raw)).unsigned = false;
 602                      else if (typeof object.raw === "string")
 603                          message.raw = parseInt(object.raw, 10);
 604                      else if (typeof object.raw === "number")
 605                          message.raw = object.raw;
 606                      else if (typeof object.raw === "object")
 607                          message.raw = new $util.LongBits(object.raw.low >>> 0, object.raw.high >>> 0).toNumber();
 608                  return message;
 609              };
 610  
 611              /**
 612               * Creates a plain object from a RequestId message. Also converts values to other types if specified.
 613               * @function toObject
 614               * @memberof market.mass.RequestId
 615               * @static
 616               * @param {market.mass.RequestId} message RequestId
 617               * @param {$protobuf.IConversionOptions} [options] Conversion options
 618               * @returns {Object.<string,*>} Plain object
 619               */
 620              RequestId.toObject = function toObject(message, options) {
 621                  if (!options)
 622                      options = {};
 623                  let object = {};
 624                  if (options.defaults)
 625                      if ($util.Long) {
 626                          let long = new $util.Long(0, 0, false);
 627                          object.raw = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
 628                      } else
 629                          object.raw = options.longs === String ? "0" : 0;
 630                  if (message.raw != null && message.hasOwnProperty("raw"))
 631                      if (typeof message.raw === "number")
 632                          object.raw = options.longs === String ? String(message.raw) : message.raw;
 633                      else
 634                          object.raw = options.longs === String ? $util.Long.prototype.toString.call(message.raw) : options.longs === Number ? new $util.LongBits(message.raw.low >>> 0, message.raw.high >>> 0).toNumber() : message.raw;
 635                  return object;
 636              };
 637  
 638              /**
 639               * Converts this RequestId to JSON.
 640               * @function toJSON
 641               * @memberof market.mass.RequestId
 642               * @instance
 643               * @returns {Object.<string,*>} JSON object
 644               */
 645              RequestId.prototype.toJSON = function toJSON() {
 646                  return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
 647              };
 648  
 649              /**
 650               * Gets the default type url for RequestId
 651               * @function getTypeUrl
 652               * @memberof market.mass.RequestId
 653               * @static
 654               * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
 655               * @returns {string} The default type url
 656               */
 657              RequestId.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
 658                  if (typeUrlPrefix === undefined) {
 659                      typeUrlPrefix = "type.googleapis.com";
 660                  }
 661                  return typeUrlPrefix + "/market.mass.RequestId";
 662              };
 663  
 664              return RequestId;
 665          })();
 666  
 667          mass.Signature = (function() {
 668  
 669              /**
 670               * Properties of a Signature.
 671               * @memberof market.mass
 672               * @interface ISignature
 673               * @property {Uint8Array|null} [raw] Signature raw
 674               */
 675  
 676              /**
 677               * Constructs a new Signature.
 678               * @memberof market.mass
 679               * @classdesc Represents a Signature.
 680               * @implements ISignature
 681               * @constructor
 682               * @param {market.mass.ISignature=} [properties] Properties to set
 683               */
 684              function Signature(properties) {
 685                  if (properties)
 686                      for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
 687                          if (properties[keys[i]] != null)
 688                              this[keys[i]] = properties[keys[i]];
 689              }
 690  
 691              /**
 692               * Signature raw.
 693               * @member {Uint8Array} raw
 694               * @memberof market.mass.Signature
 695               * @instance
 696               */
 697              Signature.prototype.raw = $util.newBuffer([]);
 698  
 699              /**
 700               * Creates a new Signature instance using the specified properties.
 701               * @function create
 702               * @memberof market.mass.Signature
 703               * @static
 704               * @param {market.mass.ISignature=} [properties] Properties to set
 705               * @returns {market.mass.Signature} Signature instance
 706               */
 707              Signature.create = function create(properties) {
 708                  return new Signature(properties);
 709              };
 710  
 711              /**
 712               * Encodes the specified Signature message. Does not implicitly {@link market.mass.Signature.verify|verify} messages.
 713               * @function encode
 714               * @memberof market.mass.Signature
 715               * @static
 716               * @param {market.mass.ISignature} message Signature message or plain object to encode
 717               * @param {$protobuf.Writer} [writer] Writer to encode to
 718               * @returns {$protobuf.Writer} Writer
 719               */
 720              Signature.encode = function encode(message, writer) {
 721                  if (!writer)
 722                      writer = $Writer.create();
 723                  if (message.raw != null && Object.hasOwnProperty.call(message, "raw"))
 724                      writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.raw);
 725                  return writer;
 726              };
 727  
 728              /**
 729               * Encodes the specified Signature message, length delimited. Does not implicitly {@link market.mass.Signature.verify|verify} messages.
 730               * @function encodeDelimited
 731               * @memberof market.mass.Signature
 732               * @static
 733               * @param {market.mass.ISignature} message Signature message or plain object to encode
 734               * @param {$protobuf.Writer} [writer] Writer to encode to
 735               * @returns {$protobuf.Writer} Writer
 736               */
 737              Signature.encodeDelimited = function encodeDelimited(message, writer) {
 738                  return this.encode(message, writer).ldelim();
 739              };
 740  
 741              /**
 742               * Decodes a Signature message from the specified reader or buffer.
 743               * @function decode
 744               * @memberof market.mass.Signature
 745               * @static
 746               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
 747               * @param {number} [length] Message length if known beforehand
 748               * @returns {market.mass.Signature} Signature
 749               * @throws {Error} If the payload is not a reader or valid buffer
 750               * @throws {$protobuf.util.ProtocolError} If required fields are missing
 751               */
 752              Signature.decode = function decode(reader, length, error) {
 753                  if (!(reader instanceof $Reader))
 754                      reader = $Reader.create(reader);
 755                  let end = length === undefined ? reader.len : reader.pos + length, message = new $root.market.mass.Signature();
 756                  while (reader.pos < end) {
 757                      let tag = reader.uint32();
 758                      if (tag === error)
 759                          break;
 760                      switch (tag >>> 3) {
 761                      case 1: {
 762                              message.raw = reader.bytes();
 763                              break;
 764                          }
 765                      default:
 766                          reader.skipType(tag & 7);
 767                          break;
 768                      }
 769                  }
 770                  return message;
 771              };
 772  
 773              /**
 774               * Decodes a Signature message from the specified reader or buffer, length delimited.
 775               * @function decodeDelimited
 776               * @memberof market.mass.Signature
 777               * @static
 778               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
 779               * @returns {market.mass.Signature} Signature
 780               * @throws {Error} If the payload is not a reader or valid buffer
 781               * @throws {$protobuf.util.ProtocolError} If required fields are missing
 782               */
 783              Signature.decodeDelimited = function decodeDelimited(reader) {
 784                  if (!(reader instanceof $Reader))
 785                      reader = new $Reader(reader);
 786                  return this.decode(reader, reader.uint32());
 787              };
 788  
 789              /**
 790               * Verifies a Signature message.
 791               * @function verify
 792               * @memberof market.mass.Signature
 793               * @static
 794               * @param {Object.<string,*>} message Plain object to verify
 795               * @returns {string|null} `null` if valid, otherwise the reason why it is not
 796               */
 797              Signature.verify = function verify(message) {
 798                  if (typeof message !== "object" || message === null)
 799                      return "object expected";
 800                  if (message.raw != null && message.hasOwnProperty("raw"))
 801                      if (!(message.raw && typeof message.raw.length === "number" || $util.isString(message.raw)))
 802                          return "raw: buffer expected";
 803                  return null;
 804              };
 805  
 806              /**
 807               * Creates a Signature message from a plain object. Also converts values to their respective internal types.
 808               * @function fromObject
 809               * @memberof market.mass.Signature
 810               * @static
 811               * @param {Object.<string,*>} object Plain object
 812               * @returns {market.mass.Signature} Signature
 813               */
 814              Signature.fromObject = function fromObject(object) {
 815                  if (object instanceof $root.market.mass.Signature)
 816                      return object;
 817                  let message = new $root.market.mass.Signature();
 818                  if (object.raw != null)
 819                      if (typeof object.raw === "string")
 820                          $util.base64.decode(object.raw, message.raw = $util.newBuffer($util.base64.length(object.raw)), 0);
 821                      else if (object.raw.length >= 0)
 822                          message.raw = object.raw;
 823                  return message;
 824              };
 825  
 826              /**
 827               * Creates a plain object from a Signature message. Also converts values to other types if specified.
 828               * @function toObject
 829               * @memberof market.mass.Signature
 830               * @static
 831               * @param {market.mass.Signature} message Signature
 832               * @param {$protobuf.IConversionOptions} [options] Conversion options
 833               * @returns {Object.<string,*>} Plain object
 834               */
 835              Signature.toObject = function toObject(message, options) {
 836                  if (!options)
 837                      options = {};
 838                  let object = {};
 839                  if (options.defaults)
 840                      if (options.bytes === String)
 841                          object.raw = "";
 842                      else {
 843                          object.raw = [];
 844                          if (options.bytes !== Array)
 845                              object.raw = $util.newBuffer(object.raw);
 846                      }
 847                  if (message.raw != null && message.hasOwnProperty("raw"))
 848                      object.raw = options.bytes === String ? $util.base64.encode(message.raw, 0, message.raw.length) : options.bytes === Array ? Array.prototype.slice.call(message.raw) : message.raw;
 849                  return object;
 850              };
 851  
 852              /**
 853               * Converts this Signature to JSON.
 854               * @function toJSON
 855               * @memberof market.mass.Signature
 856               * @instance
 857               * @returns {Object.<string,*>} JSON object
 858               */
 859              Signature.prototype.toJSON = function toJSON() {
 860                  return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
 861              };
 862  
 863              /**
 864               * Gets the default type url for Signature
 865               * @function getTypeUrl
 866               * @memberof market.mass.Signature
 867               * @static
 868               * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
 869               * @returns {string} The default type url
 870               */
 871              Signature.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
 872                  if (typeUrlPrefix === undefined) {
 873                      typeUrlPrefix = "type.googleapis.com";
 874                  }
 875                  return typeUrlPrefix + "/market.mass.Signature";
 876              };
 877  
 878              return Signature;
 879          })();
 880  
 881          mass.PublicKey = (function() {
 882  
 883              /**
 884               * Properties of a PublicKey.
 885               * @memberof market.mass
 886               * @interface IPublicKey
 887               * @property {Uint8Array|null} [raw] PublicKey raw
 888               */
 889  
 890              /**
 891               * Constructs a new PublicKey.
 892               * @memberof market.mass
 893               * @classdesc Represents a PublicKey.
 894               * @implements IPublicKey
 895               * @constructor
 896               * @param {market.mass.IPublicKey=} [properties] Properties to set
 897               */
 898              function PublicKey(properties) {
 899                  if (properties)
 900                      for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
 901                          if (properties[keys[i]] != null)
 902                              this[keys[i]] = properties[keys[i]];
 903              }
 904  
 905              /**
 906               * PublicKey raw.
 907               * @member {Uint8Array} raw
 908               * @memberof market.mass.PublicKey
 909               * @instance
 910               */
 911              PublicKey.prototype.raw = $util.newBuffer([]);
 912  
 913              /**
 914               * Creates a new PublicKey instance using the specified properties.
 915               * @function create
 916               * @memberof market.mass.PublicKey
 917               * @static
 918               * @param {market.mass.IPublicKey=} [properties] Properties to set
 919               * @returns {market.mass.PublicKey} PublicKey instance
 920               */
 921              PublicKey.create = function create(properties) {
 922                  return new PublicKey(properties);
 923              };
 924  
 925              /**
 926               * Encodes the specified PublicKey message. Does not implicitly {@link market.mass.PublicKey.verify|verify} messages.
 927               * @function encode
 928               * @memberof market.mass.PublicKey
 929               * @static
 930               * @param {market.mass.IPublicKey} message PublicKey message or plain object to encode
 931               * @param {$protobuf.Writer} [writer] Writer to encode to
 932               * @returns {$protobuf.Writer} Writer
 933               */
 934              PublicKey.encode = function encode(message, writer) {
 935                  if (!writer)
 936                      writer = $Writer.create();
 937                  if (message.raw != null && Object.hasOwnProperty.call(message, "raw"))
 938                      writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.raw);
 939                  return writer;
 940              };
 941  
 942              /**
 943               * Encodes the specified PublicKey message, length delimited. Does not implicitly {@link market.mass.PublicKey.verify|verify} messages.
 944               * @function encodeDelimited
 945               * @memberof market.mass.PublicKey
 946               * @static
 947               * @param {market.mass.IPublicKey} message PublicKey message or plain object to encode
 948               * @param {$protobuf.Writer} [writer] Writer to encode to
 949               * @returns {$protobuf.Writer} Writer
 950               */
 951              PublicKey.encodeDelimited = function encodeDelimited(message, writer) {
 952                  return this.encode(message, writer).ldelim();
 953              };
 954  
 955              /**
 956               * Decodes a PublicKey message from the specified reader or buffer.
 957               * @function decode
 958               * @memberof market.mass.PublicKey
 959               * @static
 960               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
 961               * @param {number} [length] Message length if known beforehand
 962               * @returns {market.mass.PublicKey} PublicKey
 963               * @throws {Error} If the payload is not a reader or valid buffer
 964               * @throws {$protobuf.util.ProtocolError} If required fields are missing
 965               */
 966              PublicKey.decode = function decode(reader, length, error) {
 967                  if (!(reader instanceof $Reader))
 968                      reader = $Reader.create(reader);
 969                  let end = length === undefined ? reader.len : reader.pos + length, message = new $root.market.mass.PublicKey();
 970                  while (reader.pos < end) {
 971                      let tag = reader.uint32();
 972                      if (tag === error)
 973                          break;
 974                      switch (tag >>> 3) {
 975                      case 1: {
 976                              message.raw = reader.bytes();
 977                              break;
 978                          }
 979                      default:
 980                          reader.skipType(tag & 7);
 981                          break;
 982                      }
 983                  }
 984                  return message;
 985              };
 986  
 987              /**
 988               * Decodes a PublicKey message from the specified reader or buffer, length delimited.
 989               * @function decodeDelimited
 990               * @memberof market.mass.PublicKey
 991               * @static
 992               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
 993               * @returns {market.mass.PublicKey} PublicKey
 994               * @throws {Error} If the payload is not a reader or valid buffer
 995               * @throws {$protobuf.util.ProtocolError} If required fields are missing
 996               */
 997              PublicKey.decodeDelimited = function decodeDelimited(reader) {
 998                  if (!(reader instanceof $Reader))
 999                      reader = new $Reader(reader);
1000                  return this.decode(reader, reader.uint32());
1001              };
1002  
1003              /**
1004               * Verifies a PublicKey message.
1005               * @function verify
1006               * @memberof market.mass.PublicKey
1007               * @static
1008               * @param {Object.<string,*>} message Plain object to verify
1009               * @returns {string|null} `null` if valid, otherwise the reason why it is not
1010               */
1011              PublicKey.verify = function verify(message) {
1012                  if (typeof message !== "object" || message === null)
1013                      return "object expected";
1014                  if (message.raw != null && message.hasOwnProperty("raw"))
1015                      if (!(message.raw && typeof message.raw.length === "number" || $util.isString(message.raw)))
1016                          return "raw: buffer expected";
1017                  return null;
1018              };
1019  
1020              /**
1021               * Creates a PublicKey message from a plain object. Also converts values to their respective internal types.
1022               * @function fromObject
1023               * @memberof market.mass.PublicKey
1024               * @static
1025               * @param {Object.<string,*>} object Plain object
1026               * @returns {market.mass.PublicKey} PublicKey
1027               */
1028              PublicKey.fromObject = function fromObject(object) {
1029                  if (object instanceof $root.market.mass.PublicKey)
1030                      return object;
1031                  let message = new $root.market.mass.PublicKey();
1032                  if (object.raw != null)
1033                      if (typeof object.raw === "string")
1034                          $util.base64.decode(object.raw, message.raw = $util.newBuffer($util.base64.length(object.raw)), 0);
1035                      else if (object.raw.length >= 0)
1036                          message.raw = object.raw;
1037                  return message;
1038              };
1039  
1040              /**
1041               * Creates a plain object from a PublicKey message. Also converts values to other types if specified.
1042               * @function toObject
1043               * @memberof market.mass.PublicKey
1044               * @static
1045               * @param {market.mass.PublicKey} message PublicKey
1046               * @param {$protobuf.IConversionOptions} [options] Conversion options
1047               * @returns {Object.<string,*>} Plain object
1048               */
1049              PublicKey.toObject = function toObject(message, options) {
1050                  if (!options)
1051                      options = {};
1052                  let object = {};
1053                  if (options.defaults)
1054                      if (options.bytes === String)
1055                          object.raw = "";
1056                      else {
1057                          object.raw = [];
1058                          if (options.bytes !== Array)
1059                              object.raw = $util.newBuffer(object.raw);
1060                      }
1061                  if (message.raw != null && message.hasOwnProperty("raw"))
1062                      object.raw = options.bytes === String ? $util.base64.encode(message.raw, 0, message.raw.length) : options.bytes === Array ? Array.prototype.slice.call(message.raw) : message.raw;
1063                  return object;
1064              };
1065  
1066              /**
1067               * Converts this PublicKey to JSON.
1068               * @function toJSON
1069               * @memberof market.mass.PublicKey
1070               * @instance
1071               * @returns {Object.<string,*>} JSON object
1072               */
1073              PublicKey.prototype.toJSON = function toJSON() {
1074                  return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
1075              };
1076  
1077              /**
1078               * Gets the default type url for PublicKey
1079               * @function getTypeUrl
1080               * @memberof market.mass.PublicKey
1081               * @static
1082               * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
1083               * @returns {string} The default type url
1084               */
1085              PublicKey.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
1086                  if (typeUrlPrefix === undefined) {
1087                      typeUrlPrefix = "type.googleapis.com";
1088                  }
1089                  return typeUrlPrefix + "/market.mass.PublicKey";
1090              };
1091  
1092              return PublicKey;
1093          })();
1094  
1095          mass.Uint256 = (function() {
1096  
1097              /**
1098               * Properties of an Uint256.
1099               * @memberof market.mass
1100               * @interface IUint256
1101               * @property {Uint8Array|null} [raw] Uint256 raw
1102               */
1103  
1104              /**
1105               * Constructs a new Uint256.
1106               * @memberof market.mass
1107               * @classdesc Represents an Uint256.
1108               * @implements IUint256
1109               * @constructor
1110               * @param {market.mass.IUint256=} [properties] Properties to set
1111               */
1112              function Uint256(properties) {
1113                  if (properties)
1114                      for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
1115                          if (properties[keys[i]] != null)
1116                              this[keys[i]] = properties[keys[i]];
1117              }
1118  
1119              /**
1120               * Uint256 raw.
1121               * @member {Uint8Array} raw
1122               * @memberof market.mass.Uint256
1123               * @instance
1124               */
1125              Uint256.prototype.raw = $util.newBuffer([]);
1126  
1127              /**
1128               * Creates a new Uint256 instance using the specified properties.
1129               * @function create
1130               * @memberof market.mass.Uint256
1131               * @static
1132               * @param {market.mass.IUint256=} [properties] Properties to set
1133               * @returns {market.mass.Uint256} Uint256 instance
1134               */
1135              Uint256.create = function create(properties) {
1136                  return new Uint256(properties);
1137              };
1138  
1139              /**
1140               * Encodes the specified Uint256 message. Does not implicitly {@link market.mass.Uint256.verify|verify} messages.
1141               * @function encode
1142               * @memberof market.mass.Uint256
1143               * @static
1144               * @param {market.mass.IUint256} message Uint256 message or plain object to encode
1145               * @param {$protobuf.Writer} [writer] Writer to encode to
1146               * @returns {$protobuf.Writer} Writer
1147               */
1148              Uint256.encode = function encode(message, writer) {
1149                  if (!writer)
1150                      writer = $Writer.create();
1151                  if (message.raw != null && Object.hasOwnProperty.call(message, "raw"))
1152                      writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.raw);
1153                  return writer;
1154              };
1155  
1156              /**
1157               * Encodes the specified Uint256 message, length delimited. Does not implicitly {@link market.mass.Uint256.verify|verify} messages.
1158               * @function encodeDelimited
1159               * @memberof market.mass.Uint256
1160               * @static
1161               * @param {market.mass.IUint256} message Uint256 message or plain object to encode
1162               * @param {$protobuf.Writer} [writer] Writer to encode to
1163               * @returns {$protobuf.Writer} Writer
1164               */
1165              Uint256.encodeDelimited = function encodeDelimited(message, writer) {
1166                  return this.encode(message, writer).ldelim();
1167              };
1168  
1169              /**
1170               * Decodes an Uint256 message from the specified reader or buffer.
1171               * @function decode
1172               * @memberof market.mass.Uint256
1173               * @static
1174               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1175               * @param {number} [length] Message length if known beforehand
1176               * @returns {market.mass.Uint256} Uint256
1177               * @throws {Error} If the payload is not a reader or valid buffer
1178               * @throws {$protobuf.util.ProtocolError} If required fields are missing
1179               */
1180              Uint256.decode = function decode(reader, length, error) {
1181                  if (!(reader instanceof $Reader))
1182                      reader = $Reader.create(reader);
1183                  let end = length === undefined ? reader.len : reader.pos + length, message = new $root.market.mass.Uint256();
1184                  while (reader.pos < end) {
1185                      let tag = reader.uint32();
1186                      if (tag === error)
1187                          break;
1188                      switch (tag >>> 3) {
1189                      case 1: {
1190                              message.raw = reader.bytes();
1191                              break;
1192                          }
1193                      default:
1194                          reader.skipType(tag & 7);
1195                          break;
1196                      }
1197                  }
1198                  return message;
1199              };
1200  
1201              /**
1202               * Decodes an Uint256 message from the specified reader or buffer, length delimited.
1203               * @function decodeDelimited
1204               * @memberof market.mass.Uint256
1205               * @static
1206               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1207               * @returns {market.mass.Uint256} Uint256
1208               * @throws {Error} If the payload is not a reader or valid buffer
1209               * @throws {$protobuf.util.ProtocolError} If required fields are missing
1210               */
1211              Uint256.decodeDelimited = function decodeDelimited(reader) {
1212                  if (!(reader instanceof $Reader))
1213                      reader = new $Reader(reader);
1214                  return this.decode(reader, reader.uint32());
1215              };
1216  
1217              /**
1218               * Verifies an Uint256 message.
1219               * @function verify
1220               * @memberof market.mass.Uint256
1221               * @static
1222               * @param {Object.<string,*>} message Plain object to verify
1223               * @returns {string|null} `null` if valid, otherwise the reason why it is not
1224               */
1225              Uint256.verify = function verify(message) {
1226                  if (typeof message !== "object" || message === null)
1227                      return "object expected";
1228                  if (message.raw != null && message.hasOwnProperty("raw"))
1229                      if (!(message.raw && typeof message.raw.length === "number" || $util.isString(message.raw)))
1230                          return "raw: buffer expected";
1231                  return null;
1232              };
1233  
1234              /**
1235               * Creates an Uint256 message from a plain object. Also converts values to their respective internal types.
1236               * @function fromObject
1237               * @memberof market.mass.Uint256
1238               * @static
1239               * @param {Object.<string,*>} object Plain object
1240               * @returns {market.mass.Uint256} Uint256
1241               */
1242              Uint256.fromObject = function fromObject(object) {
1243                  if (object instanceof $root.market.mass.Uint256)
1244                      return object;
1245                  let message = new $root.market.mass.Uint256();
1246                  if (object.raw != null)
1247                      if (typeof object.raw === "string")
1248                          $util.base64.decode(object.raw, message.raw = $util.newBuffer($util.base64.length(object.raw)), 0);
1249                      else if (object.raw.length >= 0)
1250                          message.raw = object.raw;
1251                  return message;
1252              };
1253  
1254              /**
1255               * Creates a plain object from an Uint256 message. Also converts values to other types if specified.
1256               * @function toObject
1257               * @memberof market.mass.Uint256
1258               * @static
1259               * @param {market.mass.Uint256} message Uint256
1260               * @param {$protobuf.IConversionOptions} [options] Conversion options
1261               * @returns {Object.<string,*>} Plain object
1262               */
1263              Uint256.toObject = function toObject(message, options) {
1264                  if (!options)
1265                      options = {};
1266                  let object = {};
1267                  if (options.defaults)
1268                      if (options.bytes === String)
1269                          object.raw = "";
1270                      else {
1271                          object.raw = [];
1272                          if (options.bytes !== Array)
1273                              object.raw = $util.newBuffer(object.raw);
1274                      }
1275                  if (message.raw != null && message.hasOwnProperty("raw"))
1276                      object.raw = options.bytes === String ? $util.base64.encode(message.raw, 0, message.raw.length) : options.bytes === Array ? Array.prototype.slice.call(message.raw) : message.raw;
1277                  return object;
1278              };
1279  
1280              /**
1281               * Converts this Uint256 to JSON.
1282               * @function toJSON
1283               * @memberof market.mass.Uint256
1284               * @instance
1285               * @returns {Object.<string,*>} JSON object
1286               */
1287              Uint256.prototype.toJSON = function toJSON() {
1288                  return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
1289              };
1290  
1291              /**
1292               * Gets the default type url for Uint256
1293               * @function getTypeUrl
1294               * @memberof market.mass.Uint256
1295               * @static
1296               * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
1297               * @returns {string} The default type url
1298               */
1299              Uint256.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
1300                  if (typeUrlPrefix === undefined) {
1301                      typeUrlPrefix = "type.googleapis.com";
1302                  }
1303                  return typeUrlPrefix + "/market.mass.Uint256";
1304              };
1305  
1306              return Uint256;
1307          })();
1308  
1309          mass.ObjectId = (function() {
1310  
1311              /**
1312               * Properties of an ObjectId.
1313               * @memberof market.mass
1314               * @interface IObjectId
1315               * @property {Uint8Array|null} [raw] ObjectId raw
1316               */
1317  
1318              /**
1319               * Constructs a new ObjectId.
1320               * @memberof market.mass
1321               * @classdesc Represents an ObjectId.
1322               * @implements IObjectId
1323               * @constructor
1324               * @param {market.mass.IObjectId=} [properties] Properties to set
1325               */
1326              function ObjectId(properties) {
1327                  if (properties)
1328                      for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
1329                          if (properties[keys[i]] != null)
1330                              this[keys[i]] = properties[keys[i]];
1331              }
1332  
1333              /**
1334               * ObjectId raw.
1335               * @member {Uint8Array} raw
1336               * @memberof market.mass.ObjectId
1337               * @instance
1338               */
1339              ObjectId.prototype.raw = $util.newBuffer([]);
1340  
1341              /**
1342               * Creates a new ObjectId instance using the specified properties.
1343               * @function create
1344               * @memberof market.mass.ObjectId
1345               * @static
1346               * @param {market.mass.IObjectId=} [properties] Properties to set
1347               * @returns {market.mass.ObjectId} ObjectId instance
1348               */
1349              ObjectId.create = function create(properties) {
1350                  return new ObjectId(properties);
1351              };
1352  
1353              /**
1354               * Encodes the specified ObjectId message. Does not implicitly {@link market.mass.ObjectId.verify|verify} messages.
1355               * @function encode
1356               * @memberof market.mass.ObjectId
1357               * @static
1358               * @param {market.mass.IObjectId} message ObjectId message or plain object to encode
1359               * @param {$protobuf.Writer} [writer] Writer to encode to
1360               * @returns {$protobuf.Writer} Writer
1361               */
1362              ObjectId.encode = function encode(message, writer) {
1363                  if (!writer)
1364                      writer = $Writer.create();
1365                  if (message.raw != null && Object.hasOwnProperty.call(message, "raw"))
1366                      writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.raw);
1367                  return writer;
1368              };
1369  
1370              /**
1371               * Encodes the specified ObjectId message, length delimited. Does not implicitly {@link market.mass.ObjectId.verify|verify} messages.
1372               * @function encodeDelimited
1373               * @memberof market.mass.ObjectId
1374               * @static
1375               * @param {market.mass.IObjectId} message ObjectId message or plain object to encode
1376               * @param {$protobuf.Writer} [writer] Writer to encode to
1377               * @returns {$protobuf.Writer} Writer
1378               */
1379              ObjectId.encodeDelimited = function encodeDelimited(message, writer) {
1380                  return this.encode(message, writer).ldelim();
1381              };
1382  
1383              /**
1384               * Decodes an ObjectId message from the specified reader or buffer.
1385               * @function decode
1386               * @memberof market.mass.ObjectId
1387               * @static
1388               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1389               * @param {number} [length] Message length if known beforehand
1390               * @returns {market.mass.ObjectId} ObjectId
1391               * @throws {Error} If the payload is not a reader or valid buffer
1392               * @throws {$protobuf.util.ProtocolError} If required fields are missing
1393               */
1394              ObjectId.decode = function decode(reader, length, error) {
1395                  if (!(reader instanceof $Reader))
1396                      reader = $Reader.create(reader);
1397                  let end = length === undefined ? reader.len : reader.pos + length, message = new $root.market.mass.ObjectId();
1398                  while (reader.pos < end) {
1399                      let tag = reader.uint32();
1400                      if (tag === error)
1401                          break;
1402                      switch (tag >>> 3) {
1403                      case 1: {
1404                              message.raw = reader.bytes();
1405                              break;
1406                          }
1407                      default:
1408                          reader.skipType(tag & 7);
1409                          break;
1410                      }
1411                  }
1412                  return message;
1413              };
1414  
1415              /**
1416               * Decodes an ObjectId message from the specified reader or buffer, length delimited.
1417               * @function decodeDelimited
1418               * @memberof market.mass.ObjectId
1419               * @static
1420               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1421               * @returns {market.mass.ObjectId} ObjectId
1422               * @throws {Error} If the payload is not a reader or valid buffer
1423               * @throws {$protobuf.util.ProtocolError} If required fields are missing
1424               */
1425              ObjectId.decodeDelimited = function decodeDelimited(reader) {
1426                  if (!(reader instanceof $Reader))
1427                      reader = new $Reader(reader);
1428                  return this.decode(reader, reader.uint32());
1429              };
1430  
1431              /**
1432               * Verifies an ObjectId message.
1433               * @function verify
1434               * @memberof market.mass.ObjectId
1435               * @static
1436               * @param {Object.<string,*>} message Plain object to verify
1437               * @returns {string|null} `null` if valid, otherwise the reason why it is not
1438               */
1439              ObjectId.verify = function verify(message) {
1440                  if (typeof message !== "object" || message === null)
1441                      return "object expected";
1442                  if (message.raw != null && message.hasOwnProperty("raw"))
1443                      if (!(message.raw && typeof message.raw.length === "number" || $util.isString(message.raw)))
1444                          return "raw: buffer expected";
1445                  return null;
1446              };
1447  
1448              /**
1449               * Creates an ObjectId message from a plain object. Also converts values to their respective internal types.
1450               * @function fromObject
1451               * @memberof market.mass.ObjectId
1452               * @static
1453               * @param {Object.<string,*>} object Plain object
1454               * @returns {market.mass.ObjectId} ObjectId
1455               */
1456              ObjectId.fromObject = function fromObject(object) {
1457                  if (object instanceof $root.market.mass.ObjectId)
1458                      return object;
1459                  let message = new $root.market.mass.ObjectId();
1460                  if (object.raw != null)
1461                      if (typeof object.raw === "string")
1462                          $util.base64.decode(object.raw, message.raw = $util.newBuffer($util.base64.length(object.raw)), 0);
1463                      else if (object.raw.length >= 0)
1464                          message.raw = object.raw;
1465                  return message;
1466              };
1467  
1468              /**
1469               * Creates a plain object from an ObjectId message. Also converts values to other types if specified.
1470               * @function toObject
1471               * @memberof market.mass.ObjectId
1472               * @static
1473               * @param {market.mass.ObjectId} message ObjectId
1474               * @param {$protobuf.IConversionOptions} [options] Conversion options
1475               * @returns {Object.<string,*>} Plain object
1476               */
1477              ObjectId.toObject = function toObject(message, options) {
1478                  if (!options)
1479                      options = {};
1480                  let object = {};
1481                  if (options.defaults)
1482                      if (options.bytes === String)
1483                          object.raw = "";
1484                      else {
1485                          object.raw = [];
1486                          if (options.bytes !== Array)
1487                              object.raw = $util.newBuffer(object.raw);
1488                      }
1489                  if (message.raw != null && message.hasOwnProperty("raw"))
1490                      object.raw = options.bytes === String ? $util.base64.encode(message.raw, 0, message.raw.length) : options.bytes === Array ? Array.prototype.slice.call(message.raw) : message.raw;
1491                  return object;
1492              };
1493  
1494              /**
1495               * Converts this ObjectId to JSON.
1496               * @function toJSON
1497               * @memberof market.mass.ObjectId
1498               * @instance
1499               * @returns {Object.<string,*>} JSON object
1500               */
1501              ObjectId.prototype.toJSON = function toJSON() {
1502                  return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
1503              };
1504  
1505              /**
1506               * Gets the default type url for ObjectId
1507               * @function getTypeUrl
1508               * @memberof market.mass.ObjectId
1509               * @static
1510               * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
1511               * @returns {string} The default type url
1512               */
1513              ObjectId.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
1514                  if (typeUrlPrefix === undefined) {
1515                      typeUrlPrefix = "type.googleapis.com";
1516                  }
1517                  return typeUrlPrefix + "/market.mass.ObjectId";
1518              };
1519  
1520              return ObjectId;
1521          })();
1522  
1523          mass.Envelope = (function() {
1524  
1525              /**
1526               * Properties of an Envelope.
1527               * @memberof market.mass
1528               * @interface IEnvelope
1529               * @property {market.mass.IRequestId|null} [requestId] Envelope requestId
1530               * @property {market.mass.Envelope.IGenericResponse|null} [response] Envelope response
1531               * @property {market.mass.IPatchSetWriteRequest|null} [patchSetWriteRequest] Envelope patchSetWriteRequest
1532               * @property {market.mass.ISubscriptionRequest|null} [subscriptionRequest] Envelope subscriptionRequest
1533               * @property {market.mass.ISubscriptionCancelRequest|null} [subscriptionCancelRequest] Envelope subscriptionCancelRequest
1534               * @property {market.mass.ISubscriptionPushRequest|null} [subscriptionPushRequest] Envelope subscriptionPushRequest
1535               * @property {market.mass.ISyncStatusRequest|null} [syncStatusRequest] Envelope syncStatusRequest
1536               * @property {market.mass.IPingRequest|null} [pingRequest] Envelope pingRequest
1537               * @property {market.mass.IGetBlobUploadURLRequest|null} [getBlobUploadUrlRequest] Envelope getBlobUploadUrlRequest
1538               * @property {market.mass.IAuthenticateRequest|null} [authRequest] Envelope authRequest
1539               * @property {market.mass.IChallengeSolvedRequest|null} [challengeSolutionRequest] Envelope challengeSolutionRequest
1540               */
1541  
1542              /**
1543               * Constructs a new Envelope.
1544               * @memberof market.mass
1545               * @classdesc Represents an Envelope.
1546               * @implements IEnvelope
1547               * @constructor
1548               * @param {market.mass.IEnvelope=} [properties] Properties to set
1549               */
1550              function Envelope(properties) {
1551                  if (properties)
1552                      for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
1553                          if (properties[keys[i]] != null)
1554                              this[keys[i]] = properties[keys[i]];
1555              }
1556  
1557              /**
1558               * Envelope requestId.
1559               * @member {market.mass.IRequestId|null|undefined} requestId
1560               * @memberof market.mass.Envelope
1561               * @instance
1562               */
1563              Envelope.prototype.requestId = null;
1564  
1565              /**
1566               * Envelope response.
1567               * @member {market.mass.Envelope.IGenericResponse|null|undefined} response
1568               * @memberof market.mass.Envelope
1569               * @instance
1570               */
1571              Envelope.prototype.response = null;
1572  
1573              /**
1574               * Envelope patchSetWriteRequest.
1575               * @member {market.mass.IPatchSetWriteRequest|null|undefined} patchSetWriteRequest
1576               * @memberof market.mass.Envelope
1577               * @instance
1578               */
1579              Envelope.prototype.patchSetWriteRequest = null;
1580  
1581              /**
1582               * Envelope subscriptionRequest.
1583               * @member {market.mass.ISubscriptionRequest|null|undefined} subscriptionRequest
1584               * @memberof market.mass.Envelope
1585               * @instance
1586               */
1587              Envelope.prototype.subscriptionRequest = null;
1588  
1589              /**
1590               * Envelope subscriptionCancelRequest.
1591               * @member {market.mass.ISubscriptionCancelRequest|null|undefined} subscriptionCancelRequest
1592               * @memberof market.mass.Envelope
1593               * @instance
1594               */
1595              Envelope.prototype.subscriptionCancelRequest = null;
1596  
1597              /**
1598               * Envelope subscriptionPushRequest.
1599               * @member {market.mass.ISubscriptionPushRequest|null|undefined} subscriptionPushRequest
1600               * @memberof market.mass.Envelope
1601               * @instance
1602               */
1603              Envelope.prototype.subscriptionPushRequest = null;
1604  
1605              /**
1606               * Envelope syncStatusRequest.
1607               * @member {market.mass.ISyncStatusRequest|null|undefined} syncStatusRequest
1608               * @memberof market.mass.Envelope
1609               * @instance
1610               */
1611              Envelope.prototype.syncStatusRequest = null;
1612  
1613              /**
1614               * Envelope pingRequest.
1615               * @member {market.mass.IPingRequest|null|undefined} pingRequest
1616               * @memberof market.mass.Envelope
1617               * @instance
1618               */
1619              Envelope.prototype.pingRequest = null;
1620  
1621              /**
1622               * Envelope getBlobUploadUrlRequest.
1623               * @member {market.mass.IGetBlobUploadURLRequest|null|undefined} getBlobUploadUrlRequest
1624               * @memberof market.mass.Envelope
1625               * @instance
1626               */
1627              Envelope.prototype.getBlobUploadUrlRequest = null;
1628  
1629              /**
1630               * Envelope authRequest.
1631               * @member {market.mass.IAuthenticateRequest|null|undefined} authRequest
1632               * @memberof market.mass.Envelope
1633               * @instance
1634               */
1635              Envelope.prototype.authRequest = null;
1636  
1637              /**
1638               * Envelope challengeSolutionRequest.
1639               * @member {market.mass.IChallengeSolvedRequest|null|undefined} challengeSolutionRequest
1640               * @memberof market.mass.Envelope
1641               * @instance
1642               */
1643              Envelope.prototype.challengeSolutionRequest = null;
1644  
1645              // OneOf field names bound to virtual getters and setters
1646              let $oneOfFields;
1647  
1648              /**
1649               * Envelope message.
1650               * @member {"response"|"patchSetWriteRequest"|"subscriptionRequest"|"subscriptionCancelRequest"|"subscriptionPushRequest"|"syncStatusRequest"|"pingRequest"|"getBlobUploadUrlRequest"|"authRequest"|"challengeSolutionRequest"|undefined} message
1651               * @memberof market.mass.Envelope
1652               * @instance
1653               */
1654              Object.defineProperty(Envelope.prototype, "message", {
1655                  get: $util.oneOfGetter($oneOfFields = ["response", "patchSetWriteRequest", "subscriptionRequest", "subscriptionCancelRequest", "subscriptionPushRequest", "syncStatusRequest", "pingRequest", "getBlobUploadUrlRequest", "authRequest", "challengeSolutionRequest"]),
1656                  set: $util.oneOfSetter($oneOfFields)
1657              });
1658  
1659              /**
1660               * Creates a new Envelope instance using the specified properties.
1661               * @function create
1662               * @memberof market.mass.Envelope
1663               * @static
1664               * @param {market.mass.IEnvelope=} [properties] Properties to set
1665               * @returns {market.mass.Envelope} Envelope instance
1666               */
1667              Envelope.create = function create(properties) {
1668                  return new Envelope(properties);
1669              };
1670  
1671              /**
1672               * Encodes the specified Envelope message. Does not implicitly {@link market.mass.Envelope.verify|verify} messages.
1673               * @function encode
1674               * @memberof market.mass.Envelope
1675               * @static
1676               * @param {market.mass.IEnvelope} message Envelope message or plain object to encode
1677               * @param {$protobuf.Writer} [writer] Writer to encode to
1678               * @returns {$protobuf.Writer} Writer
1679               */
1680              Envelope.encode = function encode(message, writer) {
1681                  if (!writer)
1682                      writer = $Writer.create();
1683                  if (message.requestId != null && Object.hasOwnProperty.call(message, "requestId"))
1684                      $root.market.mass.RequestId.encode(message.requestId, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
1685                  if (message.response != null && Object.hasOwnProperty.call(message, "response"))
1686                      $root.market.mass.Envelope.GenericResponse.encode(message.response, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
1687                  if (message.patchSetWriteRequest != null && Object.hasOwnProperty.call(message, "patchSetWriteRequest"))
1688                      $root.market.mass.PatchSetWriteRequest.encode(message.patchSetWriteRequest, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
1689                  if (message.subscriptionRequest != null && Object.hasOwnProperty.call(message, "subscriptionRequest"))
1690                      $root.market.mass.SubscriptionRequest.encode(message.subscriptionRequest, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
1691                  if (message.subscriptionCancelRequest != null && Object.hasOwnProperty.call(message, "subscriptionCancelRequest"))
1692                      $root.market.mass.SubscriptionCancelRequest.encode(message.subscriptionCancelRequest, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim();
1693                  if (message.subscriptionPushRequest != null && Object.hasOwnProperty.call(message, "subscriptionPushRequest"))
1694                      $root.market.mass.SubscriptionPushRequest.encode(message.subscriptionPushRequest, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim();
1695                  if (message.syncStatusRequest != null && Object.hasOwnProperty.call(message, "syncStatusRequest"))
1696                      $root.market.mass.SyncStatusRequest.encode(message.syncStatusRequest, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim();
1697                  if (message.pingRequest != null && Object.hasOwnProperty.call(message, "pingRequest"))
1698                      $root.market.mass.PingRequest.encode(message.pingRequest, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim();
1699                  if (message.getBlobUploadUrlRequest != null && Object.hasOwnProperty.call(message, "getBlobUploadUrlRequest"))
1700                      $root.market.mass.GetBlobUploadURLRequest.encode(message.getBlobUploadUrlRequest, writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim();
1701                  if (message.authRequest != null && Object.hasOwnProperty.call(message, "authRequest"))
1702                      $root.market.mass.AuthenticateRequest.encode(message.authRequest, writer.uint32(/* id 10, wireType 2 =*/82).fork()).ldelim();
1703                  if (message.challengeSolutionRequest != null && Object.hasOwnProperty.call(message, "challengeSolutionRequest"))
1704                      $root.market.mass.ChallengeSolvedRequest.encode(message.challengeSolutionRequest, writer.uint32(/* id 11, wireType 2 =*/90).fork()).ldelim();
1705                  return writer;
1706              };
1707  
1708              /**
1709               * Encodes the specified Envelope message, length delimited. Does not implicitly {@link market.mass.Envelope.verify|verify} messages.
1710               * @function encodeDelimited
1711               * @memberof market.mass.Envelope
1712               * @static
1713               * @param {market.mass.IEnvelope} message Envelope message or plain object to encode
1714               * @param {$protobuf.Writer} [writer] Writer to encode to
1715               * @returns {$protobuf.Writer} Writer
1716               */
1717              Envelope.encodeDelimited = function encodeDelimited(message, writer) {
1718                  return this.encode(message, writer).ldelim();
1719              };
1720  
1721              /**
1722               * Decodes an Envelope message from the specified reader or buffer.
1723               * @function decode
1724               * @memberof market.mass.Envelope
1725               * @static
1726               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1727               * @param {number} [length] Message length if known beforehand
1728               * @returns {market.mass.Envelope} Envelope
1729               * @throws {Error} If the payload is not a reader or valid buffer
1730               * @throws {$protobuf.util.ProtocolError} If required fields are missing
1731               */
1732              Envelope.decode = function decode(reader, length, error) {
1733                  if (!(reader instanceof $Reader))
1734                      reader = $Reader.create(reader);
1735                  let end = length === undefined ? reader.len : reader.pos + length, message = new $root.market.mass.Envelope();
1736                  while (reader.pos < end) {
1737                      let tag = reader.uint32();
1738                      if (tag === error)
1739                          break;
1740                      switch (tag >>> 3) {
1741                      case 1: {
1742                              message.requestId = $root.market.mass.RequestId.decode(reader, reader.uint32());
1743                              break;
1744                          }
1745                      case 2: {
1746                              message.response = $root.market.mass.Envelope.GenericResponse.decode(reader, reader.uint32());
1747                              break;
1748                          }
1749                      case 3: {
1750                              message.patchSetWriteRequest = $root.market.mass.PatchSetWriteRequest.decode(reader, reader.uint32());
1751                              break;
1752                          }
1753                      case 4: {
1754                              message.subscriptionRequest = $root.market.mass.SubscriptionRequest.decode(reader, reader.uint32());
1755                              break;
1756                          }
1757                      case 5: {
1758                              message.subscriptionCancelRequest = $root.market.mass.SubscriptionCancelRequest.decode(reader, reader.uint32());
1759                              break;
1760                          }
1761                      case 6: {
1762                              message.subscriptionPushRequest = $root.market.mass.SubscriptionPushRequest.decode(reader, reader.uint32());
1763                              break;
1764                          }
1765                      case 7: {
1766                              message.syncStatusRequest = $root.market.mass.SyncStatusRequest.decode(reader, reader.uint32());
1767                              break;
1768                          }
1769                      case 8: {
1770                              message.pingRequest = $root.market.mass.PingRequest.decode(reader, reader.uint32());
1771                              break;
1772                          }
1773                      case 9: {
1774                              message.getBlobUploadUrlRequest = $root.market.mass.GetBlobUploadURLRequest.decode(reader, reader.uint32());
1775                              break;
1776                          }
1777                      case 10: {
1778                              message.authRequest = $root.market.mass.AuthenticateRequest.decode(reader, reader.uint32());
1779                              break;
1780                          }
1781                      case 11: {
1782                              message.challengeSolutionRequest = $root.market.mass.ChallengeSolvedRequest.decode(reader, reader.uint32());
1783                              break;
1784                          }
1785                      default:
1786                          reader.skipType(tag & 7);
1787                          break;
1788                      }
1789                  }
1790                  return message;
1791              };
1792  
1793              /**
1794               * Decodes an Envelope message from the specified reader or buffer, length delimited.
1795               * @function decodeDelimited
1796               * @memberof market.mass.Envelope
1797               * @static
1798               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1799               * @returns {market.mass.Envelope} Envelope
1800               * @throws {Error} If the payload is not a reader or valid buffer
1801               * @throws {$protobuf.util.ProtocolError} If required fields are missing
1802               */
1803              Envelope.decodeDelimited = function decodeDelimited(reader) {
1804                  if (!(reader instanceof $Reader))
1805                      reader = new $Reader(reader);
1806                  return this.decode(reader, reader.uint32());
1807              };
1808  
1809              /**
1810               * Verifies an Envelope message.
1811               * @function verify
1812               * @memberof market.mass.Envelope
1813               * @static
1814               * @param {Object.<string,*>} message Plain object to verify
1815               * @returns {string|null} `null` if valid, otherwise the reason why it is not
1816               */
1817              Envelope.verify = function verify(message) {
1818                  if (typeof message !== "object" || message === null)
1819                      return "object expected";
1820                  let properties = {};
1821                  if (message.requestId != null && message.hasOwnProperty("requestId")) {
1822                      let error = $root.market.mass.RequestId.verify(message.requestId);
1823                      if (error)
1824                          return "requestId." + error;
1825                  }
1826                  if (message.response != null && message.hasOwnProperty("response")) {
1827                      properties.message = 1;
1828                      {
1829                          let error = $root.market.mass.Envelope.GenericResponse.verify(message.response);
1830                          if (error)
1831                              return "response." + error;
1832                      }
1833                  }
1834                  if (message.patchSetWriteRequest != null && message.hasOwnProperty("patchSetWriteRequest")) {
1835                      if (properties.message === 1)
1836                          return "message: multiple values";
1837                      properties.message = 1;
1838                      {
1839                          let error = $root.market.mass.PatchSetWriteRequest.verify(message.patchSetWriteRequest);
1840                          if (error)
1841                              return "patchSetWriteRequest." + error;
1842                      }
1843                  }
1844                  if (message.subscriptionRequest != null && message.hasOwnProperty("subscriptionRequest")) {
1845                      if (properties.message === 1)
1846                          return "message: multiple values";
1847                      properties.message = 1;
1848                      {
1849                          let error = $root.market.mass.SubscriptionRequest.verify(message.subscriptionRequest);
1850                          if (error)
1851                              return "subscriptionRequest." + error;
1852                      }
1853                  }
1854                  if (message.subscriptionCancelRequest != null && message.hasOwnProperty("subscriptionCancelRequest")) {
1855                      if (properties.message === 1)
1856                          return "message: multiple values";
1857                      properties.message = 1;
1858                      {
1859                          let error = $root.market.mass.SubscriptionCancelRequest.verify(message.subscriptionCancelRequest);
1860                          if (error)
1861                              return "subscriptionCancelRequest." + error;
1862                      }
1863                  }
1864                  if (message.subscriptionPushRequest != null && message.hasOwnProperty("subscriptionPushRequest")) {
1865                      if (properties.message === 1)
1866                          return "message: multiple values";
1867                      properties.message = 1;
1868                      {
1869                          let error = $root.market.mass.SubscriptionPushRequest.verify(message.subscriptionPushRequest);
1870                          if (error)
1871                              return "subscriptionPushRequest." + error;
1872                      }
1873                  }
1874                  if (message.syncStatusRequest != null && message.hasOwnProperty("syncStatusRequest")) {
1875                      if (properties.message === 1)
1876                          return "message: multiple values";
1877                      properties.message = 1;
1878                      {
1879                          let error = $root.market.mass.SyncStatusRequest.verify(message.syncStatusRequest);
1880                          if (error)
1881                              return "syncStatusRequest." + error;
1882                      }
1883                  }
1884                  if (message.pingRequest != null && message.hasOwnProperty("pingRequest")) {
1885                      if (properties.message === 1)
1886                          return "message: multiple values";
1887                      properties.message = 1;
1888                      {
1889                          let error = $root.market.mass.PingRequest.verify(message.pingRequest);
1890                          if (error)
1891                              return "pingRequest." + error;
1892                      }
1893                  }
1894                  if (message.getBlobUploadUrlRequest != null && message.hasOwnProperty("getBlobUploadUrlRequest")) {
1895                      if (properties.message === 1)
1896                          return "message: multiple values";
1897                      properties.message = 1;
1898                      {
1899                          let error = $root.market.mass.GetBlobUploadURLRequest.verify(message.getBlobUploadUrlRequest);
1900                          if (error)
1901                              return "getBlobUploadUrlRequest." + error;
1902                      }
1903                  }
1904                  if (message.authRequest != null && message.hasOwnProperty("authRequest")) {
1905                      if (properties.message === 1)
1906                          return "message: multiple values";
1907                      properties.message = 1;
1908                      {
1909                          let error = $root.market.mass.AuthenticateRequest.verify(message.authRequest);
1910                          if (error)
1911                              return "authRequest." + error;
1912                      }
1913                  }
1914                  if (message.challengeSolutionRequest != null && message.hasOwnProperty("challengeSolutionRequest")) {
1915                      if (properties.message === 1)
1916                          return "message: multiple values";
1917                      properties.message = 1;
1918                      {
1919                          let error = $root.market.mass.ChallengeSolvedRequest.verify(message.challengeSolutionRequest);
1920                          if (error)
1921                              return "challengeSolutionRequest." + error;
1922                      }
1923                  }
1924                  return null;
1925              };
1926  
1927              /**
1928               * Creates an Envelope message from a plain object. Also converts values to their respective internal types.
1929               * @function fromObject
1930               * @memberof market.mass.Envelope
1931               * @static
1932               * @param {Object.<string,*>} object Plain object
1933               * @returns {market.mass.Envelope} Envelope
1934               */
1935              Envelope.fromObject = function fromObject(object) {
1936                  if (object instanceof $root.market.mass.Envelope)
1937                      return object;
1938                  let message = new $root.market.mass.Envelope();
1939                  if (object.requestId != null) {
1940                      if (typeof object.requestId !== "object")
1941                          throw TypeError(".market.mass.Envelope.requestId: object expected");
1942                      message.requestId = $root.market.mass.RequestId.fromObject(object.requestId);
1943                  }
1944                  if (object.response != null) {
1945                      if (typeof object.response !== "object")
1946                          throw TypeError(".market.mass.Envelope.response: object expected");
1947                      message.response = $root.market.mass.Envelope.GenericResponse.fromObject(object.response);
1948                  }
1949                  if (object.patchSetWriteRequest != null) {
1950                      if (typeof object.patchSetWriteRequest !== "object")
1951                          throw TypeError(".market.mass.Envelope.patchSetWriteRequest: object expected");
1952                      message.patchSetWriteRequest = $root.market.mass.PatchSetWriteRequest.fromObject(object.patchSetWriteRequest);
1953                  }
1954                  if (object.subscriptionRequest != null) {
1955                      if (typeof object.subscriptionRequest !== "object")
1956                          throw TypeError(".market.mass.Envelope.subscriptionRequest: object expected");
1957                      message.subscriptionRequest = $root.market.mass.SubscriptionRequest.fromObject(object.subscriptionRequest);
1958                  }
1959                  if (object.subscriptionCancelRequest != null) {
1960                      if (typeof object.subscriptionCancelRequest !== "object")
1961                          throw TypeError(".market.mass.Envelope.subscriptionCancelRequest: object expected");
1962                      message.subscriptionCancelRequest = $root.market.mass.SubscriptionCancelRequest.fromObject(object.subscriptionCancelRequest);
1963                  }
1964                  if (object.subscriptionPushRequest != null) {
1965                      if (typeof object.subscriptionPushRequest !== "object")
1966                          throw TypeError(".market.mass.Envelope.subscriptionPushRequest: object expected");
1967                      message.subscriptionPushRequest = $root.market.mass.SubscriptionPushRequest.fromObject(object.subscriptionPushRequest);
1968                  }
1969                  if (object.syncStatusRequest != null) {
1970                      if (typeof object.syncStatusRequest !== "object")
1971                          throw TypeError(".market.mass.Envelope.syncStatusRequest: object expected");
1972                      message.syncStatusRequest = $root.market.mass.SyncStatusRequest.fromObject(object.syncStatusRequest);
1973                  }
1974                  if (object.pingRequest != null) {
1975                      if (typeof object.pingRequest !== "object")
1976                          throw TypeError(".market.mass.Envelope.pingRequest: object expected");
1977                      message.pingRequest = $root.market.mass.PingRequest.fromObject(object.pingRequest);
1978                  }
1979                  if (object.getBlobUploadUrlRequest != null) {
1980                      if (typeof object.getBlobUploadUrlRequest !== "object")
1981                          throw TypeError(".market.mass.Envelope.getBlobUploadUrlRequest: object expected");
1982                      message.getBlobUploadUrlRequest = $root.market.mass.GetBlobUploadURLRequest.fromObject(object.getBlobUploadUrlRequest);
1983                  }
1984                  if (object.authRequest != null) {
1985                      if (typeof object.authRequest !== "object")
1986                          throw TypeError(".market.mass.Envelope.authRequest: object expected");
1987                      message.authRequest = $root.market.mass.AuthenticateRequest.fromObject(object.authRequest);
1988                  }
1989                  if (object.challengeSolutionRequest != null) {
1990                      if (typeof object.challengeSolutionRequest !== "object")
1991                          throw TypeError(".market.mass.Envelope.challengeSolutionRequest: object expected");
1992                      message.challengeSolutionRequest = $root.market.mass.ChallengeSolvedRequest.fromObject(object.challengeSolutionRequest);
1993                  }
1994                  return message;
1995              };
1996  
1997              /**
1998               * Creates a plain object from an Envelope message. Also converts values to other types if specified.
1999               * @function toObject
2000               * @memberof market.mass.Envelope
2001               * @static
2002               * @param {market.mass.Envelope} message Envelope
2003               * @param {$protobuf.IConversionOptions} [options] Conversion options
2004               * @returns {Object.<string,*>} Plain object
2005               */
2006              Envelope.toObject = function toObject(message, options) {
2007                  if (!options)
2008                      options = {};
2009                  let object = {};
2010                  if (options.defaults)
2011                      object.requestId = null;
2012                  if (message.requestId != null && message.hasOwnProperty("requestId"))
2013                      object.requestId = $root.market.mass.RequestId.toObject(message.requestId, options);
2014                  if (message.response != null && message.hasOwnProperty("response")) {
2015                      object.response = $root.market.mass.Envelope.GenericResponse.toObject(message.response, options);
2016                      if (options.oneofs)
2017                          object.message = "response";
2018                  }
2019                  if (message.patchSetWriteRequest != null && message.hasOwnProperty("patchSetWriteRequest")) {
2020                      object.patchSetWriteRequest = $root.market.mass.PatchSetWriteRequest.toObject(message.patchSetWriteRequest, options);
2021                      if (options.oneofs)
2022                          object.message = "patchSetWriteRequest";
2023                  }
2024                  if (message.subscriptionRequest != null && message.hasOwnProperty("subscriptionRequest")) {
2025                      object.subscriptionRequest = $root.market.mass.SubscriptionRequest.toObject(message.subscriptionRequest, options);
2026                      if (options.oneofs)
2027                          object.message = "subscriptionRequest";
2028                  }
2029                  if (message.subscriptionCancelRequest != null && message.hasOwnProperty("subscriptionCancelRequest")) {
2030                      object.subscriptionCancelRequest = $root.market.mass.SubscriptionCancelRequest.toObject(message.subscriptionCancelRequest, options);
2031                      if (options.oneofs)
2032                          object.message = "subscriptionCancelRequest";
2033                  }
2034                  if (message.subscriptionPushRequest != null && message.hasOwnProperty("subscriptionPushRequest")) {
2035                      object.subscriptionPushRequest = $root.market.mass.SubscriptionPushRequest.toObject(message.subscriptionPushRequest, options);
2036                      if (options.oneofs)
2037                          object.message = "subscriptionPushRequest";
2038                  }
2039                  if (message.syncStatusRequest != null && message.hasOwnProperty("syncStatusRequest")) {
2040                      object.syncStatusRequest = $root.market.mass.SyncStatusRequest.toObject(message.syncStatusRequest, options);
2041                      if (options.oneofs)
2042                          object.message = "syncStatusRequest";
2043                  }
2044                  if (message.pingRequest != null && message.hasOwnProperty("pingRequest")) {
2045                      object.pingRequest = $root.market.mass.PingRequest.toObject(message.pingRequest, options);
2046                      if (options.oneofs)
2047                          object.message = "pingRequest";
2048                  }
2049                  if (message.getBlobUploadUrlRequest != null && message.hasOwnProperty("getBlobUploadUrlRequest")) {
2050                      object.getBlobUploadUrlRequest = $root.market.mass.GetBlobUploadURLRequest.toObject(message.getBlobUploadUrlRequest, options);
2051                      if (options.oneofs)
2052                          object.message = "getBlobUploadUrlRequest";
2053                  }
2054                  if (message.authRequest != null && message.hasOwnProperty("authRequest")) {
2055                      object.authRequest = $root.market.mass.AuthenticateRequest.toObject(message.authRequest, options);
2056                      if (options.oneofs)
2057                          object.message = "authRequest";
2058                  }
2059                  if (message.challengeSolutionRequest != null && message.hasOwnProperty("challengeSolutionRequest")) {
2060                      object.challengeSolutionRequest = $root.market.mass.ChallengeSolvedRequest.toObject(message.challengeSolutionRequest, options);
2061                      if (options.oneofs)
2062                          object.message = "challengeSolutionRequest";
2063                  }
2064                  return object;
2065              };
2066  
2067              /**
2068               * Converts this Envelope to JSON.
2069               * @function toJSON
2070               * @memberof market.mass.Envelope
2071               * @instance
2072               * @returns {Object.<string,*>} JSON object
2073               */
2074              Envelope.prototype.toJSON = function toJSON() {
2075                  return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
2076              };
2077  
2078              /**
2079               * Gets the default type url for Envelope
2080               * @function getTypeUrl
2081               * @memberof market.mass.Envelope
2082               * @static
2083               * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
2084               * @returns {string} The default type url
2085               */
2086              Envelope.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
2087                  if (typeUrlPrefix === undefined) {
2088                      typeUrlPrefix = "type.googleapis.com";
2089                  }
2090                  return typeUrlPrefix + "/market.mass.Envelope";
2091              };
2092  
2093              Envelope.GenericResponse = (function() {
2094  
2095                  /**
2096                   * Properties of a GenericResponse.
2097                   * @memberof market.mass.Envelope
2098                   * @interface IGenericResponse
2099                   * @property {market.mass.IError|null} [error] GenericResponse error
2100                   * @property {Uint8Array|null} [payload] GenericResponse payload
2101                   */
2102  
2103                  /**
2104                   * Constructs a new GenericResponse.
2105                   * @memberof market.mass.Envelope
2106                   * @classdesc Represents a GenericResponse.
2107                   * @implements IGenericResponse
2108                   * @constructor
2109                   * @param {market.mass.Envelope.IGenericResponse=} [properties] Properties to set
2110                   */
2111                  function GenericResponse(properties) {
2112                      if (properties)
2113                          for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
2114                              if (properties[keys[i]] != null)
2115                                  this[keys[i]] = properties[keys[i]];
2116                  }
2117  
2118                  /**
2119                   * GenericResponse error.
2120                   * @member {market.mass.IError|null|undefined} error
2121                   * @memberof market.mass.Envelope.GenericResponse
2122                   * @instance
2123                   */
2124                  GenericResponse.prototype.error = null;
2125  
2126                  /**
2127                   * GenericResponse payload.
2128                   * @member {Uint8Array|null|undefined} payload
2129                   * @memberof market.mass.Envelope.GenericResponse
2130                   * @instance
2131                   */
2132                  GenericResponse.prototype.payload = null;
2133  
2134                  // OneOf field names bound to virtual getters and setters
2135                  let $oneOfFields;
2136  
2137                  /**
2138                   * GenericResponse response.
2139                   * @member {"error"|"payload"|undefined} response
2140                   * @memberof market.mass.Envelope.GenericResponse
2141                   * @instance
2142                   */
2143                  Object.defineProperty(GenericResponse.prototype, "response", {
2144                      get: $util.oneOfGetter($oneOfFields = ["error", "payload"]),
2145                      set: $util.oneOfSetter($oneOfFields)
2146                  });
2147  
2148                  /**
2149                   * Creates a new GenericResponse instance using the specified properties.
2150                   * @function create
2151                   * @memberof market.mass.Envelope.GenericResponse
2152                   * @static
2153                   * @param {market.mass.Envelope.IGenericResponse=} [properties] Properties to set
2154                   * @returns {market.mass.Envelope.GenericResponse} GenericResponse instance
2155                   */
2156                  GenericResponse.create = function create(properties) {
2157                      return new GenericResponse(properties);
2158                  };
2159  
2160                  /**
2161                   * Encodes the specified GenericResponse message. Does not implicitly {@link market.mass.Envelope.GenericResponse.verify|verify} messages.
2162                   * @function encode
2163                   * @memberof market.mass.Envelope.GenericResponse
2164                   * @static
2165                   * @param {market.mass.Envelope.IGenericResponse} message GenericResponse message or plain object to encode
2166                   * @param {$protobuf.Writer} [writer] Writer to encode to
2167                   * @returns {$protobuf.Writer} Writer
2168                   */
2169                  GenericResponse.encode = function encode(message, writer) {
2170                      if (!writer)
2171                          writer = $Writer.create();
2172                      if (message.error != null && Object.hasOwnProperty.call(message, "error"))
2173                          $root.market.mass.Error.encode(message.error, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
2174                      if (message.payload != null && Object.hasOwnProperty.call(message, "payload"))
2175                          writer.uint32(/* id 2, wireType 2 =*/18).bytes(message.payload);
2176                      return writer;
2177                  };
2178  
2179                  /**
2180                   * Encodes the specified GenericResponse message, length delimited. Does not implicitly {@link market.mass.Envelope.GenericResponse.verify|verify} messages.
2181                   * @function encodeDelimited
2182                   * @memberof market.mass.Envelope.GenericResponse
2183                   * @static
2184                   * @param {market.mass.Envelope.IGenericResponse} message GenericResponse message or plain object to encode
2185                   * @param {$protobuf.Writer} [writer] Writer to encode to
2186                   * @returns {$protobuf.Writer} Writer
2187                   */
2188                  GenericResponse.encodeDelimited = function encodeDelimited(message, writer) {
2189                      return this.encode(message, writer).ldelim();
2190                  };
2191  
2192                  /**
2193                   * Decodes a GenericResponse message from the specified reader or buffer.
2194                   * @function decode
2195                   * @memberof market.mass.Envelope.GenericResponse
2196                   * @static
2197                   * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2198                   * @param {number} [length] Message length if known beforehand
2199                   * @returns {market.mass.Envelope.GenericResponse} GenericResponse
2200                   * @throws {Error} If the payload is not a reader or valid buffer
2201                   * @throws {$protobuf.util.ProtocolError} If required fields are missing
2202                   */
2203                  GenericResponse.decode = function decode(reader, length, error) {
2204                      if (!(reader instanceof $Reader))
2205                          reader = $Reader.create(reader);
2206                      let end = length === undefined ? reader.len : reader.pos + length, message = new $root.market.mass.Envelope.GenericResponse();
2207                      while (reader.pos < end) {
2208                          let tag = reader.uint32();
2209                          if (tag === error)
2210                              break;
2211                          switch (tag >>> 3) {
2212                          case 1: {
2213                                  message.error = $root.market.mass.Error.decode(reader, reader.uint32());
2214                                  break;
2215                              }
2216                          case 2: {
2217                                  message.payload = reader.bytes();
2218                                  break;
2219                              }
2220                          default:
2221                              reader.skipType(tag & 7);
2222                              break;
2223                          }
2224                      }
2225                      return message;
2226                  };
2227  
2228                  /**
2229                   * Decodes a GenericResponse message from the specified reader or buffer, length delimited.
2230                   * @function decodeDelimited
2231                   * @memberof market.mass.Envelope.GenericResponse
2232                   * @static
2233                   * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2234                   * @returns {market.mass.Envelope.GenericResponse} GenericResponse
2235                   * @throws {Error} If the payload is not a reader or valid buffer
2236                   * @throws {$protobuf.util.ProtocolError} If required fields are missing
2237                   */
2238                  GenericResponse.decodeDelimited = function decodeDelimited(reader) {
2239                      if (!(reader instanceof $Reader))
2240                          reader = new $Reader(reader);
2241                      return this.decode(reader, reader.uint32());
2242                  };
2243  
2244                  /**
2245                   * Verifies a GenericResponse message.
2246                   * @function verify
2247                   * @memberof market.mass.Envelope.GenericResponse
2248                   * @static
2249                   * @param {Object.<string,*>} message Plain object to verify
2250                   * @returns {string|null} `null` if valid, otherwise the reason why it is not
2251                   */
2252                  GenericResponse.verify = function verify(message) {
2253                      if (typeof message !== "object" || message === null)
2254                          return "object expected";
2255                      let properties = {};
2256                      if (message.error != null && message.hasOwnProperty("error")) {
2257                          properties.response = 1;
2258                          {
2259                              let error = $root.market.mass.Error.verify(message.error);
2260                              if (error)
2261                                  return "error." + error;
2262                          }
2263                      }
2264                      if (message.payload != null && message.hasOwnProperty("payload")) {
2265                          if (properties.response === 1)
2266                              return "response: multiple values";
2267                          properties.response = 1;
2268                          if (!(message.payload && typeof message.payload.length === "number" || $util.isString(message.payload)))
2269                              return "payload: buffer expected";
2270                      }
2271                      return null;
2272                  };
2273  
2274                  /**
2275                   * Creates a GenericResponse message from a plain object. Also converts values to their respective internal types.
2276                   * @function fromObject
2277                   * @memberof market.mass.Envelope.GenericResponse
2278                   * @static
2279                   * @param {Object.<string,*>} object Plain object
2280                   * @returns {market.mass.Envelope.GenericResponse} GenericResponse
2281                   */
2282                  GenericResponse.fromObject = function fromObject(object) {
2283                      if (object instanceof $root.market.mass.Envelope.GenericResponse)
2284                          return object;
2285                      let message = new $root.market.mass.Envelope.GenericResponse();
2286                      if (object.error != null) {
2287                          if (typeof object.error !== "object")
2288                              throw TypeError(".market.mass.Envelope.GenericResponse.error: object expected");
2289                          message.error = $root.market.mass.Error.fromObject(object.error);
2290                      }
2291                      if (object.payload != null)
2292                          if (typeof object.payload === "string")
2293                              $util.base64.decode(object.payload, message.payload = $util.newBuffer($util.base64.length(object.payload)), 0);
2294                          else if (object.payload.length >= 0)
2295                              message.payload = object.payload;
2296                      return message;
2297                  };
2298  
2299                  /**
2300                   * Creates a plain object from a GenericResponse message. Also converts values to other types if specified.
2301                   * @function toObject
2302                   * @memberof market.mass.Envelope.GenericResponse
2303                   * @static
2304                   * @param {market.mass.Envelope.GenericResponse} message GenericResponse
2305                   * @param {$protobuf.IConversionOptions} [options] Conversion options
2306                   * @returns {Object.<string,*>} Plain object
2307                   */
2308                  GenericResponse.toObject = function toObject(message, options) {
2309                      if (!options)
2310                          options = {};
2311                      let object = {};
2312                      if (message.error != null && message.hasOwnProperty("error")) {
2313                          object.error = $root.market.mass.Error.toObject(message.error, options);
2314                          if (options.oneofs)
2315                              object.response = "error";
2316                      }
2317                      if (message.payload != null && message.hasOwnProperty("payload")) {
2318                          object.payload = options.bytes === String ? $util.base64.encode(message.payload, 0, message.payload.length) : options.bytes === Array ? Array.prototype.slice.call(message.payload) : message.payload;
2319                          if (options.oneofs)
2320                              object.response = "payload";
2321                      }
2322                      return object;
2323                  };
2324  
2325                  /**
2326                   * Converts this GenericResponse to JSON.
2327                   * @function toJSON
2328                   * @memberof market.mass.Envelope.GenericResponse
2329                   * @instance
2330                   * @returns {Object.<string,*>} JSON object
2331                   */
2332                  GenericResponse.prototype.toJSON = function toJSON() {
2333                      return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
2334                  };
2335  
2336                  /**
2337                   * Gets the default type url for GenericResponse
2338                   * @function getTypeUrl
2339                   * @memberof market.mass.Envelope.GenericResponse
2340                   * @static
2341                   * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
2342                   * @returns {string} The default type url
2343                   */
2344                  GenericResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
2345                      if (typeUrlPrefix === undefined) {
2346                          typeUrlPrefix = "type.googleapis.com";
2347                      }
2348                      return typeUrlPrefix + "/market.mass.Envelope.GenericResponse";
2349                  };
2350  
2351                  return GenericResponse;
2352              })();
2353  
2354              return Envelope;
2355          })();
2356  
2357          mass.Error = (function() {
2358  
2359              /**
2360               * Properties of an Error.
2361               * @memberof market.mass
2362               * @interface IError
2363               * @property {market.mass.ErrorCodes|null} [code] Error code
2364               * @property {string|null} [message] Error message
2365               * @property {market.mass.Error.IAdditionalInfo|null} [additionalInfo] Error additionalInfo
2366               */
2367  
2368              /**
2369               * Constructs a new Error.
2370               * @memberof market.mass
2371               * @classdesc Represents an Error.
2372               * @implements IError
2373               * @constructor
2374               * @param {market.mass.IError=} [properties] Properties to set
2375               */
2376              function Error(properties) {
2377                  if (properties)
2378                      for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
2379                          if (properties[keys[i]] != null)
2380                              this[keys[i]] = properties[keys[i]];
2381              }
2382  
2383              /**
2384               * Error code.
2385               * @member {market.mass.ErrorCodes} code
2386               * @memberof market.mass.Error
2387               * @instance
2388               */
2389              Error.prototype.code = 0;
2390  
2391              /**
2392               * Error message.
2393               * @member {string} message
2394               * @memberof market.mass.Error
2395               * @instance
2396               */
2397              Error.prototype.message = "";
2398  
2399              /**
2400               * Error additionalInfo.
2401               * @member {market.mass.Error.IAdditionalInfo|null|undefined} additionalInfo
2402               * @memberof market.mass.Error
2403               * @instance
2404               */
2405              Error.prototype.additionalInfo = null;
2406  
2407              /**
2408               * Creates a new Error instance using the specified properties.
2409               * @function create
2410               * @memberof market.mass.Error
2411               * @static
2412               * @param {market.mass.IError=} [properties] Properties to set
2413               * @returns {market.mass.Error} Error instance
2414               */
2415              Error.create = function create(properties) {
2416                  return new Error(properties);
2417              };
2418  
2419              /**
2420               * Encodes the specified Error message. Does not implicitly {@link market.mass.Error.verify|verify} messages.
2421               * @function encode
2422               * @memberof market.mass.Error
2423               * @static
2424               * @param {market.mass.IError} message Error message or plain object to encode
2425               * @param {$protobuf.Writer} [writer] Writer to encode to
2426               * @returns {$protobuf.Writer} Writer
2427               */
2428              Error.encode = function encode(message, writer) {
2429                  if (!writer)
2430                      writer = $Writer.create();
2431                  if (message.code != null && Object.hasOwnProperty.call(message, "code"))
2432                      writer.uint32(/* id 1, wireType 0 =*/8).int32(message.code);
2433                  if (message.message != null && Object.hasOwnProperty.call(message, "message"))
2434                      writer.uint32(/* id 2, wireType 2 =*/18).string(message.message);
2435                  if (message.additionalInfo != null && Object.hasOwnProperty.call(message, "additionalInfo"))
2436                      $root.market.mass.Error.AdditionalInfo.encode(message.additionalInfo, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
2437                  return writer;
2438              };
2439  
2440              /**
2441               * Encodes the specified Error message, length delimited. Does not implicitly {@link market.mass.Error.verify|verify} messages.
2442               * @function encodeDelimited
2443               * @memberof market.mass.Error
2444               * @static
2445               * @param {market.mass.IError} message Error message or plain object to encode
2446               * @param {$protobuf.Writer} [writer] Writer to encode to
2447               * @returns {$protobuf.Writer} Writer
2448               */
2449              Error.encodeDelimited = function encodeDelimited(message, writer) {
2450                  return this.encode(message, writer).ldelim();
2451              };
2452  
2453              /**
2454               * Decodes an Error message from the specified reader or buffer.
2455               * @function decode
2456               * @memberof market.mass.Error
2457               * @static
2458               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2459               * @param {number} [length] Message length if known beforehand
2460               * @returns {market.mass.Error} Error
2461               * @throws {Error} If the payload is not a reader or valid buffer
2462               * @throws {$protobuf.util.ProtocolError} If required fields are missing
2463               */
2464              Error.decode = function decode(reader, length, error) {
2465                  if (!(reader instanceof $Reader))
2466                      reader = $Reader.create(reader);
2467                  let end = length === undefined ? reader.len : reader.pos + length, message = new $root.market.mass.Error();
2468                  while (reader.pos < end) {
2469                      let tag = reader.uint32();
2470                      if (tag === error)
2471                          break;
2472                      switch (tag >>> 3) {
2473                      case 1: {
2474                              message.code = reader.int32();
2475                              break;
2476                          }
2477                      case 2: {
2478                              message.message = reader.string();
2479                              break;
2480                          }
2481                      case 3: {
2482                              message.additionalInfo = $root.market.mass.Error.AdditionalInfo.decode(reader, reader.uint32());
2483                              break;
2484                          }
2485                      default:
2486                          reader.skipType(tag & 7);
2487                          break;
2488                      }
2489                  }
2490                  return message;
2491              };
2492  
2493              /**
2494               * Decodes an Error message from the specified reader or buffer, length delimited.
2495               * @function decodeDelimited
2496               * @memberof market.mass.Error
2497               * @static
2498               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2499               * @returns {market.mass.Error} Error
2500               * @throws {Error} If the payload is not a reader or valid buffer
2501               * @throws {$protobuf.util.ProtocolError} If required fields are missing
2502               */
2503              Error.decodeDelimited = function decodeDelimited(reader) {
2504                  if (!(reader instanceof $Reader))
2505                      reader = new $Reader(reader);
2506                  return this.decode(reader, reader.uint32());
2507              };
2508  
2509              /**
2510               * Verifies an Error message.
2511               * @function verify
2512               * @memberof market.mass.Error
2513               * @static
2514               * @param {Object.<string,*>} message Plain object to verify
2515               * @returns {string|null} `null` if valid, otherwise the reason why it is not
2516               */
2517              Error.verify = function verify(message) {
2518                  if (typeof message !== "object" || message === null)
2519                      return "object expected";
2520                  if (message.code != null && message.hasOwnProperty("code"))
2521                      switch (message.code) {
2522                      default:
2523                          return "code: enum value expected";
2524                      case 0:
2525                      case 1:
2526                      case 2:
2527                      case 3:
2528                      case 4:
2529                      case 5:
2530                      case 6:
2531                      case 7:
2532                      case 8:
2533                      case 9:
2534                      case 10:
2535                      case 11:
2536                          break;
2537                      }
2538                  if (message.message != null && message.hasOwnProperty("message"))
2539                      if (!$util.isString(message.message))
2540                          return "message: string expected";
2541                  if (message.additionalInfo != null && message.hasOwnProperty("additionalInfo")) {
2542                      let error = $root.market.mass.Error.AdditionalInfo.verify(message.additionalInfo);
2543                      if (error)
2544                          return "additionalInfo." + error;
2545                  }
2546                  return null;
2547              };
2548  
2549              /**
2550               * Creates an Error message from a plain object. Also converts values to their respective internal types.
2551               * @function fromObject
2552               * @memberof market.mass.Error
2553               * @static
2554               * @param {Object.<string,*>} object Plain object
2555               * @returns {market.mass.Error} Error
2556               */
2557              Error.fromObject = function fromObject(object) {
2558                  if (object instanceof $root.market.mass.Error)
2559                      return object;
2560                  let message = new $root.market.mass.Error();
2561                  switch (object.code) {
2562                  default:
2563                      if (typeof object.code === "number") {
2564                          message.code = object.code;
2565                          break;
2566                      }
2567                      break;
2568                  case "ERROR_CODES_UNSPECIFIED":
2569                  case 0:
2570                      message.code = 0;
2571                      break;
2572                  case "ERROR_CODES_NOT_FOUND":
2573                  case 1:
2574                      message.code = 1;
2575                      break;
2576                  case "ERROR_CODES_INVALID":
2577                  case 2:
2578                      message.code = 2;
2579                      break;
2580                  case "ERROR_CODES_NOT_AUTHENTICATED":
2581                  case 3:
2582                      message.code = 3;
2583                      break;
2584                  case "ERROR_CODES_ALREADY_AUTHENTICATED":
2585                  case 4:
2586                      message.code = 4;
2587                      break;
2588                  case "ERROR_CODES_ALREADY_CONNECTED":
2589                  case 5:
2590                      message.code = 5;
2591                      break;
2592                  case "ERROR_CODES_TOO_MANY_CONCURRENT_REQUESTS":
2593                  case 6:
2594                      message.code = 6;
2595                      break;
2596                  case "ERROR_CODES_UNLINKED_KEYCARD":
2597                  case 7:
2598                      message.code = 7;
2599                      break;
2600                  case "ERROR_CODES_MINIMUM_VERSION_NOT_REACHED":
2601                  case 8:
2602                      message.code = 8;
2603                      break;
2604                  case "ERROR_CODES_OUT_OF_STOCK":
2605                  case 9:
2606                      message.code = 9;
2607                      break;
2608                  case "ERROR_CODES_SIMULATED":
2609                  case 10:
2610                      message.code = 10;
2611                      break;
2612                  case "ERROR_CODES_CLOSE_SUBSCRIPTION":
2613                  case 11:
2614                      message.code = 11;
2615                      break;
2616                  }
2617                  if (object.message != null)
2618                      message.message = String(object.message);
2619                  if (object.additionalInfo != null) {
2620                      if (typeof object.additionalInfo !== "object")
2621                          throw TypeError(".market.mass.Error.additionalInfo: object expected");
2622                      message.additionalInfo = $root.market.mass.Error.AdditionalInfo.fromObject(object.additionalInfo);
2623                  }
2624                  return message;
2625              };
2626  
2627              /**
2628               * Creates a plain object from an Error message. Also converts values to other types if specified.
2629               * @function toObject
2630               * @memberof market.mass.Error
2631               * @static
2632               * @param {market.mass.Error} message Error
2633               * @param {$protobuf.IConversionOptions} [options] Conversion options
2634               * @returns {Object.<string,*>} Plain object
2635               */
2636              Error.toObject = function toObject(message, options) {
2637                  if (!options)
2638                      options = {};
2639                  let object = {};
2640                  if (options.defaults) {
2641                      object.code = options.enums === String ? "ERROR_CODES_UNSPECIFIED" : 0;
2642                      object.message = "";
2643                      object.additionalInfo = null;
2644                  }
2645                  if (message.code != null && message.hasOwnProperty("code"))
2646                      object.code = options.enums === String ? $root.market.mass.ErrorCodes[message.code] === undefined ? message.code : $root.market.mass.ErrorCodes[message.code] : message.code;
2647                  if (message.message != null && message.hasOwnProperty("message"))
2648                      object.message = message.message;
2649                  if (message.additionalInfo != null && message.hasOwnProperty("additionalInfo"))
2650                      object.additionalInfo = $root.market.mass.Error.AdditionalInfo.toObject(message.additionalInfo, options);
2651                  return object;
2652              };
2653  
2654              /**
2655               * Converts this Error to JSON.
2656               * @function toJSON
2657               * @memberof market.mass.Error
2658               * @instance
2659               * @returns {Object.<string,*>} JSON object
2660               */
2661              Error.prototype.toJSON = function toJSON() {
2662                  return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
2663              };
2664  
2665              /**
2666               * Gets the default type url for Error
2667               * @function getTypeUrl
2668               * @memberof market.mass.Error
2669               * @static
2670               * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
2671               * @returns {string} The default type url
2672               */
2673              Error.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
2674                  if (typeUrlPrefix === undefined) {
2675                      typeUrlPrefix = "type.googleapis.com";
2676                  }
2677                  return typeUrlPrefix + "/market.mass.Error";
2678              };
2679  
2680              Error.AdditionalInfo = (function() {
2681  
2682                  /**
2683                   * Properties of an AdditionalInfo.
2684                   * @memberof market.mass.Error
2685                   * @interface IAdditionalInfo
2686                   * @property {number|Long|null} [objectId] AdditionalInfo objectId
2687                   */
2688  
2689                  /**
2690                   * Constructs a new AdditionalInfo.
2691                   * @memberof market.mass.Error
2692                   * @classdesc Represents an AdditionalInfo.
2693                   * @implements IAdditionalInfo
2694                   * @constructor
2695                   * @param {market.mass.Error.IAdditionalInfo=} [properties] Properties to set
2696                   */
2697                  function AdditionalInfo(properties) {
2698                      if (properties)
2699                          for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
2700                              if (properties[keys[i]] != null)
2701                                  this[keys[i]] = properties[keys[i]];
2702                  }
2703  
2704                  /**
2705                   * AdditionalInfo objectId.
2706                   * @member {number|Long} objectId
2707                   * @memberof market.mass.Error.AdditionalInfo
2708                   * @instance
2709                   */
2710                  AdditionalInfo.prototype.objectId = $util.Long ? $util.Long.fromBits(0,0,true) : 0;
2711  
2712                  /**
2713                   * Creates a new AdditionalInfo instance using the specified properties.
2714                   * @function create
2715                   * @memberof market.mass.Error.AdditionalInfo
2716                   * @static
2717                   * @param {market.mass.Error.IAdditionalInfo=} [properties] Properties to set
2718                   * @returns {market.mass.Error.AdditionalInfo} AdditionalInfo instance
2719                   */
2720                  AdditionalInfo.create = function create(properties) {
2721                      return new AdditionalInfo(properties);
2722                  };
2723  
2724                  /**
2725                   * Encodes the specified AdditionalInfo message. Does not implicitly {@link market.mass.Error.AdditionalInfo.verify|verify} messages.
2726                   * @function encode
2727                   * @memberof market.mass.Error.AdditionalInfo
2728                   * @static
2729                   * @param {market.mass.Error.IAdditionalInfo} message AdditionalInfo message or plain object to encode
2730                   * @param {$protobuf.Writer} [writer] Writer to encode to
2731                   * @returns {$protobuf.Writer} Writer
2732                   */
2733                  AdditionalInfo.encode = function encode(message, writer) {
2734                      if (!writer)
2735                          writer = $Writer.create();
2736                      if (message.objectId != null && Object.hasOwnProperty.call(message, "objectId"))
2737                          writer.uint32(/* id 1, wireType 0 =*/8).uint64(message.objectId);
2738                      return writer;
2739                  };
2740  
2741                  /**
2742                   * Encodes the specified AdditionalInfo message, length delimited. Does not implicitly {@link market.mass.Error.AdditionalInfo.verify|verify} messages.
2743                   * @function encodeDelimited
2744                   * @memberof market.mass.Error.AdditionalInfo
2745                   * @static
2746                   * @param {market.mass.Error.IAdditionalInfo} message AdditionalInfo message or plain object to encode
2747                   * @param {$protobuf.Writer} [writer] Writer to encode to
2748                   * @returns {$protobuf.Writer} Writer
2749                   */
2750                  AdditionalInfo.encodeDelimited = function encodeDelimited(message, writer) {
2751                      return this.encode(message, writer).ldelim();
2752                  };
2753  
2754                  /**
2755                   * Decodes an AdditionalInfo message from the specified reader or buffer.
2756                   * @function decode
2757                   * @memberof market.mass.Error.AdditionalInfo
2758                   * @static
2759                   * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2760                   * @param {number} [length] Message length if known beforehand
2761                   * @returns {market.mass.Error.AdditionalInfo} AdditionalInfo
2762                   * @throws {Error} If the payload is not a reader or valid buffer
2763                   * @throws {$protobuf.util.ProtocolError} If required fields are missing
2764                   */
2765                  AdditionalInfo.decode = function decode(reader, length, error) {
2766                      if (!(reader instanceof $Reader))
2767                          reader = $Reader.create(reader);
2768                      let end = length === undefined ? reader.len : reader.pos + length, message = new $root.market.mass.Error.AdditionalInfo();
2769                      while (reader.pos < end) {
2770                          let tag = reader.uint32();
2771                          if (tag === error)
2772                              break;
2773                          switch (tag >>> 3) {
2774                          case 1: {
2775                                  message.objectId = reader.uint64();
2776                                  break;
2777                              }
2778                          default:
2779                              reader.skipType(tag & 7);
2780                              break;
2781                          }
2782                      }
2783                      return message;
2784                  };
2785  
2786                  /**
2787                   * Decodes an AdditionalInfo message from the specified reader or buffer, length delimited.
2788                   * @function decodeDelimited
2789                   * @memberof market.mass.Error.AdditionalInfo
2790                   * @static
2791                   * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2792                   * @returns {market.mass.Error.AdditionalInfo} AdditionalInfo
2793                   * @throws {Error} If the payload is not a reader or valid buffer
2794                   * @throws {$protobuf.util.ProtocolError} If required fields are missing
2795                   */
2796                  AdditionalInfo.decodeDelimited = function decodeDelimited(reader) {
2797                      if (!(reader instanceof $Reader))
2798                          reader = new $Reader(reader);
2799                      return this.decode(reader, reader.uint32());
2800                  };
2801  
2802                  /**
2803                   * Verifies an AdditionalInfo message.
2804                   * @function verify
2805                   * @memberof market.mass.Error.AdditionalInfo
2806                   * @static
2807                   * @param {Object.<string,*>} message Plain object to verify
2808                   * @returns {string|null} `null` if valid, otherwise the reason why it is not
2809                   */
2810                  AdditionalInfo.verify = function verify(message) {
2811                      if (typeof message !== "object" || message === null)
2812                          return "object expected";
2813                      if (message.objectId != null && message.hasOwnProperty("objectId"))
2814                          if (!$util.isInteger(message.objectId) && !(message.objectId && $util.isInteger(message.objectId.low) && $util.isInteger(message.objectId.high)))
2815                              return "objectId: integer|Long expected";
2816                      return null;
2817                  };
2818  
2819                  /**
2820                   * Creates an AdditionalInfo message from a plain object. Also converts values to their respective internal types.
2821                   * @function fromObject
2822                   * @memberof market.mass.Error.AdditionalInfo
2823                   * @static
2824                   * @param {Object.<string,*>} object Plain object
2825                   * @returns {market.mass.Error.AdditionalInfo} AdditionalInfo
2826                   */
2827                  AdditionalInfo.fromObject = function fromObject(object) {
2828                      if (object instanceof $root.market.mass.Error.AdditionalInfo)
2829                          return object;
2830                      let message = new $root.market.mass.Error.AdditionalInfo();
2831                      if (object.objectId != null)
2832                          if ($util.Long)
2833                              (message.objectId = $util.Long.fromValue(object.objectId)).unsigned = true;
2834                          else if (typeof object.objectId === "string")
2835                              message.objectId = parseInt(object.objectId, 10);
2836                          else if (typeof object.objectId === "number")
2837                              message.objectId = object.objectId;
2838                          else if (typeof object.objectId === "object")
2839                              message.objectId = new $util.LongBits(object.objectId.low >>> 0, object.objectId.high >>> 0).toNumber(true);
2840                      return message;
2841                  };
2842  
2843                  /**
2844                   * Creates a plain object from an AdditionalInfo message. Also converts values to other types if specified.
2845                   * @function toObject
2846                   * @memberof market.mass.Error.AdditionalInfo
2847                   * @static
2848                   * @param {market.mass.Error.AdditionalInfo} message AdditionalInfo
2849                   * @param {$protobuf.IConversionOptions} [options] Conversion options
2850                   * @returns {Object.<string,*>} Plain object
2851                   */
2852                  AdditionalInfo.toObject = function toObject(message, options) {
2853                      if (!options)
2854                          options = {};
2855                      let object = {};
2856                      if (options.defaults)
2857                          if ($util.Long) {
2858                              let long = new $util.Long(0, 0, true);
2859                              object.objectId = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
2860                          } else
2861                              object.objectId = options.longs === String ? "0" : 0;
2862                      if (message.objectId != null && message.hasOwnProperty("objectId"))
2863                          if (typeof message.objectId === "number")
2864                              object.objectId = options.longs === String ? String(message.objectId) : message.objectId;
2865                          else
2866                              object.objectId = options.longs === String ? $util.Long.prototype.toString.call(message.objectId) : options.longs === Number ? new $util.LongBits(message.objectId.low >>> 0, message.objectId.high >>> 0).toNumber(true) : message.objectId;
2867                      return object;
2868                  };
2869  
2870                  /**
2871                   * Converts this AdditionalInfo to JSON.
2872                   * @function toJSON
2873                   * @memberof market.mass.Error.AdditionalInfo
2874                   * @instance
2875                   * @returns {Object.<string,*>} JSON object
2876                   */
2877                  AdditionalInfo.prototype.toJSON = function toJSON() {
2878                      return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
2879                  };
2880  
2881                  /**
2882                   * Gets the default type url for AdditionalInfo
2883                   * @function getTypeUrl
2884                   * @memberof market.mass.Error.AdditionalInfo
2885                   * @static
2886                   * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
2887                   * @returns {string} The default type url
2888                   */
2889                  AdditionalInfo.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
2890                      if (typeUrlPrefix === undefined) {
2891                          typeUrlPrefix = "type.googleapis.com";
2892                      }
2893                      return typeUrlPrefix + "/market.mass.Error.AdditionalInfo";
2894                  };
2895  
2896                  return AdditionalInfo;
2897              })();
2898  
2899              return Error;
2900          })();
2901  
2902          /**
2903           * ErrorCodes enum.
2904           * @name market.mass.ErrorCodes
2905           * @enum {number}
2906           * @property {number} ERROR_CODES_UNSPECIFIED=0 ERROR_CODES_UNSPECIFIED value
2907           * @property {number} ERROR_CODES_NOT_FOUND=1 ERROR_CODES_NOT_FOUND value
2908           * @property {number} ERROR_CODES_INVALID=2 ERROR_CODES_INVALID value
2909           * @property {number} ERROR_CODES_NOT_AUTHENTICATED=3 ERROR_CODES_NOT_AUTHENTICATED value
2910           * @property {number} ERROR_CODES_ALREADY_AUTHENTICATED=4 ERROR_CODES_ALREADY_AUTHENTICATED value
2911           * @property {number} ERROR_CODES_ALREADY_CONNECTED=5 ERROR_CODES_ALREADY_CONNECTED value
2912           * @property {number} ERROR_CODES_TOO_MANY_CONCURRENT_REQUESTS=6 ERROR_CODES_TOO_MANY_CONCURRENT_REQUESTS value
2913           * @property {number} ERROR_CODES_UNLINKED_KEYCARD=7 ERROR_CODES_UNLINKED_KEYCARD value
2914           * @property {number} ERROR_CODES_MINIMUM_VERSION_NOT_REACHED=8 ERROR_CODES_MINIMUM_VERSION_NOT_REACHED value
2915           * @property {number} ERROR_CODES_OUT_OF_STOCK=9 ERROR_CODES_OUT_OF_STOCK value
2916           * @property {number} ERROR_CODES_SIMULATED=10 ERROR_CODES_SIMULATED value
2917           * @property {number} ERROR_CODES_CLOSE_SUBSCRIPTION=11 ERROR_CODES_CLOSE_SUBSCRIPTION value
2918           */
2919          mass.ErrorCodes = (function() {
2920              const valuesById = {}, values = Object.create(valuesById);
2921              values[valuesById[0] = "ERROR_CODES_UNSPECIFIED"] = 0;
2922              values[valuesById[1] = "ERROR_CODES_NOT_FOUND"] = 1;
2923              values[valuesById[2] = "ERROR_CODES_INVALID"] = 2;
2924              values[valuesById[3] = "ERROR_CODES_NOT_AUTHENTICATED"] = 3;
2925              values[valuesById[4] = "ERROR_CODES_ALREADY_AUTHENTICATED"] = 4;
2926              values[valuesById[5] = "ERROR_CODES_ALREADY_CONNECTED"] = 5;
2927              values[valuesById[6] = "ERROR_CODES_TOO_MANY_CONCURRENT_REQUESTS"] = 6;
2928              values[valuesById[7] = "ERROR_CODES_UNLINKED_KEYCARD"] = 7;
2929              values[valuesById[8] = "ERROR_CODES_MINIMUM_VERSION_NOT_REACHED"] = 8;
2930              values[valuesById[9] = "ERROR_CODES_OUT_OF_STOCK"] = 9;
2931              values[valuesById[10] = "ERROR_CODES_SIMULATED"] = 10;
2932              values[valuesById[11] = "ERROR_CODES_CLOSE_SUBSCRIPTION"] = 11;
2933              return values;
2934          })();
2935  
2936          mass.GetBlobUploadURLRequest = (function() {
2937  
2938              /**
2939               * Properties of a GetBlobUploadURLRequest.
2940               * @memberof market.mass
2941               * @interface IGetBlobUploadURLRequest
2942               */
2943  
2944              /**
2945               * Constructs a new GetBlobUploadURLRequest.
2946               * @memberof market.mass
2947               * @classdesc Represents a GetBlobUploadURLRequest.
2948               * @implements IGetBlobUploadURLRequest
2949               * @constructor
2950               * @param {market.mass.IGetBlobUploadURLRequest=} [properties] Properties to set
2951               */
2952              function GetBlobUploadURLRequest(properties) {
2953                  if (properties)
2954                      for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
2955                          if (properties[keys[i]] != null)
2956                              this[keys[i]] = properties[keys[i]];
2957              }
2958  
2959              /**
2960               * Creates a new GetBlobUploadURLRequest instance using the specified properties.
2961               * @function create
2962               * @memberof market.mass.GetBlobUploadURLRequest
2963               * @static
2964               * @param {market.mass.IGetBlobUploadURLRequest=} [properties] Properties to set
2965               * @returns {market.mass.GetBlobUploadURLRequest} GetBlobUploadURLRequest instance
2966               */
2967              GetBlobUploadURLRequest.create = function create(properties) {
2968                  return new GetBlobUploadURLRequest(properties);
2969              };
2970  
2971              /**
2972               * Encodes the specified GetBlobUploadURLRequest message. Does not implicitly {@link market.mass.GetBlobUploadURLRequest.verify|verify} messages.
2973               * @function encode
2974               * @memberof market.mass.GetBlobUploadURLRequest
2975               * @static
2976               * @param {market.mass.IGetBlobUploadURLRequest} message GetBlobUploadURLRequest message or plain object to encode
2977               * @param {$protobuf.Writer} [writer] Writer to encode to
2978               * @returns {$protobuf.Writer} Writer
2979               */
2980              GetBlobUploadURLRequest.encode = function encode(message, writer) {
2981                  if (!writer)
2982                      writer = $Writer.create();
2983                  return writer;
2984              };
2985  
2986              /**
2987               * Encodes the specified GetBlobUploadURLRequest message, length delimited. Does not implicitly {@link market.mass.GetBlobUploadURLRequest.verify|verify} messages.
2988               * @function encodeDelimited
2989               * @memberof market.mass.GetBlobUploadURLRequest
2990               * @static
2991               * @param {market.mass.IGetBlobUploadURLRequest} message GetBlobUploadURLRequest message or plain object to encode
2992               * @param {$protobuf.Writer} [writer] Writer to encode to
2993               * @returns {$protobuf.Writer} Writer
2994               */
2995              GetBlobUploadURLRequest.encodeDelimited = function encodeDelimited(message, writer) {
2996                  return this.encode(message, writer).ldelim();
2997              };
2998  
2999              /**
3000               * Decodes a GetBlobUploadURLRequest message from the specified reader or buffer.
3001               * @function decode
3002               * @memberof market.mass.GetBlobUploadURLRequest
3003               * @static
3004               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
3005               * @param {number} [length] Message length if known beforehand
3006               * @returns {market.mass.GetBlobUploadURLRequest} GetBlobUploadURLRequest
3007               * @throws {Error} If the payload is not a reader or valid buffer
3008               * @throws {$protobuf.util.ProtocolError} If required fields are missing
3009               */
3010              GetBlobUploadURLRequest.decode = function decode(reader, length, error) {
3011                  if (!(reader instanceof $Reader))
3012                      reader = $Reader.create(reader);
3013                  let end = length === undefined ? reader.len : reader.pos + length, message = new $root.market.mass.GetBlobUploadURLRequest();
3014                  while (reader.pos < end) {
3015                      let tag = reader.uint32();
3016                      if (tag === error)
3017                          break;
3018                      switch (tag >>> 3) {
3019                      default:
3020                          reader.skipType(tag & 7);
3021                          break;
3022                      }
3023                  }
3024                  return message;
3025              };
3026  
3027              /**
3028               * Decodes a GetBlobUploadURLRequest message from the specified reader or buffer, length delimited.
3029               * @function decodeDelimited
3030               * @memberof market.mass.GetBlobUploadURLRequest
3031               * @static
3032               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
3033               * @returns {market.mass.GetBlobUploadURLRequest} GetBlobUploadURLRequest
3034               * @throws {Error} If the payload is not a reader or valid buffer
3035               * @throws {$protobuf.util.ProtocolError} If required fields are missing
3036               */
3037              GetBlobUploadURLRequest.decodeDelimited = function decodeDelimited(reader) {
3038                  if (!(reader instanceof $Reader))
3039                      reader = new $Reader(reader);
3040                  return this.decode(reader, reader.uint32());
3041              };
3042  
3043              /**
3044               * Verifies a GetBlobUploadURLRequest message.
3045               * @function verify
3046               * @memberof market.mass.GetBlobUploadURLRequest
3047               * @static
3048               * @param {Object.<string,*>} message Plain object to verify
3049               * @returns {string|null} `null` if valid, otherwise the reason why it is not
3050               */
3051              GetBlobUploadURLRequest.verify = function verify(message) {
3052                  if (typeof message !== "object" || message === null)
3053                      return "object expected";
3054                  return null;
3055              };
3056  
3057              /**
3058               * Creates a GetBlobUploadURLRequest message from a plain object. Also converts values to their respective internal types.
3059               * @function fromObject
3060               * @memberof market.mass.GetBlobUploadURLRequest
3061               * @static
3062               * @param {Object.<string,*>} object Plain object
3063               * @returns {market.mass.GetBlobUploadURLRequest} GetBlobUploadURLRequest
3064               */
3065              GetBlobUploadURLRequest.fromObject = function fromObject(object) {
3066                  if (object instanceof $root.market.mass.GetBlobUploadURLRequest)
3067                      return object;
3068                  return new $root.market.mass.GetBlobUploadURLRequest();
3069              };
3070  
3071              /**
3072               * Creates a plain object from a GetBlobUploadURLRequest message. Also converts values to other types if specified.
3073               * @function toObject
3074               * @memberof market.mass.GetBlobUploadURLRequest
3075               * @static
3076               * @param {market.mass.GetBlobUploadURLRequest} message GetBlobUploadURLRequest
3077               * @param {$protobuf.IConversionOptions} [options] Conversion options
3078               * @returns {Object.<string,*>} Plain object
3079               */
3080              GetBlobUploadURLRequest.toObject = function toObject() {
3081                  return {};
3082              };
3083  
3084              /**
3085               * Converts this GetBlobUploadURLRequest to JSON.
3086               * @function toJSON
3087               * @memberof market.mass.GetBlobUploadURLRequest
3088               * @instance
3089               * @returns {Object.<string,*>} JSON object
3090               */
3091              GetBlobUploadURLRequest.prototype.toJSON = function toJSON() {
3092                  return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
3093              };
3094  
3095              /**
3096               * Gets the default type url for GetBlobUploadURLRequest
3097               * @function getTypeUrl
3098               * @memberof market.mass.GetBlobUploadURLRequest
3099               * @static
3100               * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
3101               * @returns {string} The default type url
3102               */
3103              GetBlobUploadURLRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
3104                  if (typeUrlPrefix === undefined) {
3105                      typeUrlPrefix = "type.googleapis.com";
3106                  }
3107                  return typeUrlPrefix + "/market.mass.GetBlobUploadURLRequest";
3108              };
3109  
3110              return GetBlobUploadURLRequest;
3111          })();
3112  
3113          /**
3114           * ObjectType enum.
3115           * @name market.mass.ObjectType
3116           * @enum {number}
3117           * @property {number} OBJECT_TYPE_UNSPECIFIED=0 OBJECT_TYPE_UNSPECIFIED value
3118           * @property {number} OBJECT_TYPE_LISTING=1 OBJECT_TYPE_LISTING value
3119           * @property {number} OBJECT_TYPE_TAG=2 OBJECT_TYPE_TAG value
3120           * @property {number} OBJECT_TYPE_ORDER=3 OBJECT_TYPE_ORDER value
3121           * @property {number} OBJECT_TYPE_ACCOUNT=4 OBJECT_TYPE_ACCOUNT value
3122           * @property {number} OBJECT_TYPE_MANIFEST=5 OBJECT_TYPE_MANIFEST value
3123           * @property {number} OBJECT_TYPE_INVENTORY=6 OBJECT_TYPE_INVENTORY value
3124           */
3125          mass.ObjectType = (function() {
3126              const valuesById = {}, values = Object.create(valuesById);
3127              values[valuesById[0] = "OBJECT_TYPE_UNSPECIFIED"] = 0;
3128              values[valuesById[1] = "OBJECT_TYPE_LISTING"] = 1;
3129              values[valuesById[2] = "OBJECT_TYPE_TAG"] = 2;
3130              values[valuesById[3] = "OBJECT_TYPE_ORDER"] = 3;
3131              values[valuesById[4] = "OBJECT_TYPE_ACCOUNT"] = 4;
3132              values[valuesById[5] = "OBJECT_TYPE_MANIFEST"] = 5;
3133              values[valuesById[6] = "OBJECT_TYPE_INVENTORY"] = 6;
3134              return values;
3135          })();
3136  
3137          mass.SubscriptionRequest = (function() {
3138  
3139              /**
3140               * Properties of a SubscriptionRequest.
3141               * @memberof market.mass
3142               * @interface ISubscriptionRequest
3143               * @property {number|Long|null} [startShopSeqNo] SubscriptionRequest startShopSeqNo
3144               * @property {market.mass.IUint256|null} [shopId] SubscriptionRequest shopId
3145               * @property {Array.<market.mass.SubscriptionRequest.IFilter>|null} [filters] SubscriptionRequest filters
3146               */
3147  
3148              /**
3149               * Constructs a new SubscriptionRequest.
3150               * @memberof market.mass
3151               * @classdesc Represents a SubscriptionRequest.
3152               * @implements ISubscriptionRequest
3153               * @constructor
3154               * @param {market.mass.ISubscriptionRequest=} [properties] Properties to set
3155               */
3156              function SubscriptionRequest(properties) {
3157                  this.filters = [];
3158                  if (properties)
3159                      for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
3160                          if (properties[keys[i]] != null)
3161                              this[keys[i]] = properties[keys[i]];
3162              }
3163  
3164              /**
3165               * SubscriptionRequest startShopSeqNo.
3166               * @member {number|Long} startShopSeqNo
3167               * @memberof market.mass.SubscriptionRequest
3168               * @instance
3169               */
3170              SubscriptionRequest.prototype.startShopSeqNo = $util.Long ? $util.Long.fromBits(0,0,true) : 0;
3171  
3172              /**
3173               * SubscriptionRequest shopId.
3174               * @member {market.mass.IUint256|null|undefined} shopId
3175               * @memberof market.mass.SubscriptionRequest
3176               * @instance
3177               */
3178              SubscriptionRequest.prototype.shopId = null;
3179  
3180              /**
3181               * SubscriptionRequest filters.
3182               * @member {Array.<market.mass.SubscriptionRequest.IFilter>} filters
3183               * @memberof market.mass.SubscriptionRequest
3184               * @instance
3185               */
3186              SubscriptionRequest.prototype.filters = $util.emptyArray;
3187  
3188              /**
3189               * Creates a new SubscriptionRequest instance using the specified properties.
3190               * @function create
3191               * @memberof market.mass.SubscriptionRequest
3192               * @static
3193               * @param {market.mass.ISubscriptionRequest=} [properties] Properties to set
3194               * @returns {market.mass.SubscriptionRequest} SubscriptionRequest instance
3195               */
3196              SubscriptionRequest.create = function create(properties) {
3197                  return new SubscriptionRequest(properties);
3198              };
3199  
3200              /**
3201               * Encodes the specified SubscriptionRequest message. Does not implicitly {@link market.mass.SubscriptionRequest.verify|verify} messages.
3202               * @function encode
3203               * @memberof market.mass.SubscriptionRequest
3204               * @static
3205               * @param {market.mass.ISubscriptionRequest} message SubscriptionRequest message or plain object to encode
3206               * @param {$protobuf.Writer} [writer] Writer to encode to
3207               * @returns {$protobuf.Writer} Writer
3208               */
3209              SubscriptionRequest.encode = function encode(message, writer) {
3210                  if (!writer)
3211                      writer = $Writer.create();
3212                  if (message.startShopSeqNo != null && Object.hasOwnProperty.call(message, "startShopSeqNo"))
3213                      writer.uint32(/* id 1, wireType 0 =*/8).uint64(message.startShopSeqNo);
3214                  if (message.shopId != null && Object.hasOwnProperty.call(message, "shopId"))
3215                      $root.market.mass.Uint256.encode(message.shopId, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
3216                  if (message.filters != null && message.filters.length)
3217                      for (let i = 0; i < message.filters.length; ++i)
3218                          $root.market.mass.SubscriptionRequest.Filter.encode(message.filters[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
3219                  return writer;
3220              };
3221  
3222              /**
3223               * Encodes the specified SubscriptionRequest message, length delimited. Does not implicitly {@link market.mass.SubscriptionRequest.verify|verify} messages.
3224               * @function encodeDelimited
3225               * @memberof market.mass.SubscriptionRequest
3226               * @static
3227               * @param {market.mass.ISubscriptionRequest} message SubscriptionRequest message or plain object to encode
3228               * @param {$protobuf.Writer} [writer] Writer to encode to
3229               * @returns {$protobuf.Writer} Writer
3230               */
3231              SubscriptionRequest.encodeDelimited = function encodeDelimited(message, writer) {
3232                  return this.encode(message, writer).ldelim();
3233              };
3234  
3235              /**
3236               * Decodes a SubscriptionRequest message from the specified reader or buffer.
3237               * @function decode
3238               * @memberof market.mass.SubscriptionRequest
3239               * @static
3240               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
3241               * @param {number} [length] Message length if known beforehand
3242               * @returns {market.mass.SubscriptionRequest} SubscriptionRequest
3243               * @throws {Error} If the payload is not a reader or valid buffer
3244               * @throws {$protobuf.util.ProtocolError} If required fields are missing
3245               */
3246              SubscriptionRequest.decode = function decode(reader, length, error) {
3247                  if (!(reader instanceof $Reader))
3248                      reader = $Reader.create(reader);
3249                  let end = length === undefined ? reader.len : reader.pos + length, message = new $root.market.mass.SubscriptionRequest();
3250                  while (reader.pos < end) {
3251                      let tag = reader.uint32();
3252                      if (tag === error)
3253                          break;
3254                      switch (tag >>> 3) {
3255                      case 1: {
3256                              message.startShopSeqNo = reader.uint64();
3257                              break;
3258                          }
3259                      case 2: {
3260                              message.shopId = $root.market.mass.Uint256.decode(reader, reader.uint32());
3261                              break;
3262                          }
3263                      case 3: {
3264                              if (!(message.filters && message.filters.length))
3265                                  message.filters = [];
3266                              message.filters.push($root.market.mass.SubscriptionRequest.Filter.decode(reader, reader.uint32()));
3267                              break;
3268                          }
3269                      default:
3270                          reader.skipType(tag & 7);
3271                          break;
3272                      }
3273                  }
3274                  return message;
3275              };
3276  
3277              /**
3278               * Decodes a SubscriptionRequest message from the specified reader or buffer, length delimited.
3279               * @function decodeDelimited
3280               * @memberof market.mass.SubscriptionRequest
3281               * @static
3282               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
3283               * @returns {market.mass.SubscriptionRequest} SubscriptionRequest
3284               * @throws {Error} If the payload is not a reader or valid buffer
3285               * @throws {$protobuf.util.ProtocolError} If required fields are missing
3286               */
3287              SubscriptionRequest.decodeDelimited = function decodeDelimited(reader) {
3288                  if (!(reader instanceof $Reader))
3289                      reader = new $Reader(reader);
3290                  return this.decode(reader, reader.uint32());
3291              };
3292  
3293              /**
3294               * Verifies a SubscriptionRequest message.
3295               * @function verify
3296               * @memberof market.mass.SubscriptionRequest
3297               * @static
3298               * @param {Object.<string,*>} message Plain object to verify
3299               * @returns {string|null} `null` if valid, otherwise the reason why it is not
3300               */
3301              SubscriptionRequest.verify = function verify(message) {
3302                  if (typeof message !== "object" || message === null)
3303                      return "object expected";
3304                  if (message.startShopSeqNo != null && message.hasOwnProperty("startShopSeqNo"))
3305                      if (!$util.isInteger(message.startShopSeqNo) && !(message.startShopSeqNo && $util.isInteger(message.startShopSeqNo.low) && $util.isInteger(message.startShopSeqNo.high)))
3306                          return "startShopSeqNo: integer|Long expected";
3307                  if (message.shopId != null && message.hasOwnProperty("shopId")) {
3308                      let error = $root.market.mass.Uint256.verify(message.shopId);
3309                      if (error)
3310                          return "shopId." + error;
3311                  }
3312                  if (message.filters != null && message.hasOwnProperty("filters")) {
3313                      if (!Array.isArray(message.filters))
3314                          return "filters: array expected";
3315                      for (let i = 0; i < message.filters.length; ++i) {
3316                          let error = $root.market.mass.SubscriptionRequest.Filter.verify(message.filters[i]);
3317                          if (error)
3318                              return "filters." + error;
3319                      }
3320                  }
3321                  return null;
3322              };
3323  
3324              /**
3325               * Creates a SubscriptionRequest message from a plain object. Also converts values to their respective internal types.
3326               * @function fromObject
3327               * @memberof market.mass.SubscriptionRequest
3328               * @static
3329               * @param {Object.<string,*>} object Plain object
3330               * @returns {market.mass.SubscriptionRequest} SubscriptionRequest
3331               */
3332              SubscriptionRequest.fromObject = function fromObject(object) {
3333                  if (object instanceof $root.market.mass.SubscriptionRequest)
3334                      return object;
3335                  let message = new $root.market.mass.SubscriptionRequest();
3336                  if (object.startShopSeqNo != null)
3337                      if ($util.Long)
3338                          (message.startShopSeqNo = $util.Long.fromValue(object.startShopSeqNo)).unsigned = true;
3339                      else if (typeof object.startShopSeqNo === "string")
3340                          message.startShopSeqNo = parseInt(object.startShopSeqNo, 10);
3341                      else if (typeof object.startShopSeqNo === "number")
3342                          message.startShopSeqNo = object.startShopSeqNo;
3343                      else if (typeof object.startShopSeqNo === "object")
3344                          message.startShopSeqNo = new $util.LongBits(object.startShopSeqNo.low >>> 0, object.startShopSeqNo.high >>> 0).toNumber(true);
3345                  if (object.shopId != null) {
3346                      if (typeof object.shopId !== "object")
3347                          throw TypeError(".market.mass.SubscriptionRequest.shopId: object expected");
3348                      message.shopId = $root.market.mass.Uint256.fromObject(object.shopId);
3349                  }
3350                  if (object.filters) {
3351                      if (!Array.isArray(object.filters))
3352                          throw TypeError(".market.mass.SubscriptionRequest.filters: array expected");
3353                      message.filters = [];
3354                      for (let i = 0; i < object.filters.length; ++i) {
3355                          if (typeof object.filters[i] !== "object")
3356                              throw TypeError(".market.mass.SubscriptionRequest.filters: object expected");
3357                          message.filters[i] = $root.market.mass.SubscriptionRequest.Filter.fromObject(object.filters[i]);
3358                      }
3359                  }
3360                  return message;
3361              };
3362  
3363              /**
3364               * Creates a plain object from a SubscriptionRequest message. Also converts values to other types if specified.
3365               * @function toObject
3366               * @memberof market.mass.SubscriptionRequest
3367               * @static
3368               * @param {market.mass.SubscriptionRequest} message SubscriptionRequest
3369               * @param {$protobuf.IConversionOptions} [options] Conversion options
3370               * @returns {Object.<string,*>} Plain object
3371               */
3372              SubscriptionRequest.toObject = function toObject(message, options) {
3373                  if (!options)
3374                      options = {};
3375                  let object = {};
3376                  if (options.arrays || options.defaults)
3377                      object.filters = [];
3378                  if (options.defaults) {
3379                      if ($util.Long) {
3380                          let long = new $util.Long(0, 0, true);
3381                          object.startShopSeqNo = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
3382                      } else
3383                          object.startShopSeqNo = options.longs === String ? "0" : 0;
3384                      object.shopId = null;
3385                  }
3386                  if (message.startShopSeqNo != null && message.hasOwnProperty("startShopSeqNo"))
3387                      if (typeof message.startShopSeqNo === "number")
3388                          object.startShopSeqNo = options.longs === String ? String(message.startShopSeqNo) : message.startShopSeqNo;
3389                      else
3390                          object.startShopSeqNo = options.longs === String ? $util.Long.prototype.toString.call(message.startShopSeqNo) : options.longs === Number ? new $util.LongBits(message.startShopSeqNo.low >>> 0, message.startShopSeqNo.high >>> 0).toNumber(true) : message.startShopSeqNo;
3391                  if (message.shopId != null && message.hasOwnProperty("shopId"))
3392                      object.shopId = $root.market.mass.Uint256.toObject(message.shopId, options);
3393                  if (message.filters && message.filters.length) {
3394                      object.filters = [];
3395                      for (let j = 0; j < message.filters.length; ++j)
3396                          object.filters[j] = $root.market.mass.SubscriptionRequest.Filter.toObject(message.filters[j], options);
3397                  }
3398                  return object;
3399              };
3400  
3401              /**
3402               * Converts this SubscriptionRequest to JSON.
3403               * @function toJSON
3404               * @memberof market.mass.SubscriptionRequest
3405               * @instance
3406               * @returns {Object.<string,*>} JSON object
3407               */
3408              SubscriptionRequest.prototype.toJSON = function toJSON() {
3409                  return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
3410              };
3411  
3412              /**
3413               * Gets the default type url for SubscriptionRequest
3414               * @function getTypeUrl
3415               * @memberof market.mass.SubscriptionRequest
3416               * @static
3417               * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
3418               * @returns {string} The default type url
3419               */
3420              SubscriptionRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
3421                  if (typeUrlPrefix === undefined) {
3422                      typeUrlPrefix = "type.googleapis.com";
3423                  }
3424                  return typeUrlPrefix + "/market.mass.SubscriptionRequest";
3425              };
3426  
3427              SubscriptionRequest.Filter = (function() {
3428  
3429                  /**
3430                   * Properties of a Filter.
3431                   * @memberof market.mass.SubscriptionRequest
3432                   * @interface IFilter
3433                   * @property {market.mass.ObjectType|null} [objectType] Filter objectType
3434                   * @property {market.mass.IObjectId|null} [objectId] Filter objectId
3435                   */
3436  
3437                  /**
3438                   * Constructs a new Filter.
3439                   * @memberof market.mass.SubscriptionRequest
3440                   * @classdesc Represents a Filter.
3441                   * @implements IFilter
3442                   * @constructor
3443                   * @param {market.mass.SubscriptionRequest.IFilter=} [properties] Properties to set
3444                   */
3445                  function Filter(properties) {
3446                      if (properties)
3447                          for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
3448                              if (properties[keys[i]] != null)
3449                                  this[keys[i]] = properties[keys[i]];
3450                  }
3451  
3452                  /**
3453                   * Filter objectType.
3454                   * @member {market.mass.ObjectType} objectType
3455                   * @memberof market.mass.SubscriptionRequest.Filter
3456                   * @instance
3457                   */
3458                  Filter.prototype.objectType = 0;
3459  
3460                  /**
3461                   * Filter objectId.
3462                   * @member {market.mass.IObjectId|null|undefined} objectId
3463                   * @memberof market.mass.SubscriptionRequest.Filter
3464                   * @instance
3465                   */
3466                  Filter.prototype.objectId = null;
3467  
3468                  // OneOf field names bound to virtual getters and setters
3469                  let $oneOfFields;
3470  
3471                  /**
3472                   * Filter _objectId.
3473                   * @member {"objectId"|undefined} _objectId
3474                   * @memberof market.mass.SubscriptionRequest.Filter
3475                   * @instance
3476                   */
3477                  Object.defineProperty(Filter.prototype, "_objectId", {
3478                      get: $util.oneOfGetter($oneOfFields = ["objectId"]),
3479                      set: $util.oneOfSetter($oneOfFields)
3480                  });
3481  
3482                  /**
3483                   * Creates a new Filter instance using the specified properties.
3484                   * @function create
3485                   * @memberof market.mass.SubscriptionRequest.Filter
3486                   * @static
3487                   * @param {market.mass.SubscriptionRequest.IFilter=} [properties] Properties to set
3488                   * @returns {market.mass.SubscriptionRequest.Filter} Filter instance
3489                   */
3490                  Filter.create = function create(properties) {
3491                      return new Filter(properties);
3492                  };
3493  
3494                  /**
3495                   * Encodes the specified Filter message. Does not implicitly {@link market.mass.SubscriptionRequest.Filter.verify|verify} messages.
3496                   * @function encode
3497                   * @memberof market.mass.SubscriptionRequest.Filter
3498                   * @static
3499                   * @param {market.mass.SubscriptionRequest.IFilter} message Filter message or plain object to encode
3500                   * @param {$protobuf.Writer} [writer] Writer to encode to
3501                   * @returns {$protobuf.Writer} Writer
3502                   */
3503                  Filter.encode = function encode(message, writer) {
3504                      if (!writer)
3505                          writer = $Writer.create();
3506                      if (message.objectType != null && Object.hasOwnProperty.call(message, "objectType"))
3507                          writer.uint32(/* id 3, wireType 0 =*/24).int32(message.objectType);
3508                      if (message.objectId != null && Object.hasOwnProperty.call(message, "objectId"))
3509                          $root.market.mass.ObjectId.encode(message.objectId, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
3510                      return writer;
3511                  };
3512  
3513                  /**
3514                   * Encodes the specified Filter message, length delimited. Does not implicitly {@link market.mass.SubscriptionRequest.Filter.verify|verify} messages.
3515                   * @function encodeDelimited
3516                   * @memberof market.mass.SubscriptionRequest.Filter
3517                   * @static
3518                   * @param {market.mass.SubscriptionRequest.IFilter} message Filter message or plain object to encode
3519                   * @param {$protobuf.Writer} [writer] Writer to encode to
3520                   * @returns {$protobuf.Writer} Writer
3521                   */
3522                  Filter.encodeDelimited = function encodeDelimited(message, writer) {
3523                      return this.encode(message, writer).ldelim();
3524                  };
3525  
3526                  /**
3527                   * Decodes a Filter message from the specified reader or buffer.
3528                   * @function decode
3529                   * @memberof market.mass.SubscriptionRequest.Filter
3530                   * @static
3531                   * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
3532                   * @param {number} [length] Message length if known beforehand
3533                   * @returns {market.mass.SubscriptionRequest.Filter} Filter
3534                   * @throws {Error} If the payload is not a reader or valid buffer
3535                   * @throws {$protobuf.util.ProtocolError} If required fields are missing
3536                   */
3537                  Filter.decode = function decode(reader, length, error) {
3538                      if (!(reader instanceof $Reader))
3539                          reader = $Reader.create(reader);
3540                      let end = length === undefined ? reader.len : reader.pos + length, message = new $root.market.mass.SubscriptionRequest.Filter();
3541                      while (reader.pos < end) {
3542                          let tag = reader.uint32();
3543                          if (tag === error)
3544                              break;
3545                          switch (tag >>> 3) {
3546                          case 3: {
3547                                  message.objectType = reader.int32();
3548                                  break;
3549                              }
3550                          case 4: {
3551                                  message.objectId = $root.market.mass.ObjectId.decode(reader, reader.uint32());
3552                                  break;
3553                              }
3554                          default:
3555                              reader.skipType(tag & 7);
3556                              break;
3557                          }
3558                      }
3559                      return message;
3560                  };
3561  
3562                  /**
3563                   * Decodes a Filter message from the specified reader or buffer, length delimited.
3564                   * @function decodeDelimited
3565                   * @memberof market.mass.SubscriptionRequest.Filter
3566                   * @static
3567                   * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
3568                   * @returns {market.mass.SubscriptionRequest.Filter} Filter
3569                   * @throws {Error} If the payload is not a reader or valid buffer
3570                   * @throws {$protobuf.util.ProtocolError} If required fields are missing
3571                   */
3572                  Filter.decodeDelimited = function decodeDelimited(reader) {
3573                      if (!(reader instanceof $Reader))
3574                          reader = new $Reader(reader);
3575                      return this.decode(reader, reader.uint32());
3576                  };
3577  
3578                  /**
3579                   * Verifies a Filter message.
3580                   * @function verify
3581                   * @memberof market.mass.SubscriptionRequest.Filter
3582                   * @static
3583                   * @param {Object.<string,*>} message Plain object to verify
3584                   * @returns {string|null} `null` if valid, otherwise the reason why it is not
3585                   */
3586                  Filter.verify = function verify(message) {
3587                      if (typeof message !== "object" || message === null)
3588                          return "object expected";
3589                      let properties = {};
3590                      if (message.objectType != null && message.hasOwnProperty("objectType"))
3591                          switch (message.objectType) {
3592                          default:
3593                              return "objectType: enum value expected";
3594                          case 0:
3595                          case 1:
3596                          case 2:
3597                          case 3:
3598                          case 4:
3599                          case 5:
3600                          case 6:
3601                              break;
3602                          }
3603                      if (message.objectId != null && message.hasOwnProperty("objectId")) {
3604                          properties._objectId = 1;
3605                          {
3606                              let error = $root.market.mass.ObjectId.verify(message.objectId);
3607                              if (error)
3608                                  return "objectId." + error;
3609                          }
3610                      }
3611                      return null;
3612                  };
3613  
3614                  /**
3615                   * Creates a Filter message from a plain object. Also converts values to their respective internal types.
3616                   * @function fromObject
3617                   * @memberof market.mass.SubscriptionRequest.Filter
3618                   * @static
3619                   * @param {Object.<string,*>} object Plain object
3620                   * @returns {market.mass.SubscriptionRequest.Filter} Filter
3621                   */
3622                  Filter.fromObject = function fromObject(object) {
3623                      if (object instanceof $root.market.mass.SubscriptionRequest.Filter)
3624                          return object;
3625                      let message = new $root.market.mass.SubscriptionRequest.Filter();
3626                      switch (object.objectType) {
3627                      default:
3628                          if (typeof object.objectType === "number") {
3629                              message.objectType = object.objectType;
3630                              break;
3631                          }
3632                          break;
3633                      case "OBJECT_TYPE_UNSPECIFIED":
3634                      case 0:
3635                          message.objectType = 0;
3636                          break;
3637                      case "OBJECT_TYPE_LISTING":
3638                      case 1:
3639                          message.objectType = 1;
3640                          break;
3641                      case "OBJECT_TYPE_TAG":
3642                      case 2:
3643                          message.objectType = 2;
3644                          break;
3645                      case "OBJECT_TYPE_ORDER":
3646                      case 3:
3647                          message.objectType = 3;
3648                          break;
3649                      case "OBJECT_TYPE_ACCOUNT":
3650                      case 4:
3651                          message.objectType = 4;
3652                          break;
3653                      case "OBJECT_TYPE_MANIFEST":
3654                      case 5:
3655                          message.objectType = 5;
3656                          break;
3657                      case "OBJECT_TYPE_INVENTORY":
3658                      case 6:
3659                          message.objectType = 6;
3660                          break;
3661                      }
3662                      if (object.objectId != null) {
3663                          if (typeof object.objectId !== "object")
3664                              throw TypeError(".market.mass.SubscriptionRequest.Filter.objectId: object expected");
3665                          message.objectId = $root.market.mass.ObjectId.fromObject(object.objectId);
3666                      }
3667                      return message;
3668                  };
3669  
3670                  /**
3671                   * Creates a plain object from a Filter message. Also converts values to other types if specified.
3672                   * @function toObject
3673                   * @memberof market.mass.SubscriptionRequest.Filter
3674                   * @static
3675                   * @param {market.mass.SubscriptionRequest.Filter} message Filter
3676                   * @param {$protobuf.IConversionOptions} [options] Conversion options
3677                   * @returns {Object.<string,*>} Plain object
3678                   */
3679                  Filter.toObject = function toObject(message, options) {
3680                      if (!options)
3681                          options = {};
3682                      let object = {};
3683                      if (options.defaults)
3684                          object.objectType = options.enums === String ? "OBJECT_TYPE_UNSPECIFIED" : 0;
3685                      if (message.objectType != null && message.hasOwnProperty("objectType"))
3686                          object.objectType = options.enums === String ? $root.market.mass.ObjectType[message.objectType] === undefined ? message.objectType : $root.market.mass.ObjectType[message.objectType] : message.objectType;
3687                      if (message.objectId != null && message.hasOwnProperty("objectId")) {
3688                          object.objectId = $root.market.mass.ObjectId.toObject(message.objectId, options);
3689                          if (options.oneofs)
3690                              object._objectId = "objectId";
3691                      }
3692                      return object;
3693                  };
3694  
3695                  /**
3696                   * Converts this Filter to JSON.
3697                   * @function toJSON
3698                   * @memberof market.mass.SubscriptionRequest.Filter
3699                   * @instance
3700                   * @returns {Object.<string,*>} JSON object
3701                   */
3702                  Filter.prototype.toJSON = function toJSON() {
3703                      return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
3704                  };
3705  
3706                  /**
3707                   * Gets the default type url for Filter
3708                   * @function getTypeUrl
3709                   * @memberof market.mass.SubscriptionRequest.Filter
3710                   * @static
3711                   * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
3712                   * @returns {string} The default type url
3713                   */
3714                  Filter.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
3715                      if (typeUrlPrefix === undefined) {
3716                          typeUrlPrefix = "type.googleapis.com";
3717                      }
3718                      return typeUrlPrefix + "/market.mass.SubscriptionRequest.Filter";
3719                  };
3720  
3721                  return Filter;
3722              })();
3723  
3724              return SubscriptionRequest;
3725          })();
3726  
3727          mass.SubscriptionPushRequest = (function() {
3728  
3729              /**
3730               * Properties of a SubscriptionPushRequest.
3731               * @memberof market.mass
3732               * @interface ISubscriptionPushRequest
3733               * @property {Uint8Array|null} [subscriptionId] SubscriptionPushRequest subscriptionId
3734               * @property {Array.<market.mass.SubscriptionPushRequest.ISequencedPartialPatchSet>|null} [sets] SubscriptionPushRequest sets
3735               */
3736  
3737              /**
3738               * Constructs a new SubscriptionPushRequest.
3739               * @memberof market.mass
3740               * @classdesc Represents a SubscriptionPushRequest.
3741               * @implements ISubscriptionPushRequest
3742               * @constructor
3743               * @param {market.mass.ISubscriptionPushRequest=} [properties] Properties to set
3744               */
3745              function SubscriptionPushRequest(properties) {
3746                  this.sets = [];
3747                  if (properties)
3748                      for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
3749                          if (properties[keys[i]] != null)
3750                              this[keys[i]] = properties[keys[i]];
3751              }
3752  
3753              /**
3754               * SubscriptionPushRequest subscriptionId.
3755               * @member {Uint8Array} subscriptionId
3756               * @memberof market.mass.SubscriptionPushRequest
3757               * @instance
3758               */
3759              SubscriptionPushRequest.prototype.subscriptionId = $util.newBuffer([]);
3760  
3761              /**
3762               * SubscriptionPushRequest sets.
3763               * @member {Array.<market.mass.SubscriptionPushRequest.ISequencedPartialPatchSet>} sets
3764               * @memberof market.mass.SubscriptionPushRequest
3765               * @instance
3766               */
3767              SubscriptionPushRequest.prototype.sets = $util.emptyArray;
3768  
3769              /**
3770               * Creates a new SubscriptionPushRequest instance using the specified properties.
3771               * @function create
3772               * @memberof market.mass.SubscriptionPushRequest
3773               * @static
3774               * @param {market.mass.ISubscriptionPushRequest=} [properties] Properties to set
3775               * @returns {market.mass.SubscriptionPushRequest} SubscriptionPushRequest instance
3776               */
3777              SubscriptionPushRequest.create = function create(properties) {
3778                  return new SubscriptionPushRequest(properties);
3779              };
3780  
3781              /**
3782               * Encodes the specified SubscriptionPushRequest message. Does not implicitly {@link market.mass.SubscriptionPushRequest.verify|verify} messages.
3783               * @function encode
3784               * @memberof market.mass.SubscriptionPushRequest
3785               * @static
3786               * @param {market.mass.ISubscriptionPushRequest} message SubscriptionPushRequest message or plain object to encode
3787               * @param {$protobuf.Writer} [writer] Writer to encode to
3788               * @returns {$protobuf.Writer} Writer
3789               */
3790              SubscriptionPushRequest.encode = function encode(message, writer) {
3791                  if (!writer)
3792                      writer = $Writer.create();
3793                  if (message.subscriptionId != null && Object.hasOwnProperty.call(message, "subscriptionId"))
3794                      writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.subscriptionId);
3795                  if (message.sets != null && message.sets.length)
3796                      for (let i = 0; i < message.sets.length; ++i)
3797                          $root.market.mass.SubscriptionPushRequest.SequencedPartialPatchSet.encode(message.sets[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
3798                  return writer;
3799              };
3800  
3801              /**
3802               * Encodes the specified SubscriptionPushRequest message, length delimited. Does not implicitly {@link market.mass.SubscriptionPushRequest.verify|verify} messages.
3803               * @function encodeDelimited
3804               * @memberof market.mass.SubscriptionPushRequest
3805               * @static
3806               * @param {market.mass.ISubscriptionPushRequest} message SubscriptionPushRequest message or plain object to encode
3807               * @param {$protobuf.Writer} [writer] Writer to encode to
3808               * @returns {$protobuf.Writer} Writer
3809               */
3810              SubscriptionPushRequest.encodeDelimited = function encodeDelimited(message, writer) {
3811                  return this.encode(message, writer).ldelim();
3812              };
3813  
3814              /**
3815               * Decodes a SubscriptionPushRequest message from the specified reader or buffer.
3816               * @function decode
3817               * @memberof market.mass.SubscriptionPushRequest
3818               * @static
3819               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
3820               * @param {number} [length] Message length if known beforehand
3821               * @returns {market.mass.SubscriptionPushRequest} SubscriptionPushRequest
3822               * @throws {Error} If the payload is not a reader or valid buffer
3823               * @throws {$protobuf.util.ProtocolError} If required fields are missing
3824               */
3825              SubscriptionPushRequest.decode = function decode(reader, length, error) {
3826                  if (!(reader instanceof $Reader))
3827                      reader = $Reader.create(reader);
3828                  let end = length === undefined ? reader.len : reader.pos + length, message = new $root.market.mass.SubscriptionPushRequest();
3829                  while (reader.pos < end) {
3830                      let tag = reader.uint32();
3831                      if (tag === error)
3832                          break;
3833                      switch (tag >>> 3) {
3834                      case 1: {
3835                              message.subscriptionId = reader.bytes();
3836                              break;
3837                          }
3838                      case 2: {
3839                              if (!(message.sets && message.sets.length))
3840                                  message.sets = [];
3841                              message.sets.push($root.market.mass.SubscriptionPushRequest.SequencedPartialPatchSet.decode(reader, reader.uint32()));
3842                              break;
3843                          }
3844                      default:
3845                          reader.skipType(tag & 7);
3846                          break;
3847                      }
3848                  }
3849                  return message;
3850              };
3851  
3852              /**
3853               * Decodes a SubscriptionPushRequest message from the specified reader or buffer, length delimited.
3854               * @function decodeDelimited
3855               * @memberof market.mass.SubscriptionPushRequest
3856               * @static
3857               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
3858               * @returns {market.mass.SubscriptionPushRequest} SubscriptionPushRequest
3859               * @throws {Error} If the payload is not a reader or valid buffer
3860               * @throws {$protobuf.util.ProtocolError} If required fields are missing
3861               */
3862              SubscriptionPushRequest.decodeDelimited = function decodeDelimited(reader) {
3863                  if (!(reader instanceof $Reader))
3864                      reader = new $Reader(reader);
3865                  return this.decode(reader, reader.uint32());
3866              };
3867  
3868              /**
3869               * Verifies a SubscriptionPushRequest message.
3870               * @function verify
3871               * @memberof market.mass.SubscriptionPushRequest
3872               * @static
3873               * @param {Object.<string,*>} message Plain object to verify
3874               * @returns {string|null} `null` if valid, otherwise the reason why it is not
3875               */
3876              SubscriptionPushRequest.verify = function verify(message) {
3877                  if (typeof message !== "object" || message === null)
3878                      return "object expected";
3879                  if (message.subscriptionId != null && message.hasOwnProperty("subscriptionId"))
3880                      if (!(message.subscriptionId && typeof message.subscriptionId.length === "number" || $util.isString(message.subscriptionId)))
3881                          return "subscriptionId: buffer expected";
3882                  if (message.sets != null && message.hasOwnProperty("sets")) {
3883                      if (!Array.isArray(message.sets))
3884                          return "sets: array expected";
3885                      for (let i = 0; i < message.sets.length; ++i) {
3886                          let error = $root.market.mass.SubscriptionPushRequest.SequencedPartialPatchSet.verify(message.sets[i]);
3887                          if (error)
3888                              return "sets." + error;
3889                      }
3890                  }
3891                  return null;
3892              };
3893  
3894              /**
3895               * Creates a SubscriptionPushRequest message from a plain object. Also converts values to their respective internal types.
3896               * @function fromObject
3897               * @memberof market.mass.SubscriptionPushRequest
3898               * @static
3899               * @param {Object.<string,*>} object Plain object
3900               * @returns {market.mass.SubscriptionPushRequest} SubscriptionPushRequest
3901               */
3902              SubscriptionPushRequest.fromObject = function fromObject(object) {
3903                  if (object instanceof $root.market.mass.SubscriptionPushRequest)
3904                      return object;
3905                  let message = new $root.market.mass.SubscriptionPushRequest();
3906                  if (object.subscriptionId != null)
3907                      if (typeof object.subscriptionId === "string")
3908                          $util.base64.decode(object.subscriptionId, message.subscriptionId = $util.newBuffer($util.base64.length(object.subscriptionId)), 0);
3909                      else if (object.subscriptionId.length >= 0)
3910                          message.subscriptionId = object.subscriptionId;
3911                  if (object.sets) {
3912                      if (!Array.isArray(object.sets))
3913                          throw TypeError(".market.mass.SubscriptionPushRequest.sets: array expected");
3914                      message.sets = [];
3915                      for (let i = 0; i < object.sets.length; ++i) {
3916                          if (typeof object.sets[i] !== "object")
3917                              throw TypeError(".market.mass.SubscriptionPushRequest.sets: object expected");
3918                          message.sets[i] = $root.market.mass.SubscriptionPushRequest.SequencedPartialPatchSet.fromObject(object.sets[i]);
3919                      }
3920                  }
3921                  return message;
3922              };
3923  
3924              /**
3925               * Creates a plain object from a SubscriptionPushRequest message. Also converts values to other types if specified.
3926               * @function toObject
3927               * @memberof market.mass.SubscriptionPushRequest
3928               * @static
3929               * @param {market.mass.SubscriptionPushRequest} message SubscriptionPushRequest
3930               * @param {$protobuf.IConversionOptions} [options] Conversion options
3931               * @returns {Object.<string,*>} Plain object
3932               */
3933              SubscriptionPushRequest.toObject = function toObject(message, options) {
3934                  if (!options)
3935                      options = {};
3936                  let object = {};
3937                  if (options.arrays || options.defaults)
3938                      object.sets = [];
3939                  if (options.defaults)
3940                      if (options.bytes === String)
3941                          object.subscriptionId = "";
3942                      else {
3943                          object.subscriptionId = [];
3944                          if (options.bytes !== Array)
3945                              object.subscriptionId = $util.newBuffer(object.subscriptionId);
3946                      }
3947                  if (message.subscriptionId != null && message.hasOwnProperty("subscriptionId"))
3948                      object.subscriptionId = options.bytes === String ? $util.base64.encode(message.subscriptionId, 0, message.subscriptionId.length) : options.bytes === Array ? Array.prototype.slice.call(message.subscriptionId) : message.subscriptionId;
3949                  if (message.sets && message.sets.length) {
3950                      object.sets = [];
3951                      for (let j = 0; j < message.sets.length; ++j)
3952                          object.sets[j] = $root.market.mass.SubscriptionPushRequest.SequencedPartialPatchSet.toObject(message.sets[j], options);
3953                  }
3954                  return object;
3955              };
3956  
3957              /**
3958               * Converts this SubscriptionPushRequest to JSON.
3959               * @function toJSON
3960               * @memberof market.mass.SubscriptionPushRequest
3961               * @instance
3962               * @returns {Object.<string,*>} JSON object
3963               */
3964              SubscriptionPushRequest.prototype.toJSON = function toJSON() {
3965                  return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
3966              };
3967  
3968              /**
3969               * Gets the default type url for SubscriptionPushRequest
3970               * @function getTypeUrl
3971               * @memberof market.mass.SubscriptionPushRequest
3972               * @static
3973               * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
3974               * @returns {string} The default type url
3975               */
3976              SubscriptionPushRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
3977                  if (typeUrlPrefix === undefined) {
3978                      typeUrlPrefix = "type.googleapis.com";
3979                  }
3980                  return typeUrlPrefix + "/market.mass.SubscriptionPushRequest";
3981              };
3982  
3983              SubscriptionPushRequest.SequencedPartialPatchSet = (function() {
3984  
3985                  /**
3986                   * Properties of a SequencedPartialPatchSet.
3987                   * @memberof market.mass.SubscriptionPushRequest
3988                   * @interface ISequencedPartialPatchSet
3989                   * @property {number|Long|null} [shopSeqNo] SequencedPartialPatchSet shopSeqNo
3990                   * @property {number|null} [patchLeafIndex] SequencedPartialPatchSet patchLeafIndex
3991                   * @property {Uint8Array|null} [header] SequencedPartialPatchSet header
3992                   * @property {Uint8Array|null} [signature] SequencedPartialPatchSet signature
3993                   * @property {Array.<Uint8Array>|null} [patches] SequencedPartialPatchSet patches
3994                   * @property {Array.<Uint8Array>|null} [proofs] SequencedPartialPatchSet proofs
3995                   */
3996  
3997                  /**
3998                   * Constructs a new SequencedPartialPatchSet.
3999                   * @memberof market.mass.SubscriptionPushRequest
4000                   * @classdesc Represents a SequencedPartialPatchSet.
4001                   * @implements ISequencedPartialPatchSet
4002                   * @constructor
4003                   * @param {market.mass.SubscriptionPushRequest.ISequencedPartialPatchSet=} [properties] Properties to set
4004                   */
4005                  function SequencedPartialPatchSet(properties) {
4006                      this.patches = [];
4007                      this.proofs = [];
4008                      if (properties)
4009                          for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
4010                              if (properties[keys[i]] != null)
4011                                  this[keys[i]] = properties[keys[i]];
4012                  }
4013  
4014                  /**
4015                   * SequencedPartialPatchSet shopSeqNo.
4016                   * @member {number|Long} shopSeqNo
4017                   * @memberof market.mass.SubscriptionPushRequest.SequencedPartialPatchSet
4018                   * @instance
4019                   */
4020                  SequencedPartialPatchSet.prototype.shopSeqNo = $util.Long ? $util.Long.fromBits(0,0,true) : 0;
4021  
4022                  /**
4023                   * SequencedPartialPatchSet patchLeafIndex.
4024                   * @member {number} patchLeafIndex
4025                   * @memberof market.mass.SubscriptionPushRequest.SequencedPartialPatchSet
4026                   * @instance
4027                   */
4028                  SequencedPartialPatchSet.prototype.patchLeafIndex = 0;
4029  
4030                  /**
4031                   * SequencedPartialPatchSet header.
4032                   * @member {Uint8Array} header
4033                   * @memberof market.mass.SubscriptionPushRequest.SequencedPartialPatchSet
4034                   * @instance
4035                   */
4036                  SequencedPartialPatchSet.prototype.header = $util.newBuffer([]);
4037  
4038                  /**
4039                   * SequencedPartialPatchSet signature.
4040                   * @member {Uint8Array} signature
4041                   * @memberof market.mass.SubscriptionPushRequest.SequencedPartialPatchSet
4042                   * @instance
4043                   */
4044                  SequencedPartialPatchSet.prototype.signature = $util.newBuffer([]);
4045  
4046                  /**
4047                   * SequencedPartialPatchSet patches.
4048                   * @member {Array.<Uint8Array>} patches
4049                   * @memberof market.mass.SubscriptionPushRequest.SequencedPartialPatchSet
4050                   * @instance
4051                   */
4052                  SequencedPartialPatchSet.prototype.patches = $util.emptyArray;
4053  
4054                  /**
4055                   * SequencedPartialPatchSet proofs.
4056                   * @member {Array.<Uint8Array>} proofs
4057                   * @memberof market.mass.SubscriptionPushRequest.SequencedPartialPatchSet
4058                   * @instance
4059                   */
4060                  SequencedPartialPatchSet.prototype.proofs = $util.emptyArray;
4061  
4062                  /**
4063                   * Creates a new SequencedPartialPatchSet instance using the specified properties.
4064                   * @function create
4065                   * @memberof market.mass.SubscriptionPushRequest.SequencedPartialPatchSet
4066                   * @static
4067                   * @param {market.mass.SubscriptionPushRequest.ISequencedPartialPatchSet=} [properties] Properties to set
4068                   * @returns {market.mass.SubscriptionPushRequest.SequencedPartialPatchSet} SequencedPartialPatchSet instance
4069                   */
4070                  SequencedPartialPatchSet.create = function create(properties) {
4071                      return new SequencedPartialPatchSet(properties);
4072                  };
4073  
4074                  /**
4075                   * Encodes the specified SequencedPartialPatchSet message. Does not implicitly {@link market.mass.SubscriptionPushRequest.SequencedPartialPatchSet.verify|verify} messages.
4076                   * @function encode
4077                   * @memberof market.mass.SubscriptionPushRequest.SequencedPartialPatchSet
4078                   * @static
4079                   * @param {market.mass.SubscriptionPushRequest.ISequencedPartialPatchSet} message SequencedPartialPatchSet message or plain object to encode
4080                   * @param {$protobuf.Writer} [writer] Writer to encode to
4081                   * @returns {$protobuf.Writer} Writer
4082                   */
4083                  SequencedPartialPatchSet.encode = function encode(message, writer) {
4084                      if (!writer)
4085                          writer = $Writer.create();
4086                      if (message.shopSeqNo != null && Object.hasOwnProperty.call(message, "shopSeqNo"))
4087                          writer.uint32(/* id 1, wireType 0 =*/8).uint64(message.shopSeqNo);
4088                      if (message.patchLeafIndex != null && Object.hasOwnProperty.call(message, "patchLeafIndex"))
4089                          writer.uint32(/* id 2, wireType 0 =*/16).uint32(message.patchLeafIndex);
4090                      if (message.header != null && Object.hasOwnProperty.call(message, "header"))
4091                          writer.uint32(/* id 3, wireType 2 =*/26).bytes(message.header);
4092                      if (message.signature != null && Object.hasOwnProperty.call(message, "signature"))
4093                          writer.uint32(/* id 4, wireType 2 =*/34).bytes(message.signature);
4094                      if (message.patches != null && message.patches.length)
4095                          for (let i = 0; i < message.patches.length; ++i)
4096                              writer.uint32(/* id 5, wireType 2 =*/42).bytes(message.patches[i]);
4097                      if (message.proofs != null && message.proofs.length)
4098                          for (let i = 0; i < message.proofs.length; ++i)
4099                              writer.uint32(/* id 6, wireType 2 =*/50).bytes(message.proofs[i]);
4100                      return writer;
4101                  };
4102  
4103                  /**
4104                   * Encodes the specified SequencedPartialPatchSet message, length delimited. Does not implicitly {@link market.mass.SubscriptionPushRequest.SequencedPartialPatchSet.verify|verify} messages.
4105                   * @function encodeDelimited
4106                   * @memberof market.mass.SubscriptionPushRequest.SequencedPartialPatchSet
4107                   * @static
4108                   * @param {market.mass.SubscriptionPushRequest.ISequencedPartialPatchSet} message SequencedPartialPatchSet message or plain object to encode
4109                   * @param {$protobuf.Writer} [writer] Writer to encode to
4110                   * @returns {$protobuf.Writer} Writer
4111                   */
4112                  SequencedPartialPatchSet.encodeDelimited = function encodeDelimited(message, writer) {
4113                      return this.encode(message, writer).ldelim();
4114                  };
4115  
4116                  /**
4117                   * Decodes a SequencedPartialPatchSet message from the specified reader or buffer.
4118                   * @function decode
4119                   * @memberof market.mass.SubscriptionPushRequest.SequencedPartialPatchSet
4120                   * @static
4121                   * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
4122                   * @param {number} [length] Message length if known beforehand
4123                   * @returns {market.mass.SubscriptionPushRequest.SequencedPartialPatchSet} SequencedPartialPatchSet
4124                   * @throws {Error} If the payload is not a reader or valid buffer
4125                   * @throws {$protobuf.util.ProtocolError} If required fields are missing
4126                   */
4127                  SequencedPartialPatchSet.decode = function decode(reader, length, error) {
4128                      if (!(reader instanceof $Reader))
4129                          reader = $Reader.create(reader);
4130                      let end = length === undefined ? reader.len : reader.pos + length, message = new $root.market.mass.SubscriptionPushRequest.SequencedPartialPatchSet();
4131                      while (reader.pos < end) {
4132                          let tag = reader.uint32();
4133                          if (tag === error)
4134                              break;
4135                          switch (tag >>> 3) {
4136                          case 1: {
4137                                  message.shopSeqNo = reader.uint64();
4138                                  break;
4139                              }
4140                          case 2: {
4141                                  message.patchLeafIndex = reader.uint32();
4142                                  break;
4143                              }
4144                          case 3: {
4145                                  message.header = reader.bytes();
4146                                  break;
4147                              }
4148                          case 4: {
4149                                  message.signature = reader.bytes();
4150                                  break;
4151                              }
4152                          case 5: {
4153                                  if (!(message.patches && message.patches.length))
4154                                      message.patches = [];
4155                                  message.patches.push(reader.bytes());
4156                                  break;
4157                              }
4158                          case 6: {
4159                                  if (!(message.proofs && message.proofs.length))
4160                                      message.proofs = [];
4161                                  message.proofs.push(reader.bytes());
4162                                  break;
4163                              }
4164                          default:
4165                              reader.skipType(tag & 7);
4166                              break;
4167                          }
4168                      }
4169                      return message;
4170                  };
4171  
4172                  /**
4173                   * Decodes a SequencedPartialPatchSet message from the specified reader or buffer, length delimited.
4174                   * @function decodeDelimited
4175                   * @memberof market.mass.SubscriptionPushRequest.SequencedPartialPatchSet
4176                   * @static
4177                   * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
4178                   * @returns {market.mass.SubscriptionPushRequest.SequencedPartialPatchSet} SequencedPartialPatchSet
4179                   * @throws {Error} If the payload is not a reader or valid buffer
4180                   * @throws {$protobuf.util.ProtocolError} If required fields are missing
4181                   */
4182                  SequencedPartialPatchSet.decodeDelimited = function decodeDelimited(reader) {
4183                      if (!(reader instanceof $Reader))
4184                          reader = new $Reader(reader);
4185                      return this.decode(reader, reader.uint32());
4186                  };
4187  
4188                  /**
4189                   * Verifies a SequencedPartialPatchSet message.
4190                   * @function verify
4191                   * @memberof market.mass.SubscriptionPushRequest.SequencedPartialPatchSet
4192                   * @static
4193                   * @param {Object.<string,*>} message Plain object to verify
4194                   * @returns {string|null} `null` if valid, otherwise the reason why it is not
4195                   */
4196                  SequencedPartialPatchSet.verify = function verify(message) {
4197                      if (typeof message !== "object" || message === null)
4198                          return "object expected";
4199                      if (message.shopSeqNo != null && message.hasOwnProperty("shopSeqNo"))
4200                          if (!$util.isInteger(message.shopSeqNo) && !(message.shopSeqNo && $util.isInteger(message.shopSeqNo.low) && $util.isInteger(message.shopSeqNo.high)))
4201                              return "shopSeqNo: integer|Long expected";
4202                      if (message.patchLeafIndex != null && message.hasOwnProperty("patchLeafIndex"))
4203                          if (!$util.isInteger(message.patchLeafIndex))
4204                              return "patchLeafIndex: integer expected";
4205                      if (message.header != null && message.hasOwnProperty("header"))
4206                          if (!(message.header && typeof message.header.length === "number" || $util.isString(message.header)))
4207                              return "header: buffer expected";
4208                      if (message.signature != null && message.hasOwnProperty("signature"))
4209                          if (!(message.signature && typeof message.signature.length === "number" || $util.isString(message.signature)))
4210                              return "signature: buffer expected";
4211                      if (message.patches != null && message.hasOwnProperty("patches")) {
4212                          if (!Array.isArray(message.patches))
4213                              return "patches: array expected";
4214                          for (let i = 0; i < message.patches.length; ++i)
4215                              if (!(message.patches[i] && typeof message.patches[i].length === "number" || $util.isString(message.patches[i])))
4216                                  return "patches: buffer[] expected";
4217                      }
4218                      if (message.proofs != null && message.hasOwnProperty("proofs")) {
4219                          if (!Array.isArray(message.proofs))
4220                              return "proofs: array expected";
4221                          for (let i = 0; i < message.proofs.length; ++i)
4222                              if (!(message.proofs[i] && typeof message.proofs[i].length === "number" || $util.isString(message.proofs[i])))
4223                                  return "proofs: buffer[] expected";
4224                      }
4225                      return null;
4226                  };
4227  
4228                  /**
4229                   * Creates a SequencedPartialPatchSet message from a plain object. Also converts values to their respective internal types.
4230                   * @function fromObject
4231                   * @memberof market.mass.SubscriptionPushRequest.SequencedPartialPatchSet
4232                   * @static
4233                   * @param {Object.<string,*>} object Plain object
4234                   * @returns {market.mass.SubscriptionPushRequest.SequencedPartialPatchSet} SequencedPartialPatchSet
4235                   */
4236                  SequencedPartialPatchSet.fromObject = function fromObject(object) {
4237                      if (object instanceof $root.market.mass.SubscriptionPushRequest.SequencedPartialPatchSet)
4238                          return object;
4239                      let message = new $root.market.mass.SubscriptionPushRequest.SequencedPartialPatchSet();
4240                      if (object.shopSeqNo != null)
4241                          if ($util.Long)
4242                              (message.shopSeqNo = $util.Long.fromValue(object.shopSeqNo)).unsigned = true;
4243                          else if (typeof object.shopSeqNo === "string")
4244                              message.shopSeqNo = parseInt(object.shopSeqNo, 10);
4245                          else if (typeof object.shopSeqNo === "number")
4246                              message.shopSeqNo = object.shopSeqNo;
4247                          else if (typeof object.shopSeqNo === "object")
4248                              message.shopSeqNo = new $util.LongBits(object.shopSeqNo.low >>> 0, object.shopSeqNo.high >>> 0).toNumber(true);
4249                      if (object.patchLeafIndex != null)
4250                          message.patchLeafIndex = object.patchLeafIndex >>> 0;
4251                      if (object.header != null)
4252                          if (typeof object.header === "string")
4253                              $util.base64.decode(object.header, message.header = $util.newBuffer($util.base64.length(object.header)), 0);
4254                          else if (object.header.length >= 0)
4255                              message.header = object.header;
4256                      if (object.signature != null)
4257                          if (typeof object.signature === "string")
4258                              $util.base64.decode(object.signature, message.signature = $util.newBuffer($util.base64.length(object.signature)), 0);
4259                          else if (object.signature.length >= 0)
4260                              message.signature = object.signature;
4261                      if (object.patches) {
4262                          if (!Array.isArray(object.patches))
4263                              throw TypeError(".market.mass.SubscriptionPushRequest.SequencedPartialPatchSet.patches: array expected");
4264                          message.patches = [];
4265                          for (let i = 0; i < object.patches.length; ++i)
4266                              if (typeof object.patches[i] === "string")
4267                                  $util.base64.decode(object.patches[i], message.patches[i] = $util.newBuffer($util.base64.length(object.patches[i])), 0);
4268                              else if (object.patches[i].length >= 0)
4269                                  message.patches[i] = object.patches[i];
4270                      }
4271                      if (object.proofs) {
4272                          if (!Array.isArray(object.proofs))
4273                              throw TypeError(".market.mass.SubscriptionPushRequest.SequencedPartialPatchSet.proofs: array expected");
4274                          message.proofs = [];
4275                          for (let i = 0; i < object.proofs.length; ++i)
4276                              if (typeof object.proofs[i] === "string")
4277                                  $util.base64.decode(object.proofs[i], message.proofs[i] = $util.newBuffer($util.base64.length(object.proofs[i])), 0);
4278                              else if (object.proofs[i].length >= 0)
4279                                  message.proofs[i] = object.proofs[i];
4280                      }
4281                      return message;
4282                  };
4283  
4284                  /**
4285                   * Creates a plain object from a SequencedPartialPatchSet message. Also converts values to other types if specified.
4286                   * @function toObject
4287                   * @memberof market.mass.SubscriptionPushRequest.SequencedPartialPatchSet
4288                   * @static
4289                   * @param {market.mass.SubscriptionPushRequest.SequencedPartialPatchSet} message SequencedPartialPatchSet
4290                   * @param {$protobuf.IConversionOptions} [options] Conversion options
4291                   * @returns {Object.<string,*>} Plain object
4292                   */
4293                  SequencedPartialPatchSet.toObject = function toObject(message, options) {
4294                      if (!options)
4295                          options = {};
4296                      let object = {};
4297                      if (options.arrays || options.defaults) {
4298                          object.patches = [];
4299                          object.proofs = [];
4300                      }
4301                      if (options.defaults) {
4302                          if ($util.Long) {
4303                              let long = new $util.Long(0, 0, true);
4304                              object.shopSeqNo = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
4305                          } else
4306                              object.shopSeqNo = options.longs === String ? "0" : 0;
4307                          object.patchLeafIndex = 0;
4308                          if (options.bytes === String)
4309                              object.header = "";
4310                          else {
4311                              object.header = [];
4312                              if (options.bytes !== Array)
4313                                  object.header = $util.newBuffer(object.header);
4314                          }
4315                          if (options.bytes === String)
4316                              object.signature = "";
4317                          else {
4318                              object.signature = [];
4319                              if (options.bytes !== Array)
4320                                  object.signature = $util.newBuffer(object.signature);
4321                          }
4322                      }
4323                      if (message.shopSeqNo != null && message.hasOwnProperty("shopSeqNo"))
4324                          if (typeof message.shopSeqNo === "number")
4325                              object.shopSeqNo = options.longs === String ? String(message.shopSeqNo) : message.shopSeqNo;
4326                          else
4327                              object.shopSeqNo = options.longs === String ? $util.Long.prototype.toString.call(message.shopSeqNo) : options.longs === Number ? new $util.LongBits(message.shopSeqNo.low >>> 0, message.shopSeqNo.high >>> 0).toNumber(true) : message.shopSeqNo;
4328                      if (message.patchLeafIndex != null && message.hasOwnProperty("patchLeafIndex"))
4329                          object.patchLeafIndex = message.patchLeafIndex;
4330                      if (message.header != null && message.hasOwnProperty("header"))
4331                          object.header = options.bytes === String ? $util.base64.encode(message.header, 0, message.header.length) : options.bytes === Array ? Array.prototype.slice.call(message.header) : message.header;
4332                      if (message.signature != null && message.hasOwnProperty("signature"))
4333                          object.signature = options.bytes === String ? $util.base64.encode(message.signature, 0, message.signature.length) : options.bytes === Array ? Array.prototype.slice.call(message.signature) : message.signature;
4334                      if (message.patches && message.patches.length) {
4335                          object.patches = [];
4336                          for (let j = 0; j < message.patches.length; ++j)
4337                              object.patches[j] = options.bytes === String ? $util.base64.encode(message.patches[j], 0, message.patches[j].length) : options.bytes === Array ? Array.prototype.slice.call(message.patches[j]) : message.patches[j];
4338                      }
4339                      if (message.proofs && message.proofs.length) {
4340                          object.proofs = [];
4341                          for (let j = 0; j < message.proofs.length; ++j)
4342                              object.proofs[j] = options.bytes === String ? $util.base64.encode(message.proofs[j], 0, message.proofs[j].length) : options.bytes === Array ? Array.prototype.slice.call(message.proofs[j]) : message.proofs[j];
4343                      }
4344                      return object;
4345                  };
4346  
4347                  /**
4348                   * Converts this SequencedPartialPatchSet to JSON.
4349                   * @function toJSON
4350                   * @memberof market.mass.SubscriptionPushRequest.SequencedPartialPatchSet
4351                   * @instance
4352                   * @returns {Object.<string,*>} JSON object
4353                   */
4354                  SequencedPartialPatchSet.prototype.toJSON = function toJSON() {
4355                      return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
4356                  };
4357  
4358                  /**
4359                   * Gets the default type url for SequencedPartialPatchSet
4360                   * @function getTypeUrl
4361                   * @memberof market.mass.SubscriptionPushRequest.SequencedPartialPatchSet
4362                   * @static
4363                   * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
4364                   * @returns {string} The default type url
4365                   */
4366                  SequencedPartialPatchSet.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
4367                      if (typeUrlPrefix === undefined) {
4368                          typeUrlPrefix = "type.googleapis.com";
4369                      }
4370                      return typeUrlPrefix + "/market.mass.SubscriptionPushRequest.SequencedPartialPatchSet";
4371                  };
4372  
4373                  return SequencedPartialPatchSet;
4374              })();
4375  
4376              return SubscriptionPushRequest;
4377          })();
4378  
4379          mass.SubscriptionCancelRequest = (function() {
4380  
4381              /**
4382               * Properties of a SubscriptionCancelRequest.
4383               * @memberof market.mass
4384               * @interface ISubscriptionCancelRequest
4385               * @property {Uint8Array|null} [subscriptionId] SubscriptionCancelRequest subscriptionId
4386               */
4387  
4388              /**
4389               * Constructs a new SubscriptionCancelRequest.
4390               * @memberof market.mass
4391               * @classdesc Represents a SubscriptionCancelRequest.
4392               * @implements ISubscriptionCancelRequest
4393               * @constructor
4394               * @param {market.mass.ISubscriptionCancelRequest=} [properties] Properties to set
4395               */
4396              function SubscriptionCancelRequest(properties) {
4397                  if (properties)
4398                      for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
4399                          if (properties[keys[i]] != null)
4400                              this[keys[i]] = properties[keys[i]];
4401              }
4402  
4403              /**
4404               * SubscriptionCancelRequest subscriptionId.
4405               * @member {Uint8Array} subscriptionId
4406               * @memberof market.mass.SubscriptionCancelRequest
4407               * @instance
4408               */
4409              SubscriptionCancelRequest.prototype.subscriptionId = $util.newBuffer([]);
4410  
4411              /**
4412               * Creates a new SubscriptionCancelRequest instance using the specified properties.
4413               * @function create
4414               * @memberof market.mass.SubscriptionCancelRequest
4415               * @static
4416               * @param {market.mass.ISubscriptionCancelRequest=} [properties] Properties to set
4417               * @returns {market.mass.SubscriptionCancelRequest} SubscriptionCancelRequest instance
4418               */
4419              SubscriptionCancelRequest.create = function create(properties) {
4420                  return new SubscriptionCancelRequest(properties);
4421              };
4422  
4423              /**
4424               * Encodes the specified SubscriptionCancelRequest message. Does not implicitly {@link market.mass.SubscriptionCancelRequest.verify|verify} messages.
4425               * @function encode
4426               * @memberof market.mass.SubscriptionCancelRequest
4427               * @static
4428               * @param {market.mass.ISubscriptionCancelRequest} message SubscriptionCancelRequest message or plain object to encode
4429               * @param {$protobuf.Writer} [writer] Writer to encode to
4430               * @returns {$protobuf.Writer} Writer
4431               */
4432              SubscriptionCancelRequest.encode = function encode(message, writer) {
4433                  if (!writer)
4434                      writer = $Writer.create();
4435                  if (message.subscriptionId != null && Object.hasOwnProperty.call(message, "subscriptionId"))
4436                      writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.subscriptionId);
4437                  return writer;
4438              };
4439  
4440              /**
4441               * Encodes the specified SubscriptionCancelRequest message, length delimited. Does not implicitly {@link market.mass.SubscriptionCancelRequest.verify|verify} messages.
4442               * @function encodeDelimited
4443               * @memberof market.mass.SubscriptionCancelRequest
4444               * @static
4445               * @param {market.mass.ISubscriptionCancelRequest} message SubscriptionCancelRequest message or plain object to encode
4446               * @param {$protobuf.Writer} [writer] Writer to encode to
4447               * @returns {$protobuf.Writer} Writer
4448               */
4449              SubscriptionCancelRequest.encodeDelimited = function encodeDelimited(message, writer) {
4450                  return this.encode(message, writer).ldelim();
4451              };
4452  
4453              /**
4454               * Decodes a SubscriptionCancelRequest message from the specified reader or buffer.
4455               * @function decode
4456               * @memberof market.mass.SubscriptionCancelRequest
4457               * @static
4458               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
4459               * @param {number} [length] Message length if known beforehand
4460               * @returns {market.mass.SubscriptionCancelRequest} SubscriptionCancelRequest
4461               * @throws {Error} If the payload is not a reader or valid buffer
4462               * @throws {$protobuf.util.ProtocolError} If required fields are missing
4463               */
4464              SubscriptionCancelRequest.decode = function decode(reader, length, error) {
4465                  if (!(reader instanceof $Reader))
4466                      reader = $Reader.create(reader);
4467                  let end = length === undefined ? reader.len : reader.pos + length, message = new $root.market.mass.SubscriptionCancelRequest();
4468                  while (reader.pos < end) {
4469                      let tag = reader.uint32();
4470                      if (tag === error)
4471                          break;
4472                      switch (tag >>> 3) {
4473                      case 1: {
4474                              message.subscriptionId = reader.bytes();
4475                              break;
4476                          }
4477                      default:
4478                          reader.skipType(tag & 7);
4479                          break;
4480                      }
4481                  }
4482                  return message;
4483              };
4484  
4485              /**
4486               * Decodes a SubscriptionCancelRequest message from the specified reader or buffer, length delimited.
4487               * @function decodeDelimited
4488               * @memberof market.mass.SubscriptionCancelRequest
4489               * @static
4490               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
4491               * @returns {market.mass.SubscriptionCancelRequest} SubscriptionCancelRequest
4492               * @throws {Error} If the payload is not a reader or valid buffer
4493               * @throws {$protobuf.util.ProtocolError} If required fields are missing
4494               */
4495              SubscriptionCancelRequest.decodeDelimited = function decodeDelimited(reader) {
4496                  if (!(reader instanceof $Reader))
4497                      reader = new $Reader(reader);
4498                  return this.decode(reader, reader.uint32());
4499              };
4500  
4501              /**
4502               * Verifies a SubscriptionCancelRequest message.
4503               * @function verify
4504               * @memberof market.mass.SubscriptionCancelRequest
4505               * @static
4506               * @param {Object.<string,*>} message Plain object to verify
4507               * @returns {string|null} `null` if valid, otherwise the reason why it is not
4508               */
4509              SubscriptionCancelRequest.verify = function verify(message) {
4510                  if (typeof message !== "object" || message === null)
4511                      return "object expected";
4512                  if (message.subscriptionId != null && message.hasOwnProperty("subscriptionId"))
4513                      if (!(message.subscriptionId && typeof message.subscriptionId.length === "number" || $util.isString(message.subscriptionId)))
4514                          return "subscriptionId: buffer expected";
4515                  return null;
4516              };
4517  
4518              /**
4519               * Creates a SubscriptionCancelRequest message from a plain object. Also converts values to their respective internal types.
4520               * @function fromObject
4521               * @memberof market.mass.SubscriptionCancelRequest
4522               * @static
4523               * @param {Object.<string,*>} object Plain object
4524               * @returns {market.mass.SubscriptionCancelRequest} SubscriptionCancelRequest
4525               */
4526              SubscriptionCancelRequest.fromObject = function fromObject(object) {
4527                  if (object instanceof $root.market.mass.SubscriptionCancelRequest)
4528                      return object;
4529                  let message = new $root.market.mass.SubscriptionCancelRequest();
4530                  if (object.subscriptionId != null)
4531                      if (typeof object.subscriptionId === "string")
4532                          $util.base64.decode(object.subscriptionId, message.subscriptionId = $util.newBuffer($util.base64.length(object.subscriptionId)), 0);
4533                      else if (object.subscriptionId.length >= 0)
4534                          message.subscriptionId = object.subscriptionId;
4535                  return message;
4536              };
4537  
4538              /**
4539               * Creates a plain object from a SubscriptionCancelRequest message. Also converts values to other types if specified.
4540               * @function toObject
4541               * @memberof market.mass.SubscriptionCancelRequest
4542               * @static
4543               * @param {market.mass.SubscriptionCancelRequest} message SubscriptionCancelRequest
4544               * @param {$protobuf.IConversionOptions} [options] Conversion options
4545               * @returns {Object.<string,*>} Plain object
4546               */
4547              SubscriptionCancelRequest.toObject = function toObject(message, options) {
4548                  if (!options)
4549                      options = {};
4550                  let object = {};
4551                  if (options.defaults)
4552                      if (options.bytes === String)
4553                          object.subscriptionId = "";
4554                      else {
4555                          object.subscriptionId = [];
4556                          if (options.bytes !== Array)
4557                              object.subscriptionId = $util.newBuffer(object.subscriptionId);
4558                      }
4559                  if (message.subscriptionId != null && message.hasOwnProperty("subscriptionId"))
4560                      object.subscriptionId = options.bytes === String ? $util.base64.encode(message.subscriptionId, 0, message.subscriptionId.length) : options.bytes === Array ? Array.prototype.slice.call(message.subscriptionId) : message.subscriptionId;
4561                  return object;
4562              };
4563  
4564              /**
4565               * Converts this SubscriptionCancelRequest to JSON.
4566               * @function toJSON
4567               * @memberof market.mass.SubscriptionCancelRequest
4568               * @instance
4569               * @returns {Object.<string,*>} JSON object
4570               */
4571              SubscriptionCancelRequest.prototype.toJSON = function toJSON() {
4572                  return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
4573              };
4574  
4575              /**
4576               * Gets the default type url for SubscriptionCancelRequest
4577               * @function getTypeUrl
4578               * @memberof market.mass.SubscriptionCancelRequest
4579               * @static
4580               * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
4581               * @returns {string} The default type url
4582               */
4583              SubscriptionCancelRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
4584                  if (typeUrlPrefix === undefined) {
4585                      typeUrlPrefix = "type.googleapis.com";
4586                  }
4587                  return typeUrlPrefix + "/market.mass.SubscriptionCancelRequest";
4588              };
4589  
4590              return SubscriptionCancelRequest;
4591          })();
4592  
4593          mass.PatchSetWriteRequest = (function() {
4594  
4595              /**
4596               * Properties of a PatchSetWriteRequest.
4597               * @memberof market.mass
4598               * @interface IPatchSetWriteRequest
4599               * @property {Uint8Array|null} [patchSet] PatchSetWriteRequest patchSet
4600               */
4601  
4602              /**
4603               * Constructs a new PatchSetWriteRequest.
4604               * @memberof market.mass
4605               * @classdesc Represents a PatchSetWriteRequest.
4606               * @implements IPatchSetWriteRequest
4607               * @constructor
4608               * @param {market.mass.IPatchSetWriteRequest=} [properties] Properties to set
4609               */
4610              function PatchSetWriteRequest(properties) {
4611                  if (properties)
4612                      for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
4613                          if (properties[keys[i]] != null)
4614                              this[keys[i]] = properties[keys[i]];
4615              }
4616  
4617              /**
4618               * PatchSetWriteRequest patchSet.
4619               * @member {Uint8Array} patchSet
4620               * @memberof market.mass.PatchSetWriteRequest
4621               * @instance
4622               */
4623              PatchSetWriteRequest.prototype.patchSet = $util.newBuffer([]);
4624  
4625              /**
4626               * Creates a new PatchSetWriteRequest instance using the specified properties.
4627               * @function create
4628               * @memberof market.mass.PatchSetWriteRequest
4629               * @static
4630               * @param {market.mass.IPatchSetWriteRequest=} [properties] Properties to set
4631               * @returns {market.mass.PatchSetWriteRequest} PatchSetWriteRequest instance
4632               */
4633              PatchSetWriteRequest.create = function create(properties) {
4634                  return new PatchSetWriteRequest(properties);
4635              };
4636  
4637              /**
4638               * Encodes the specified PatchSetWriteRequest message. Does not implicitly {@link market.mass.PatchSetWriteRequest.verify|verify} messages.
4639               * @function encode
4640               * @memberof market.mass.PatchSetWriteRequest
4641               * @static
4642               * @param {market.mass.IPatchSetWriteRequest} message PatchSetWriteRequest message or plain object to encode
4643               * @param {$protobuf.Writer} [writer] Writer to encode to
4644               * @returns {$protobuf.Writer} Writer
4645               */
4646              PatchSetWriteRequest.encode = function encode(message, writer) {
4647                  if (!writer)
4648                      writer = $Writer.create();
4649                  if (message.patchSet != null && Object.hasOwnProperty.call(message, "patchSet"))
4650                      writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.patchSet);
4651                  return writer;
4652              };
4653  
4654              /**
4655               * Encodes the specified PatchSetWriteRequest message, length delimited. Does not implicitly {@link market.mass.PatchSetWriteRequest.verify|verify} messages.
4656               * @function encodeDelimited
4657               * @memberof market.mass.PatchSetWriteRequest
4658               * @static
4659               * @param {market.mass.IPatchSetWriteRequest} message PatchSetWriteRequest message or plain object to encode
4660               * @param {$protobuf.Writer} [writer] Writer to encode to
4661               * @returns {$protobuf.Writer} Writer
4662               */
4663              PatchSetWriteRequest.encodeDelimited = function encodeDelimited(message, writer) {
4664                  return this.encode(message, writer).ldelim();
4665              };
4666  
4667              /**
4668               * Decodes a PatchSetWriteRequest message from the specified reader or buffer.
4669               * @function decode
4670               * @memberof market.mass.PatchSetWriteRequest
4671               * @static
4672               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
4673               * @param {number} [length] Message length if known beforehand
4674               * @returns {market.mass.PatchSetWriteRequest} PatchSetWriteRequest
4675               * @throws {Error} If the payload is not a reader or valid buffer
4676               * @throws {$protobuf.util.ProtocolError} If required fields are missing
4677               */
4678              PatchSetWriteRequest.decode = function decode(reader, length, error) {
4679                  if (!(reader instanceof $Reader))
4680                      reader = $Reader.create(reader);
4681                  let end = length === undefined ? reader.len : reader.pos + length, message = new $root.market.mass.PatchSetWriteRequest();
4682                  while (reader.pos < end) {
4683                      let tag = reader.uint32();
4684                      if (tag === error)
4685                          break;
4686                      switch (tag >>> 3) {
4687                      case 1: {
4688                              message.patchSet = reader.bytes();
4689                              break;
4690                          }
4691                      default:
4692                          reader.skipType(tag & 7);
4693                          break;
4694                      }
4695                  }
4696                  return message;
4697              };
4698  
4699              /**
4700               * Decodes a PatchSetWriteRequest message from the specified reader or buffer, length delimited.
4701               * @function decodeDelimited
4702               * @memberof market.mass.PatchSetWriteRequest
4703               * @static
4704               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
4705               * @returns {market.mass.PatchSetWriteRequest} PatchSetWriteRequest
4706               * @throws {Error} If the payload is not a reader or valid buffer
4707               * @throws {$protobuf.util.ProtocolError} If required fields are missing
4708               */
4709              PatchSetWriteRequest.decodeDelimited = function decodeDelimited(reader) {
4710                  if (!(reader instanceof $Reader))
4711                      reader = new $Reader(reader);
4712                  return this.decode(reader, reader.uint32());
4713              };
4714  
4715              /**
4716               * Verifies a PatchSetWriteRequest message.
4717               * @function verify
4718               * @memberof market.mass.PatchSetWriteRequest
4719               * @static
4720               * @param {Object.<string,*>} message Plain object to verify
4721               * @returns {string|null} `null` if valid, otherwise the reason why it is not
4722               */
4723              PatchSetWriteRequest.verify = function verify(message) {
4724                  if (typeof message !== "object" || message === null)
4725                      return "object expected";
4726                  if (message.patchSet != null && message.hasOwnProperty("patchSet"))
4727                      if (!(message.patchSet && typeof message.patchSet.length === "number" || $util.isString(message.patchSet)))
4728                          return "patchSet: buffer expected";
4729                  return null;
4730              };
4731  
4732              /**
4733               * Creates a PatchSetWriteRequest message from a plain object. Also converts values to their respective internal types.
4734               * @function fromObject
4735               * @memberof market.mass.PatchSetWriteRequest
4736               * @static
4737               * @param {Object.<string,*>} object Plain object
4738               * @returns {market.mass.PatchSetWriteRequest} PatchSetWriteRequest
4739               */
4740              PatchSetWriteRequest.fromObject = function fromObject(object) {
4741                  if (object instanceof $root.market.mass.PatchSetWriteRequest)
4742                      return object;
4743                  let message = new $root.market.mass.PatchSetWriteRequest();
4744                  if (object.patchSet != null)
4745                      if (typeof object.patchSet === "string")
4746                          $util.base64.decode(object.patchSet, message.patchSet = $util.newBuffer($util.base64.length(object.patchSet)), 0);
4747                      else if (object.patchSet.length >= 0)
4748                          message.patchSet = object.patchSet;
4749                  return message;
4750              };
4751  
4752              /**
4753               * Creates a plain object from a PatchSetWriteRequest message. Also converts values to other types if specified.
4754               * @function toObject
4755               * @memberof market.mass.PatchSetWriteRequest
4756               * @static
4757               * @param {market.mass.PatchSetWriteRequest} message PatchSetWriteRequest
4758               * @param {$protobuf.IConversionOptions} [options] Conversion options
4759               * @returns {Object.<string,*>} Plain object
4760               */
4761              PatchSetWriteRequest.toObject = function toObject(message, options) {
4762                  if (!options)
4763                      options = {};
4764                  let object = {};
4765                  if (options.defaults)
4766                      if (options.bytes === String)
4767                          object.patchSet = "";
4768                      else {
4769                          object.patchSet = [];
4770                          if (options.bytes !== Array)
4771                              object.patchSet = $util.newBuffer(object.patchSet);
4772                      }
4773                  if (message.patchSet != null && message.hasOwnProperty("patchSet"))
4774                      object.patchSet = options.bytes === String ? $util.base64.encode(message.patchSet, 0, message.patchSet.length) : options.bytes === Array ? Array.prototype.slice.call(message.patchSet) : message.patchSet;
4775                  return object;
4776              };
4777  
4778              /**
4779               * Converts this PatchSetWriteRequest to JSON.
4780               * @function toJSON
4781               * @memberof market.mass.PatchSetWriteRequest
4782               * @instance
4783               * @returns {Object.<string,*>} JSON object
4784               */
4785              PatchSetWriteRequest.prototype.toJSON = function toJSON() {
4786                  return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
4787              };
4788  
4789              /**
4790               * Gets the default type url for PatchSetWriteRequest
4791               * @function getTypeUrl
4792               * @memberof market.mass.PatchSetWriteRequest
4793               * @static
4794               * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
4795               * @returns {string} The default type url
4796               */
4797              PatchSetWriteRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
4798                  if (typeUrlPrefix === undefined) {
4799                      typeUrlPrefix = "type.googleapis.com";
4800                  }
4801                  return typeUrlPrefix + "/market.mass.PatchSetWriteRequest";
4802              };
4803  
4804              return PatchSetWriteRequest;
4805          })();
4806  
4807          mass.SyncStatusRequest = (function() {
4808  
4809              /**
4810               * Properties of a SyncStatusRequest.
4811               * @memberof market.mass
4812               * @interface ISyncStatusRequest
4813               * @property {number|Long|null} [subscriptionId] SyncStatusRequest subscriptionId
4814               * @property {number|Long|null} [unpushedPatches] SyncStatusRequest unpushedPatches
4815               */
4816  
4817              /**
4818               * Constructs a new SyncStatusRequest.
4819               * @memberof market.mass
4820               * @classdesc Represents a SyncStatusRequest.
4821               * @implements ISyncStatusRequest
4822               * @constructor
4823               * @param {market.mass.ISyncStatusRequest=} [properties] Properties to set
4824               */
4825              function SyncStatusRequest(properties) {
4826                  if (properties)
4827                      for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
4828                          if (properties[keys[i]] != null)
4829                              this[keys[i]] = properties[keys[i]];
4830              }
4831  
4832              /**
4833               * SyncStatusRequest subscriptionId.
4834               * @member {number|Long} subscriptionId
4835               * @memberof market.mass.SyncStatusRequest
4836               * @instance
4837               */
4838              SyncStatusRequest.prototype.subscriptionId = $util.Long ? $util.Long.fromBits(0,0,true) : 0;
4839  
4840              /**
4841               * SyncStatusRequest unpushedPatches.
4842               * @member {number|Long} unpushedPatches
4843               * @memberof market.mass.SyncStatusRequest
4844               * @instance
4845               */
4846              SyncStatusRequest.prototype.unpushedPatches = $util.Long ? $util.Long.fromBits(0,0,true) : 0;
4847  
4848              /**
4849               * Creates a new SyncStatusRequest instance using the specified properties.
4850               * @function create
4851               * @memberof market.mass.SyncStatusRequest
4852               * @static
4853               * @param {market.mass.ISyncStatusRequest=} [properties] Properties to set
4854               * @returns {market.mass.SyncStatusRequest} SyncStatusRequest instance
4855               */
4856              SyncStatusRequest.create = function create(properties) {
4857                  return new SyncStatusRequest(properties);
4858              };
4859  
4860              /**
4861               * Encodes the specified SyncStatusRequest message. Does not implicitly {@link market.mass.SyncStatusRequest.verify|verify} messages.
4862               * @function encode
4863               * @memberof market.mass.SyncStatusRequest
4864               * @static
4865               * @param {market.mass.ISyncStatusRequest} message SyncStatusRequest message or plain object to encode
4866               * @param {$protobuf.Writer} [writer] Writer to encode to
4867               * @returns {$protobuf.Writer} Writer
4868               */
4869              SyncStatusRequest.encode = function encode(message, writer) {
4870                  if (!writer)
4871                      writer = $Writer.create();
4872                  if (message.subscriptionId != null && Object.hasOwnProperty.call(message, "subscriptionId"))
4873                      writer.uint32(/* id 1, wireType 0 =*/8).uint64(message.subscriptionId);
4874                  if (message.unpushedPatches != null && Object.hasOwnProperty.call(message, "unpushedPatches"))
4875                      writer.uint32(/* id 2, wireType 0 =*/16).uint64(message.unpushedPatches);
4876                  return writer;
4877              };
4878  
4879              /**
4880               * Encodes the specified SyncStatusRequest message, length delimited. Does not implicitly {@link market.mass.SyncStatusRequest.verify|verify} messages.
4881               * @function encodeDelimited
4882               * @memberof market.mass.SyncStatusRequest
4883               * @static
4884               * @param {market.mass.ISyncStatusRequest} message SyncStatusRequest message or plain object to encode
4885               * @param {$protobuf.Writer} [writer] Writer to encode to
4886               * @returns {$protobuf.Writer} Writer
4887               */
4888              SyncStatusRequest.encodeDelimited = function encodeDelimited(message, writer) {
4889                  return this.encode(message, writer).ldelim();
4890              };
4891  
4892              /**
4893               * Decodes a SyncStatusRequest message from the specified reader or buffer.
4894               * @function decode
4895               * @memberof market.mass.SyncStatusRequest
4896               * @static
4897               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
4898               * @param {number} [length] Message length if known beforehand
4899               * @returns {market.mass.SyncStatusRequest} SyncStatusRequest
4900               * @throws {Error} If the payload is not a reader or valid buffer
4901               * @throws {$protobuf.util.ProtocolError} If required fields are missing
4902               */
4903              SyncStatusRequest.decode = function decode(reader, length, error) {
4904                  if (!(reader instanceof $Reader))
4905                      reader = $Reader.create(reader);
4906                  let end = length === undefined ? reader.len : reader.pos + length, message = new $root.market.mass.SyncStatusRequest();
4907                  while (reader.pos < end) {
4908                      let tag = reader.uint32();
4909                      if (tag === error)
4910                          break;
4911                      switch (tag >>> 3) {
4912                      case 1: {
4913                              message.subscriptionId = reader.uint64();
4914                              break;
4915                          }
4916                      case 2: {
4917                              message.unpushedPatches = reader.uint64();
4918                              break;
4919                          }
4920                      default:
4921                          reader.skipType(tag & 7);
4922                          break;
4923                      }
4924                  }
4925                  return message;
4926              };
4927  
4928              /**
4929               * Decodes a SyncStatusRequest message from the specified reader or buffer, length delimited.
4930               * @function decodeDelimited
4931               * @memberof market.mass.SyncStatusRequest
4932               * @static
4933               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
4934               * @returns {market.mass.SyncStatusRequest} SyncStatusRequest
4935               * @throws {Error} If the payload is not a reader or valid buffer
4936               * @throws {$protobuf.util.ProtocolError} If required fields are missing
4937               */
4938              SyncStatusRequest.decodeDelimited = function decodeDelimited(reader) {
4939                  if (!(reader instanceof $Reader))
4940                      reader = new $Reader(reader);
4941                  return this.decode(reader, reader.uint32());
4942              };
4943  
4944              /**
4945               * Verifies a SyncStatusRequest message.
4946               * @function verify
4947               * @memberof market.mass.SyncStatusRequest
4948               * @static
4949               * @param {Object.<string,*>} message Plain object to verify
4950               * @returns {string|null} `null` if valid, otherwise the reason why it is not
4951               */
4952              SyncStatusRequest.verify = function verify(message) {
4953                  if (typeof message !== "object" || message === null)
4954                      return "object expected";
4955                  if (message.subscriptionId != null && message.hasOwnProperty("subscriptionId"))
4956                      if (!$util.isInteger(message.subscriptionId) && !(message.subscriptionId && $util.isInteger(message.subscriptionId.low) && $util.isInteger(message.subscriptionId.high)))
4957                          return "subscriptionId: integer|Long expected";
4958                  if (message.unpushedPatches != null && message.hasOwnProperty("unpushedPatches"))
4959                      if (!$util.isInteger(message.unpushedPatches) && !(message.unpushedPatches && $util.isInteger(message.unpushedPatches.low) && $util.isInteger(message.unpushedPatches.high)))
4960                          return "unpushedPatches: integer|Long expected";
4961                  return null;
4962              };
4963  
4964              /**
4965               * Creates a SyncStatusRequest message from a plain object. Also converts values to their respective internal types.
4966               * @function fromObject
4967               * @memberof market.mass.SyncStatusRequest
4968               * @static
4969               * @param {Object.<string,*>} object Plain object
4970               * @returns {market.mass.SyncStatusRequest} SyncStatusRequest
4971               */
4972              SyncStatusRequest.fromObject = function fromObject(object) {
4973                  if (object instanceof $root.market.mass.SyncStatusRequest)
4974                      return object;
4975                  let message = new $root.market.mass.SyncStatusRequest();
4976                  if (object.subscriptionId != null)
4977                      if ($util.Long)
4978                          (message.subscriptionId = $util.Long.fromValue(object.subscriptionId)).unsigned = true;
4979                      else if (typeof object.subscriptionId === "string")
4980                          message.subscriptionId = parseInt(object.subscriptionId, 10);
4981                      else if (typeof object.subscriptionId === "number")
4982                          message.subscriptionId = object.subscriptionId;
4983                      else if (typeof object.subscriptionId === "object")
4984                          message.subscriptionId = new $util.LongBits(object.subscriptionId.low >>> 0, object.subscriptionId.high >>> 0).toNumber(true);
4985                  if (object.unpushedPatches != null)
4986                      if ($util.Long)
4987                          (message.unpushedPatches = $util.Long.fromValue(object.unpushedPatches)).unsigned = true;
4988                      else if (typeof object.unpushedPatches === "string")
4989                          message.unpushedPatches = parseInt(object.unpushedPatches, 10);
4990                      else if (typeof object.unpushedPatches === "number")
4991                          message.unpushedPatches = object.unpushedPatches;
4992                      else if (typeof object.unpushedPatches === "object")
4993                          message.unpushedPatches = new $util.LongBits(object.unpushedPatches.low >>> 0, object.unpushedPatches.high >>> 0).toNumber(true);
4994                  return message;
4995              };
4996  
4997              /**
4998               * Creates a plain object from a SyncStatusRequest message. Also converts values to other types if specified.
4999               * @function toObject
5000               * @memberof market.mass.SyncStatusRequest
5001               * @static
5002               * @param {market.mass.SyncStatusRequest} message SyncStatusRequest
5003               * @param {$protobuf.IConversionOptions} [options] Conversion options
5004               * @returns {Object.<string,*>} Plain object
5005               */
5006              SyncStatusRequest.toObject = function toObject(message, options) {
5007                  if (!options)
5008                      options = {};
5009                  let object = {};
5010                  if (options.defaults) {
5011                      if ($util.Long) {
5012                          let long = new $util.Long(0, 0, true);
5013                          object.subscriptionId = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
5014                      } else
5015                          object.subscriptionId = options.longs === String ? "0" : 0;
5016                      if ($util.Long) {
5017                          let long = new $util.Long(0, 0, true);
5018                          object.unpushedPatches = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
5019                      } else
5020                          object.unpushedPatches = options.longs === String ? "0" : 0;
5021                  }
5022                  if (message.subscriptionId != null && message.hasOwnProperty("subscriptionId"))
5023                      if (typeof message.subscriptionId === "number")
5024                          object.subscriptionId = options.longs === String ? String(message.subscriptionId) : message.subscriptionId;
5025                      else
5026                          object.subscriptionId = options.longs === String ? $util.Long.prototype.toString.call(message.subscriptionId) : options.longs === Number ? new $util.LongBits(message.subscriptionId.low >>> 0, message.subscriptionId.high >>> 0).toNumber(true) : message.subscriptionId;
5027                  if (message.unpushedPatches != null && message.hasOwnProperty("unpushedPatches"))
5028                      if (typeof message.unpushedPatches === "number")
5029                          object.unpushedPatches = options.longs === String ? String(message.unpushedPatches) : message.unpushedPatches;
5030                      else
5031                          object.unpushedPatches = options.longs === String ? $util.Long.prototype.toString.call(message.unpushedPatches) : options.longs === Number ? new $util.LongBits(message.unpushedPatches.low >>> 0, message.unpushedPatches.high >>> 0).toNumber(true) : message.unpushedPatches;
5032                  return object;
5033              };
5034  
5035              /**
5036               * Converts this SyncStatusRequest to JSON.
5037               * @function toJSON
5038               * @memberof market.mass.SyncStatusRequest
5039               * @instance
5040               * @returns {Object.<string,*>} JSON object
5041               */
5042              SyncStatusRequest.prototype.toJSON = function toJSON() {
5043                  return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
5044              };
5045  
5046              /**
5047               * Gets the default type url for SyncStatusRequest
5048               * @function getTypeUrl
5049               * @memberof market.mass.SyncStatusRequest
5050               * @static
5051               * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
5052               * @returns {string} The default type url
5053               */
5054              SyncStatusRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
5055                  if (typeUrlPrefix === undefined) {
5056                      typeUrlPrefix = "type.googleapis.com";
5057                  }
5058                  return typeUrlPrefix + "/market.mass.SyncStatusRequest";
5059              };
5060  
5061              return SyncStatusRequest;
5062          })();
5063  
5064          mass.PingRequest = (function() {
5065  
5066              /**
5067               * Properties of a PingRequest.
5068               * @memberof market.mass
5069               * @interface IPingRequest
5070               */
5071  
5072              /**
5073               * Constructs a new PingRequest.
5074               * @memberof market.mass
5075               * @classdesc Represents a PingRequest.
5076               * @implements IPingRequest
5077               * @constructor
5078               * @param {market.mass.IPingRequest=} [properties] Properties to set
5079               */
5080              function PingRequest(properties) {
5081                  if (properties)
5082                      for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
5083                          if (properties[keys[i]] != null)
5084                              this[keys[i]] = properties[keys[i]];
5085              }
5086  
5087              /**
5088               * Creates a new PingRequest instance using the specified properties.
5089               * @function create
5090               * @memberof market.mass.PingRequest
5091               * @static
5092               * @param {market.mass.IPingRequest=} [properties] Properties to set
5093               * @returns {market.mass.PingRequest} PingRequest instance
5094               */
5095              PingRequest.create = function create(properties) {
5096                  return new PingRequest(properties);
5097              };
5098  
5099              /**
5100               * Encodes the specified PingRequest message. Does not implicitly {@link market.mass.PingRequest.verify|verify} messages.
5101               * @function encode
5102               * @memberof market.mass.PingRequest
5103               * @static
5104               * @param {market.mass.IPingRequest} message PingRequest message or plain object to encode
5105               * @param {$protobuf.Writer} [writer] Writer to encode to
5106               * @returns {$protobuf.Writer} Writer
5107               */
5108              PingRequest.encode = function encode(message, writer) {
5109                  if (!writer)
5110                      writer = $Writer.create();
5111                  return writer;
5112              };
5113  
5114              /**
5115               * Encodes the specified PingRequest message, length delimited. Does not implicitly {@link market.mass.PingRequest.verify|verify} messages.
5116               * @function encodeDelimited
5117               * @memberof market.mass.PingRequest
5118               * @static
5119               * @param {market.mass.IPingRequest} message PingRequest message or plain object to encode
5120               * @param {$protobuf.Writer} [writer] Writer to encode to
5121               * @returns {$protobuf.Writer} Writer
5122               */
5123              PingRequest.encodeDelimited = function encodeDelimited(message, writer) {
5124                  return this.encode(message, writer).ldelim();
5125              };
5126  
5127              /**
5128               * Decodes a PingRequest message from the specified reader or buffer.
5129               * @function decode
5130               * @memberof market.mass.PingRequest
5131               * @static
5132               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
5133               * @param {number} [length] Message length if known beforehand
5134               * @returns {market.mass.PingRequest} PingRequest
5135               * @throws {Error} If the payload is not a reader or valid buffer
5136               * @throws {$protobuf.util.ProtocolError} If required fields are missing
5137               */
5138              PingRequest.decode = function decode(reader, length, error) {
5139                  if (!(reader instanceof $Reader))
5140                      reader = $Reader.create(reader);
5141                  let end = length === undefined ? reader.len : reader.pos + length, message = new $root.market.mass.PingRequest();
5142                  while (reader.pos < end) {
5143                      let tag = reader.uint32();
5144                      if (tag === error)
5145                          break;
5146                      switch (tag >>> 3) {
5147                      default:
5148                          reader.skipType(tag & 7);
5149                          break;
5150                      }
5151                  }
5152                  return message;
5153              };
5154  
5155              /**
5156               * Decodes a PingRequest message from the specified reader or buffer, length delimited.
5157               * @function decodeDelimited
5158               * @memberof market.mass.PingRequest
5159               * @static
5160               * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
5161               * @returns {market.mass.PingRequest} PingRequest
5162               * @throws {Error} If the payload is not a reader or valid buffer
5163               * @throws {$protobuf.util.ProtocolError} If required fields are missing
5164               */
5165              PingRequest.decodeDelimited = function decodeDelimited(reader) {
5166                  if (!(reader instanceof $Reader))
5167                      reader = new $Reader(reader);
5168                  return this.decode(reader, reader.uint32());
5169              };
5170  
5171              /**
5172               * Verifies a PingRequest message.
5173               * @function verify
5174               * @memberof market.mass.PingRequest
5175               * @static
5176               * @param {Object.<string,*>} message Plain object to verify
5177               * @returns {string|null} `null` if valid, otherwise the reason why it is not
5178               */
5179              PingRequest.verify = function verify(message) {
5180                  if (typeof message !== "object" || message === null)
5181                      return "object expected";
5182                  return null;
5183              };
5184  
5185              /**
5186               * Creates a PingRequest message from a plain object. Also converts values to their respective internal types.
5187               * @function fromObject
5188               * @memberof market.mass.PingRequest
5189               * @static
5190               * @param {Object.<string,*>} object Plain object
5191               * @returns {market.mass.PingRequest} PingRequest
5192               */
5193              PingRequest.fromObject = function fromObject(object) {
5194                  if (object instanceof $root.market.mass.PingRequest)
5195                      return object;
5196                  return new $root.market.mass.PingRequest();
5197              };
5198  
5199              /**
5200               * Creates a plain object from a PingRequest message. Also converts values to other types if specified.
5201               * @function toObject
5202               * @memberof market.mass.PingRequest
5203               * @static
5204               * @param {market.mass.PingRequest} message PingRequest
5205               * @param {$protobuf.IConversionOptions} [options] Conversion options
5206               * @returns {Object.<string,*>} Plain object
5207               */
5208              PingRequest.toObject = function toObject() {
5209                  return {};
5210              };
5211  
5212              /**
5213               * Converts this PingRequest to JSON.
5214               * @function toJSON
5215               * @memberof market.mass.PingRequest
5216               * @instance
5217               * @returns {Object.<string,*>} JSON object
5218               */
5219              PingRequest.prototype.toJSON = function toJSON() {
5220                  return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
5221              };
5222  
5223              /**
5224               * Gets the default type url for PingRequest
5225               * @function getTypeUrl
5226               * @memberof market.mass.PingRequest
5227               * @static
5228               * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
5229               * @returns {string} The default type url
5230               */
5231              PingRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
5232                  if (typeUrlPrefix === undefined) {
5233                      typeUrlPrefix = "type.googleapis.com";
5234                  }
5235                  return typeUrlPrefix + "/market.mass.PingRequest";
5236              };
5237  
5238              return PingRequest;
5239          })();
5240  
5241          return mass;
5242      })();
5243  
5244      return market;
5245  })();
5246  
5247  export { $root as default };