// source: commands/commands.proto
/**
 * @fileoverview
 * @enhanceable
 * @suppress {messageConventions} JS Compiler reports an error if a variable or
 *     field starts with 'MSG_' and isn't a translatable message.
 * @public
 */
// GENERATED CODE -- DO NOT EDIT!
/* eslint-disable */
// @ts-nocheck

var jspb = require('google-protobuf');
var goog = jspb;
var global = Function('return this')();

var commands_common_pb = require('../commands/common_pb.js');
goog.object.extend(proto, commands_common_pb);
var commands_board_pb = require('../commands/board_pb.js');
goog.object.extend(proto, commands_board_pb);
var commands_compile_pb = require('../commands/compile_pb.js');
goog.object.extend(proto, commands_compile_pb);
var commands_core_pb = require('../commands/core_pb.js');
goog.object.extend(proto, commands_core_pb);
var commands_upload_pb = require('../commands/upload_pb.js');
goog.object.extend(proto, commands_upload_pb);
var commands_lib_pb = require('../commands/lib_pb.js');
goog.object.extend(proto, commands_lib_pb);
goog.exportSymbol('proto.cc.arduino.cli.commands.ArchiveSketchReq', null, global);
goog.exportSymbol('proto.cc.arduino.cli.commands.ArchiveSketchResp', null, global);
goog.exportSymbol('proto.cc.arduino.cli.commands.DestroyReq', null, global);
goog.exportSymbol('proto.cc.arduino.cli.commands.DestroyResp', null, global);
goog.exportSymbol('proto.cc.arduino.cli.commands.InitReq', null, global);
goog.exportSymbol('proto.cc.arduino.cli.commands.InitResp', null, global);
goog.exportSymbol('proto.cc.arduino.cli.commands.LoadSketchReq', null, global);
goog.exportSymbol('proto.cc.arduino.cli.commands.LoadSketchResp', null, global);
goog.exportSymbol('proto.cc.arduino.cli.commands.OutdatedReq', null, global);
goog.exportSymbol('proto.cc.arduino.cli.commands.OutdatedResp', null, global);
goog.exportSymbol('proto.cc.arduino.cli.commands.RescanReq', null, global);
goog.exportSymbol('proto.cc.arduino.cli.commands.RescanResp', null, global);
goog.exportSymbol('proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexReq', null, global);
goog.exportSymbol('proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexResp', null, global);
goog.exportSymbol('proto.cc.arduino.cli.commands.UpdateIndexReq', null, global);
goog.exportSymbol('proto.cc.arduino.cli.commands.UpdateIndexResp', null, global);
goog.exportSymbol('proto.cc.arduino.cli.commands.UpdateLibrariesIndexReq', null, global);
goog.exportSymbol('proto.cc.arduino.cli.commands.UpdateLibrariesIndexResp', null, global);
goog.exportSymbol('proto.cc.arduino.cli.commands.UpgradeReq', null, global);
goog.exportSymbol('proto.cc.arduino.cli.commands.UpgradeResp', null, global);
goog.exportSymbol('proto.cc.arduino.cli.commands.VersionReq', null, global);
goog.exportSymbol('proto.cc.arduino.cli.commands.VersionResp', null, global);
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.cc.arduino.cli.commands.InitReq = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.cc.arduino.cli.commands.InitReq, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.cc.arduino.cli.commands.InitReq.displayName = 'proto.cc.arduino.cli.commands.InitReq';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.cc.arduino.cli.commands.InitResp = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, proto.cc.arduino.cli.commands.InitResp.repeatedFields_, null);
};
goog.inherits(proto.cc.arduino.cli.commands.InitResp, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.cc.arduino.cli.commands.InitResp.displayName = 'proto.cc.arduino.cli.commands.InitResp';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.cc.arduino.cli.commands.DestroyReq = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.cc.arduino.cli.commands.DestroyReq, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.cc.arduino.cli.commands.DestroyReq.displayName = 'proto.cc.arduino.cli.commands.DestroyReq';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.cc.arduino.cli.commands.DestroyResp = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.cc.arduino.cli.commands.DestroyResp, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.cc.arduino.cli.commands.DestroyResp.displayName = 'proto.cc.arduino.cli.commands.DestroyResp';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.cc.arduino.cli.commands.RescanReq = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.cc.arduino.cli.commands.RescanReq, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.cc.arduino.cli.commands.RescanReq.displayName = 'proto.cc.arduino.cli.commands.RescanReq';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.cc.arduino.cli.commands.RescanResp = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, proto.cc.arduino.cli.commands.RescanResp.repeatedFields_, null);
};
goog.inherits(proto.cc.arduino.cli.commands.RescanResp, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.cc.arduino.cli.commands.RescanResp.displayName = 'proto.cc.arduino.cli.commands.RescanResp';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.cc.arduino.cli.commands.UpdateIndexReq = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.cc.arduino.cli.commands.UpdateIndexReq, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.cc.arduino.cli.commands.UpdateIndexReq.displayName = 'proto.cc.arduino.cli.commands.UpdateIndexReq';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.cc.arduino.cli.commands.UpdateIndexResp = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.cc.arduino.cli.commands.UpdateIndexResp, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.cc.arduino.cli.commands.UpdateIndexResp.displayName = 'proto.cc.arduino.cli.commands.UpdateIndexResp';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.cc.arduino.cli.commands.UpdateLibrariesIndexReq = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.cc.arduino.cli.commands.UpdateLibrariesIndexReq, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.cc.arduino.cli.commands.UpdateLibrariesIndexReq.displayName = 'proto.cc.arduino.cli.commands.UpdateLibrariesIndexReq';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.cc.arduino.cli.commands.UpdateLibrariesIndexResp = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.cc.arduino.cli.commands.UpdateLibrariesIndexResp, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.cc.arduino.cli.commands.UpdateLibrariesIndexResp.displayName = 'proto.cc.arduino.cli.commands.UpdateLibrariesIndexResp';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexReq = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexReq, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexReq.displayName = 'proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexReq';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexResp = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexResp, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexResp.displayName = 'proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexResp';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.cc.arduino.cli.commands.OutdatedReq = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.cc.arduino.cli.commands.OutdatedReq, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.cc.arduino.cli.commands.OutdatedReq.displayName = 'proto.cc.arduino.cli.commands.OutdatedReq';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.cc.arduino.cli.commands.OutdatedResp = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, proto.cc.arduino.cli.commands.OutdatedResp.repeatedFields_, null);
};
goog.inherits(proto.cc.arduino.cli.commands.OutdatedResp, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.cc.arduino.cli.commands.OutdatedResp.displayName = 'proto.cc.arduino.cli.commands.OutdatedResp';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.cc.arduino.cli.commands.UpgradeReq = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.cc.arduino.cli.commands.UpgradeReq, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.cc.arduino.cli.commands.UpgradeReq.displayName = 'proto.cc.arduino.cli.commands.UpgradeReq';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.cc.arduino.cli.commands.UpgradeResp = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.cc.arduino.cli.commands.UpgradeResp, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.cc.arduino.cli.commands.UpgradeResp.displayName = 'proto.cc.arduino.cli.commands.UpgradeResp';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.cc.arduino.cli.commands.VersionReq = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.cc.arduino.cli.commands.VersionReq, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.cc.arduino.cli.commands.VersionReq.displayName = 'proto.cc.arduino.cli.commands.VersionReq';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.cc.arduino.cli.commands.VersionResp = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.cc.arduino.cli.commands.VersionResp, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.cc.arduino.cli.commands.VersionResp.displayName = 'proto.cc.arduino.cli.commands.VersionResp';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.cc.arduino.cli.commands.LoadSketchReq = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.cc.arduino.cli.commands.LoadSketchReq, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.cc.arduino.cli.commands.LoadSketchReq.displayName = 'proto.cc.arduino.cli.commands.LoadSketchReq';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.cc.arduino.cli.commands.LoadSketchResp = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, proto.cc.arduino.cli.commands.LoadSketchResp.repeatedFields_, null);
};
goog.inherits(proto.cc.arduino.cli.commands.LoadSketchResp, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.cc.arduino.cli.commands.LoadSketchResp.displayName = 'proto.cc.arduino.cli.commands.LoadSketchResp';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.cc.arduino.cli.commands.ArchiveSketchReq = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.cc.arduino.cli.commands.ArchiveSketchReq, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.cc.arduino.cli.commands.ArchiveSketchReq.displayName = 'proto.cc.arduino.cli.commands.ArchiveSketchReq';
}
/**
 * Generated by JsPbCodeGenerator.
 * @param {Array=} opt_data Optional initial data array, typically from a
 * server response, or constructed directly in Javascript. The array is used
 * in place and becomes part of the constructed object. It is not cloned.
 * If no data is provided, the constructed object will be empty, but still
 * valid.
 * @extends {jspb.Message}
 * @constructor
 */
proto.cc.arduino.cli.commands.ArchiveSketchResp = function(opt_data) {
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.cc.arduino.cli.commands.ArchiveSketchResp, jspb.Message);
if (goog.DEBUG && !COMPILED) {
  /**
   * @public
   * @override
   */
  proto.cc.arduino.cli.commands.ArchiveSketchResp.displayName = 'proto.cc.arduino.cli.commands.ArchiveSketchResp';
}



if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.cc.arduino.cli.commands.InitReq.prototype.toObject = function(opt_includeInstance) {
  return proto.cc.arduino.cli.commands.InitReq.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.cc.arduino.cli.commands.InitReq} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.InitReq.toObject = function(includeInstance, msg) {
  var f, obj = {
    libraryManagerOnly: jspb.Message.getBooleanFieldWithDefault(msg, 2, false)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.cc.arduino.cli.commands.InitReq}
 */
proto.cc.arduino.cli.commands.InitReq.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.cc.arduino.cli.commands.InitReq;
  return proto.cc.arduino.cli.commands.InitReq.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.cc.arduino.cli.commands.InitReq} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.cc.arduino.cli.commands.InitReq}
 */
proto.cc.arduino.cli.commands.InitReq.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 2:
      var value = /** @type {boolean} */ (reader.readBool());
      msg.setLibraryManagerOnly(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.cc.arduino.cli.commands.InitReq.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.cc.arduino.cli.commands.InitReq.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.cc.arduino.cli.commands.InitReq} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.InitReq.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getLibraryManagerOnly();
  if (f) {
    writer.writeBool(
      2,
      f
    );
  }
};


/**
 * optional bool library_manager_only = 2;
 * @return {boolean}
 */
proto.cc.arduino.cli.commands.InitReq.prototype.getLibraryManagerOnly = function() {
  return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 2, false));
};


/**
 * @param {boolean} value
 * @return {!proto.cc.arduino.cli.commands.InitReq} returns this
 */
proto.cc.arduino.cli.commands.InitReq.prototype.setLibraryManagerOnly = function(value) {
  return jspb.Message.setProto3BooleanField(this, 2, value);
};



/**
 * List of repeated fields within this message type.
 * @private {!Array<number>}
 * @const
 */
proto.cc.arduino.cli.commands.InitResp.repeatedFields_ = [2];



if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.cc.arduino.cli.commands.InitResp.prototype.toObject = function(opt_includeInstance) {
  return proto.cc.arduino.cli.commands.InitResp.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.cc.arduino.cli.commands.InitResp} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.InitResp.toObject = function(includeInstance, msg) {
  var f, obj = {
    instance: (f = msg.getInstance()) && commands_common_pb.Instance.toObject(includeInstance, f),
    platformsIndexErrorsList: (f = jspb.Message.getRepeatedField(msg, 2)) == null ? undefined : f,
    librariesIndexError: jspb.Message.getFieldWithDefault(msg, 3, ""),
    downloadProgress: (f = msg.getDownloadProgress()) && commands_common_pb.DownloadProgress.toObject(includeInstance, f),
    taskProgress: (f = msg.getTaskProgress()) && commands_common_pb.TaskProgress.toObject(includeInstance, f)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.cc.arduino.cli.commands.InitResp}
 */
proto.cc.arduino.cli.commands.InitResp.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.cc.arduino.cli.commands.InitResp;
  return proto.cc.arduino.cli.commands.InitResp.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.cc.arduino.cli.commands.InitResp} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.cc.arduino.cli.commands.InitResp}
 */
proto.cc.arduino.cli.commands.InitResp.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new commands_common_pb.Instance;
      reader.readMessage(value,commands_common_pb.Instance.deserializeBinaryFromReader);
      msg.setInstance(value);
      break;
    case 2:
      var value = /** @type {string} */ (reader.readString());
      msg.addPlatformsIndexErrors(value);
      break;
    case 3:
      var value = /** @type {string} */ (reader.readString());
      msg.setLibrariesIndexError(value);
      break;
    case 4:
      var value = new commands_common_pb.DownloadProgress;
      reader.readMessage(value,commands_common_pb.DownloadProgress.deserializeBinaryFromReader);
      msg.setDownloadProgress(value);
      break;
    case 5:
      var value = new commands_common_pb.TaskProgress;
      reader.readMessage(value,commands_common_pb.TaskProgress.deserializeBinaryFromReader);
      msg.setTaskProgress(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.cc.arduino.cli.commands.InitResp.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.cc.arduino.cli.commands.InitResp.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.cc.arduino.cli.commands.InitResp} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.InitResp.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getInstance();
  if (f != null) {
    writer.writeMessage(
      1,
      f,
      commands_common_pb.Instance.serializeBinaryToWriter
    );
  }
  f = message.getPlatformsIndexErrorsList();
  if (f.length > 0) {
    writer.writeRepeatedString(
      2,
      f
    );
  }
  f = message.getLibrariesIndexError();
  if (f.length > 0) {
    writer.writeString(
      3,
      f
    );
  }
  f = message.getDownloadProgress();
  if (f != null) {
    writer.writeMessage(
      4,
      f,
      commands_common_pb.DownloadProgress.serializeBinaryToWriter
    );
  }
  f = message.getTaskProgress();
  if (f != null) {
    writer.writeMessage(
      5,
      f,
      commands_common_pb.TaskProgress.serializeBinaryToWriter
    );
  }
};


/**
 * optional Instance instance = 1;
 * @return {?proto.cc.arduino.cli.commands.Instance}
 */
proto.cc.arduino.cli.commands.InitResp.prototype.getInstance = function() {
  return /** @type{?proto.cc.arduino.cli.commands.Instance} */ (
    jspb.Message.getWrapperField(this, commands_common_pb.Instance, 1));
};


/**
 * @param {?proto.cc.arduino.cli.commands.Instance|undefined} value
 * @return {!proto.cc.arduino.cli.commands.InitResp} returns this
*/
proto.cc.arduino.cli.commands.InitResp.prototype.setInstance = function(value) {
  return jspb.Message.setWrapperField(this, 1, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.cc.arduino.cli.commands.InitResp} returns this
 */
proto.cc.arduino.cli.commands.InitResp.prototype.clearInstance = function() {
  return this.setInstance(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.cc.arduino.cli.commands.InitResp.prototype.hasInstance = function() {
  return jspb.Message.getField(this, 1) != null;
};


/**
 * repeated string platforms_index_errors = 2;
 * @return {!Array<string>}
 */
proto.cc.arduino.cli.commands.InitResp.prototype.getPlatformsIndexErrorsList = function() {
  return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 2));
};


/**
 * @param {!Array<string>} value
 * @return {!proto.cc.arduino.cli.commands.InitResp} returns this
 */
proto.cc.arduino.cli.commands.InitResp.prototype.setPlatformsIndexErrorsList = function(value) {
  return jspb.Message.setField(this, 2, value || []);
};


/**
 * @param {string} value
 * @param {number=} opt_index
 * @return {!proto.cc.arduino.cli.commands.InitResp} returns this
 */
proto.cc.arduino.cli.commands.InitResp.prototype.addPlatformsIndexErrors = function(value, opt_index) {
  return jspb.Message.addToRepeatedField(this, 2, value, opt_index);
};


/**
 * Clears the list making it empty but non-null.
 * @return {!proto.cc.arduino.cli.commands.InitResp} returns this
 */
proto.cc.arduino.cli.commands.InitResp.prototype.clearPlatformsIndexErrorsList = function() {
  return this.setPlatformsIndexErrorsList([]);
};


/**
 * optional string libraries_index_error = 3;
 * @return {string}
 */
proto.cc.arduino.cli.commands.InitResp.prototype.getLibrariesIndexError = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, ""));
};


/**
 * @param {string} value
 * @return {!proto.cc.arduino.cli.commands.InitResp} returns this
 */
proto.cc.arduino.cli.commands.InitResp.prototype.setLibrariesIndexError = function(value) {
  return jspb.Message.setProto3StringField(this, 3, value);
};


/**
 * optional DownloadProgress download_progress = 4;
 * @return {?proto.cc.arduino.cli.commands.DownloadProgress}
 */
proto.cc.arduino.cli.commands.InitResp.prototype.getDownloadProgress = function() {
  return /** @type{?proto.cc.arduino.cli.commands.DownloadProgress} */ (
    jspb.Message.getWrapperField(this, commands_common_pb.DownloadProgress, 4));
};


/**
 * @param {?proto.cc.arduino.cli.commands.DownloadProgress|undefined} value
 * @return {!proto.cc.arduino.cli.commands.InitResp} returns this
*/
proto.cc.arduino.cli.commands.InitResp.prototype.setDownloadProgress = function(value) {
  return jspb.Message.setWrapperField(this, 4, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.cc.arduino.cli.commands.InitResp} returns this
 */
proto.cc.arduino.cli.commands.InitResp.prototype.clearDownloadProgress = function() {
  return this.setDownloadProgress(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.cc.arduino.cli.commands.InitResp.prototype.hasDownloadProgress = function() {
  return jspb.Message.getField(this, 4) != null;
};


/**
 * optional TaskProgress task_progress = 5;
 * @return {?proto.cc.arduino.cli.commands.TaskProgress}
 */
proto.cc.arduino.cli.commands.InitResp.prototype.getTaskProgress = function() {
  return /** @type{?proto.cc.arduino.cli.commands.TaskProgress} */ (
    jspb.Message.getWrapperField(this, commands_common_pb.TaskProgress, 5));
};


/**
 * @param {?proto.cc.arduino.cli.commands.TaskProgress|undefined} value
 * @return {!proto.cc.arduino.cli.commands.InitResp} returns this
*/
proto.cc.arduino.cli.commands.InitResp.prototype.setTaskProgress = function(value) {
  return jspb.Message.setWrapperField(this, 5, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.cc.arduino.cli.commands.InitResp} returns this
 */
proto.cc.arduino.cli.commands.InitResp.prototype.clearTaskProgress = function() {
  return this.setTaskProgress(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.cc.arduino.cli.commands.InitResp.prototype.hasTaskProgress = function() {
  return jspb.Message.getField(this, 5) != null;
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.cc.arduino.cli.commands.DestroyReq.prototype.toObject = function(opt_includeInstance) {
  return proto.cc.arduino.cli.commands.DestroyReq.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.cc.arduino.cli.commands.DestroyReq} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.DestroyReq.toObject = function(includeInstance, msg) {
  var f, obj = {
    instance: (f = msg.getInstance()) && commands_common_pb.Instance.toObject(includeInstance, f)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.cc.arduino.cli.commands.DestroyReq}
 */
proto.cc.arduino.cli.commands.DestroyReq.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.cc.arduino.cli.commands.DestroyReq;
  return proto.cc.arduino.cli.commands.DestroyReq.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.cc.arduino.cli.commands.DestroyReq} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.cc.arduino.cli.commands.DestroyReq}
 */
proto.cc.arduino.cli.commands.DestroyReq.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new commands_common_pb.Instance;
      reader.readMessage(value,commands_common_pb.Instance.deserializeBinaryFromReader);
      msg.setInstance(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.cc.arduino.cli.commands.DestroyReq.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.cc.arduino.cli.commands.DestroyReq.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.cc.arduino.cli.commands.DestroyReq} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.DestroyReq.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getInstance();
  if (f != null) {
    writer.writeMessage(
      1,
      f,
      commands_common_pb.Instance.serializeBinaryToWriter
    );
  }
};


/**
 * optional Instance instance = 1;
 * @return {?proto.cc.arduino.cli.commands.Instance}
 */
proto.cc.arduino.cli.commands.DestroyReq.prototype.getInstance = function() {
  return /** @type{?proto.cc.arduino.cli.commands.Instance} */ (
    jspb.Message.getWrapperField(this, commands_common_pb.Instance, 1));
};


/**
 * @param {?proto.cc.arduino.cli.commands.Instance|undefined} value
 * @return {!proto.cc.arduino.cli.commands.DestroyReq} returns this
*/
proto.cc.arduino.cli.commands.DestroyReq.prototype.setInstance = function(value) {
  return jspb.Message.setWrapperField(this, 1, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.cc.arduino.cli.commands.DestroyReq} returns this
 */
proto.cc.arduino.cli.commands.DestroyReq.prototype.clearInstance = function() {
  return this.setInstance(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.cc.arduino.cli.commands.DestroyReq.prototype.hasInstance = function() {
  return jspb.Message.getField(this, 1) != null;
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.cc.arduino.cli.commands.DestroyResp.prototype.toObject = function(opt_includeInstance) {
  return proto.cc.arduino.cli.commands.DestroyResp.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.cc.arduino.cli.commands.DestroyResp} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.DestroyResp.toObject = function(includeInstance, msg) {
  var f, obj = {

  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.cc.arduino.cli.commands.DestroyResp}
 */
proto.cc.arduino.cli.commands.DestroyResp.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.cc.arduino.cli.commands.DestroyResp;
  return proto.cc.arduino.cli.commands.DestroyResp.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.cc.arduino.cli.commands.DestroyResp} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.cc.arduino.cli.commands.DestroyResp}
 */
proto.cc.arduino.cli.commands.DestroyResp.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.cc.arduino.cli.commands.DestroyResp.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.cc.arduino.cli.commands.DestroyResp.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.cc.arduino.cli.commands.DestroyResp} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.DestroyResp.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.cc.arduino.cli.commands.RescanReq.prototype.toObject = function(opt_includeInstance) {
  return proto.cc.arduino.cli.commands.RescanReq.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.cc.arduino.cli.commands.RescanReq} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.RescanReq.toObject = function(includeInstance, msg) {
  var f, obj = {
    instance: (f = msg.getInstance()) && commands_common_pb.Instance.toObject(includeInstance, f)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.cc.arduino.cli.commands.RescanReq}
 */
proto.cc.arduino.cli.commands.RescanReq.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.cc.arduino.cli.commands.RescanReq;
  return proto.cc.arduino.cli.commands.RescanReq.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.cc.arduino.cli.commands.RescanReq} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.cc.arduino.cli.commands.RescanReq}
 */
proto.cc.arduino.cli.commands.RescanReq.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new commands_common_pb.Instance;
      reader.readMessage(value,commands_common_pb.Instance.deserializeBinaryFromReader);
      msg.setInstance(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.cc.arduino.cli.commands.RescanReq.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.cc.arduino.cli.commands.RescanReq.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.cc.arduino.cli.commands.RescanReq} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.RescanReq.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getInstance();
  if (f != null) {
    writer.writeMessage(
      1,
      f,
      commands_common_pb.Instance.serializeBinaryToWriter
    );
  }
};


/**
 * optional Instance instance = 1;
 * @return {?proto.cc.arduino.cli.commands.Instance}
 */
proto.cc.arduino.cli.commands.RescanReq.prototype.getInstance = function() {
  return /** @type{?proto.cc.arduino.cli.commands.Instance} */ (
    jspb.Message.getWrapperField(this, commands_common_pb.Instance, 1));
};


/**
 * @param {?proto.cc.arduino.cli.commands.Instance|undefined} value
 * @return {!proto.cc.arduino.cli.commands.RescanReq} returns this
*/
proto.cc.arduino.cli.commands.RescanReq.prototype.setInstance = function(value) {
  return jspb.Message.setWrapperField(this, 1, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.cc.arduino.cli.commands.RescanReq} returns this
 */
proto.cc.arduino.cli.commands.RescanReq.prototype.clearInstance = function() {
  return this.setInstance(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.cc.arduino.cli.commands.RescanReq.prototype.hasInstance = function() {
  return jspb.Message.getField(this, 1) != null;
};



/**
 * List of repeated fields within this message type.
 * @private {!Array<number>}
 * @const
 */
proto.cc.arduino.cli.commands.RescanResp.repeatedFields_ = [1];



if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.cc.arduino.cli.commands.RescanResp.prototype.toObject = function(opt_includeInstance) {
  return proto.cc.arduino.cli.commands.RescanResp.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.cc.arduino.cli.commands.RescanResp} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.RescanResp.toObject = function(includeInstance, msg) {
  var f, obj = {
    platformsIndexErrorsList: (f = jspb.Message.getRepeatedField(msg, 1)) == null ? undefined : f,
    librariesIndexError: jspb.Message.getFieldWithDefault(msg, 2, "")
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.cc.arduino.cli.commands.RescanResp}
 */
proto.cc.arduino.cli.commands.RescanResp.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.cc.arduino.cli.commands.RescanResp;
  return proto.cc.arduino.cli.commands.RescanResp.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.cc.arduino.cli.commands.RescanResp} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.cc.arduino.cli.commands.RescanResp}
 */
proto.cc.arduino.cli.commands.RescanResp.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = /** @type {string} */ (reader.readString());
      msg.addPlatformsIndexErrors(value);
      break;
    case 2:
      var value = /** @type {string} */ (reader.readString());
      msg.setLibrariesIndexError(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.cc.arduino.cli.commands.RescanResp.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.cc.arduino.cli.commands.RescanResp.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.cc.arduino.cli.commands.RescanResp} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.RescanResp.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getPlatformsIndexErrorsList();
  if (f.length > 0) {
    writer.writeRepeatedString(
      1,
      f
    );
  }
  f = message.getLibrariesIndexError();
  if (f.length > 0) {
    writer.writeString(
      2,
      f
    );
  }
};


/**
 * repeated string platforms_index_errors = 1;
 * @return {!Array<string>}
 */
proto.cc.arduino.cli.commands.RescanResp.prototype.getPlatformsIndexErrorsList = function() {
  return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 1));
};


/**
 * @param {!Array<string>} value
 * @return {!proto.cc.arduino.cli.commands.RescanResp} returns this
 */
proto.cc.arduino.cli.commands.RescanResp.prototype.setPlatformsIndexErrorsList = function(value) {
  return jspb.Message.setField(this, 1, value || []);
};


/**
 * @param {string} value
 * @param {number=} opt_index
 * @return {!proto.cc.arduino.cli.commands.RescanResp} returns this
 */
proto.cc.arduino.cli.commands.RescanResp.prototype.addPlatformsIndexErrors = function(value, opt_index) {
  return jspb.Message.addToRepeatedField(this, 1, value, opt_index);
};


/**
 * Clears the list making it empty but non-null.
 * @return {!proto.cc.arduino.cli.commands.RescanResp} returns this
 */
proto.cc.arduino.cli.commands.RescanResp.prototype.clearPlatformsIndexErrorsList = function() {
  return this.setPlatformsIndexErrorsList([]);
};


/**
 * optional string libraries_index_error = 2;
 * @return {string}
 */
proto.cc.arduino.cli.commands.RescanResp.prototype.getLibrariesIndexError = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
};


/**
 * @param {string} value
 * @return {!proto.cc.arduino.cli.commands.RescanResp} returns this
 */
proto.cc.arduino.cli.commands.RescanResp.prototype.setLibrariesIndexError = function(value) {
  return jspb.Message.setProto3StringField(this, 2, value);
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.cc.arduino.cli.commands.UpdateIndexReq.prototype.toObject = function(opt_includeInstance) {
  return proto.cc.arduino.cli.commands.UpdateIndexReq.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.cc.arduino.cli.commands.UpdateIndexReq} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.UpdateIndexReq.toObject = function(includeInstance, msg) {
  var f, obj = {
    instance: (f = msg.getInstance()) && commands_common_pb.Instance.toObject(includeInstance, f)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.cc.arduino.cli.commands.UpdateIndexReq}
 */
proto.cc.arduino.cli.commands.UpdateIndexReq.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.cc.arduino.cli.commands.UpdateIndexReq;
  return proto.cc.arduino.cli.commands.UpdateIndexReq.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.cc.arduino.cli.commands.UpdateIndexReq} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.cc.arduino.cli.commands.UpdateIndexReq}
 */
proto.cc.arduino.cli.commands.UpdateIndexReq.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new commands_common_pb.Instance;
      reader.readMessage(value,commands_common_pb.Instance.deserializeBinaryFromReader);
      msg.setInstance(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.cc.arduino.cli.commands.UpdateIndexReq.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.cc.arduino.cli.commands.UpdateIndexReq.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.cc.arduino.cli.commands.UpdateIndexReq} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.UpdateIndexReq.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getInstance();
  if (f != null) {
    writer.writeMessage(
      1,
      f,
      commands_common_pb.Instance.serializeBinaryToWriter
    );
  }
};


/**
 * optional Instance instance = 1;
 * @return {?proto.cc.arduino.cli.commands.Instance}
 */
proto.cc.arduino.cli.commands.UpdateIndexReq.prototype.getInstance = function() {
  return /** @type{?proto.cc.arduino.cli.commands.Instance} */ (
    jspb.Message.getWrapperField(this, commands_common_pb.Instance, 1));
};


/**
 * @param {?proto.cc.arduino.cli.commands.Instance|undefined} value
 * @return {!proto.cc.arduino.cli.commands.UpdateIndexReq} returns this
*/
proto.cc.arduino.cli.commands.UpdateIndexReq.prototype.setInstance = function(value) {
  return jspb.Message.setWrapperField(this, 1, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.cc.arduino.cli.commands.UpdateIndexReq} returns this
 */
proto.cc.arduino.cli.commands.UpdateIndexReq.prototype.clearInstance = function() {
  return this.setInstance(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.cc.arduino.cli.commands.UpdateIndexReq.prototype.hasInstance = function() {
  return jspb.Message.getField(this, 1) != null;
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.cc.arduino.cli.commands.UpdateIndexResp.prototype.toObject = function(opt_includeInstance) {
  return proto.cc.arduino.cli.commands.UpdateIndexResp.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.cc.arduino.cli.commands.UpdateIndexResp} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.UpdateIndexResp.toObject = function(includeInstance, msg) {
  var f, obj = {
    downloadProgress: (f = msg.getDownloadProgress()) && commands_common_pb.DownloadProgress.toObject(includeInstance, f)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.cc.arduino.cli.commands.UpdateIndexResp}
 */
proto.cc.arduino.cli.commands.UpdateIndexResp.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.cc.arduino.cli.commands.UpdateIndexResp;
  return proto.cc.arduino.cli.commands.UpdateIndexResp.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.cc.arduino.cli.commands.UpdateIndexResp} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.cc.arduino.cli.commands.UpdateIndexResp}
 */
proto.cc.arduino.cli.commands.UpdateIndexResp.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new commands_common_pb.DownloadProgress;
      reader.readMessage(value,commands_common_pb.DownloadProgress.deserializeBinaryFromReader);
      msg.setDownloadProgress(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.cc.arduino.cli.commands.UpdateIndexResp.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.cc.arduino.cli.commands.UpdateIndexResp.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.cc.arduino.cli.commands.UpdateIndexResp} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.UpdateIndexResp.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getDownloadProgress();
  if (f != null) {
    writer.writeMessage(
      1,
      f,
      commands_common_pb.DownloadProgress.serializeBinaryToWriter
    );
  }
};


/**
 * optional DownloadProgress download_progress = 1;
 * @return {?proto.cc.arduino.cli.commands.DownloadProgress}
 */
proto.cc.arduino.cli.commands.UpdateIndexResp.prototype.getDownloadProgress = function() {
  return /** @type{?proto.cc.arduino.cli.commands.DownloadProgress} */ (
    jspb.Message.getWrapperField(this, commands_common_pb.DownloadProgress, 1));
};


/**
 * @param {?proto.cc.arduino.cli.commands.DownloadProgress|undefined} value
 * @return {!proto.cc.arduino.cli.commands.UpdateIndexResp} returns this
*/
proto.cc.arduino.cli.commands.UpdateIndexResp.prototype.setDownloadProgress = function(value) {
  return jspb.Message.setWrapperField(this, 1, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.cc.arduino.cli.commands.UpdateIndexResp} returns this
 */
proto.cc.arduino.cli.commands.UpdateIndexResp.prototype.clearDownloadProgress = function() {
  return this.setDownloadProgress(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.cc.arduino.cli.commands.UpdateIndexResp.prototype.hasDownloadProgress = function() {
  return jspb.Message.getField(this, 1) != null;
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.cc.arduino.cli.commands.UpdateLibrariesIndexReq.prototype.toObject = function(opt_includeInstance) {
  return proto.cc.arduino.cli.commands.UpdateLibrariesIndexReq.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.cc.arduino.cli.commands.UpdateLibrariesIndexReq} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.UpdateLibrariesIndexReq.toObject = function(includeInstance, msg) {
  var f, obj = {
    instance: (f = msg.getInstance()) && commands_common_pb.Instance.toObject(includeInstance, f)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.cc.arduino.cli.commands.UpdateLibrariesIndexReq}
 */
proto.cc.arduino.cli.commands.UpdateLibrariesIndexReq.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.cc.arduino.cli.commands.UpdateLibrariesIndexReq;
  return proto.cc.arduino.cli.commands.UpdateLibrariesIndexReq.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.cc.arduino.cli.commands.UpdateLibrariesIndexReq} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.cc.arduino.cli.commands.UpdateLibrariesIndexReq}
 */
proto.cc.arduino.cli.commands.UpdateLibrariesIndexReq.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new commands_common_pb.Instance;
      reader.readMessage(value,commands_common_pb.Instance.deserializeBinaryFromReader);
      msg.setInstance(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.cc.arduino.cli.commands.UpdateLibrariesIndexReq.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.cc.arduino.cli.commands.UpdateLibrariesIndexReq.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.cc.arduino.cli.commands.UpdateLibrariesIndexReq} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.UpdateLibrariesIndexReq.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getInstance();
  if (f != null) {
    writer.writeMessage(
      1,
      f,
      commands_common_pb.Instance.serializeBinaryToWriter
    );
  }
};


/**
 * optional Instance instance = 1;
 * @return {?proto.cc.arduino.cli.commands.Instance}
 */
proto.cc.arduino.cli.commands.UpdateLibrariesIndexReq.prototype.getInstance = function() {
  return /** @type{?proto.cc.arduino.cli.commands.Instance} */ (
    jspb.Message.getWrapperField(this, commands_common_pb.Instance, 1));
};


/**
 * @param {?proto.cc.arduino.cli.commands.Instance|undefined} value
 * @return {!proto.cc.arduino.cli.commands.UpdateLibrariesIndexReq} returns this
*/
proto.cc.arduino.cli.commands.UpdateLibrariesIndexReq.prototype.setInstance = function(value) {
  return jspb.Message.setWrapperField(this, 1, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.cc.arduino.cli.commands.UpdateLibrariesIndexReq} returns this
 */
proto.cc.arduino.cli.commands.UpdateLibrariesIndexReq.prototype.clearInstance = function() {
  return this.setInstance(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.cc.arduino.cli.commands.UpdateLibrariesIndexReq.prototype.hasInstance = function() {
  return jspb.Message.getField(this, 1) != null;
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.cc.arduino.cli.commands.UpdateLibrariesIndexResp.prototype.toObject = function(opt_includeInstance) {
  return proto.cc.arduino.cli.commands.UpdateLibrariesIndexResp.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.cc.arduino.cli.commands.UpdateLibrariesIndexResp} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.UpdateLibrariesIndexResp.toObject = function(includeInstance, msg) {
  var f, obj = {
    downloadProgress: (f = msg.getDownloadProgress()) && commands_common_pb.DownloadProgress.toObject(includeInstance, f)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.cc.arduino.cli.commands.UpdateLibrariesIndexResp}
 */
proto.cc.arduino.cli.commands.UpdateLibrariesIndexResp.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.cc.arduino.cli.commands.UpdateLibrariesIndexResp;
  return proto.cc.arduino.cli.commands.UpdateLibrariesIndexResp.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.cc.arduino.cli.commands.UpdateLibrariesIndexResp} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.cc.arduino.cli.commands.UpdateLibrariesIndexResp}
 */
proto.cc.arduino.cli.commands.UpdateLibrariesIndexResp.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new commands_common_pb.DownloadProgress;
      reader.readMessage(value,commands_common_pb.DownloadProgress.deserializeBinaryFromReader);
      msg.setDownloadProgress(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.cc.arduino.cli.commands.UpdateLibrariesIndexResp.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.cc.arduino.cli.commands.UpdateLibrariesIndexResp.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.cc.arduino.cli.commands.UpdateLibrariesIndexResp} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.UpdateLibrariesIndexResp.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getDownloadProgress();
  if (f != null) {
    writer.writeMessage(
      1,
      f,
      commands_common_pb.DownloadProgress.serializeBinaryToWriter
    );
  }
};


/**
 * optional DownloadProgress download_progress = 1;
 * @return {?proto.cc.arduino.cli.commands.DownloadProgress}
 */
proto.cc.arduino.cli.commands.UpdateLibrariesIndexResp.prototype.getDownloadProgress = function() {
  return /** @type{?proto.cc.arduino.cli.commands.DownloadProgress} */ (
    jspb.Message.getWrapperField(this, commands_common_pb.DownloadProgress, 1));
};


/**
 * @param {?proto.cc.arduino.cli.commands.DownloadProgress|undefined} value
 * @return {!proto.cc.arduino.cli.commands.UpdateLibrariesIndexResp} returns this
*/
proto.cc.arduino.cli.commands.UpdateLibrariesIndexResp.prototype.setDownloadProgress = function(value) {
  return jspb.Message.setWrapperField(this, 1, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.cc.arduino.cli.commands.UpdateLibrariesIndexResp} returns this
 */
proto.cc.arduino.cli.commands.UpdateLibrariesIndexResp.prototype.clearDownloadProgress = function() {
  return this.setDownloadProgress(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.cc.arduino.cli.commands.UpdateLibrariesIndexResp.prototype.hasDownloadProgress = function() {
  return jspb.Message.getField(this, 1) != null;
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexReq.prototype.toObject = function(opt_includeInstance) {
  return proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexReq.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexReq} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexReq.toObject = function(includeInstance, msg) {
  var f, obj = {
    instance: (f = msg.getInstance()) && commands_common_pb.Instance.toObject(includeInstance, f)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexReq}
 */
proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexReq.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexReq;
  return proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexReq.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexReq} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexReq}
 */
proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexReq.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new commands_common_pb.Instance;
      reader.readMessage(value,commands_common_pb.Instance.deserializeBinaryFromReader);
      msg.setInstance(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexReq.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexReq.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexReq} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexReq.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getInstance();
  if (f != null) {
    writer.writeMessage(
      1,
      f,
      commands_common_pb.Instance.serializeBinaryToWriter
    );
  }
};


/**
 * optional Instance instance = 1;
 * @return {?proto.cc.arduino.cli.commands.Instance}
 */
proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexReq.prototype.getInstance = function() {
  return /** @type{?proto.cc.arduino.cli.commands.Instance} */ (
    jspb.Message.getWrapperField(this, commands_common_pb.Instance, 1));
};


/**
 * @param {?proto.cc.arduino.cli.commands.Instance|undefined} value
 * @return {!proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexReq} returns this
*/
proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexReq.prototype.setInstance = function(value) {
  return jspb.Message.setWrapperField(this, 1, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexReq} returns this
 */
proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexReq.prototype.clearInstance = function() {
  return this.setInstance(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexReq.prototype.hasInstance = function() {
  return jspb.Message.getField(this, 1) != null;
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexResp.prototype.toObject = function(opt_includeInstance) {
  return proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexResp.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexResp} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexResp.toObject = function(includeInstance, msg) {
  var f, obj = {
    downloadProgress: (f = msg.getDownloadProgress()) && commands_common_pb.DownloadProgress.toObject(includeInstance, f)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexResp}
 */
proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexResp.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexResp;
  return proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexResp.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexResp} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexResp}
 */
proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexResp.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new commands_common_pb.DownloadProgress;
      reader.readMessage(value,commands_common_pb.DownloadProgress.deserializeBinaryFromReader);
      msg.setDownloadProgress(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexResp.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexResp.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexResp} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexResp.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getDownloadProgress();
  if (f != null) {
    writer.writeMessage(
      1,
      f,
      commands_common_pb.DownloadProgress.serializeBinaryToWriter
    );
  }
};


/**
 * optional DownloadProgress download_progress = 1;
 * @return {?proto.cc.arduino.cli.commands.DownloadProgress}
 */
proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexResp.prototype.getDownloadProgress = function() {
  return /** @type{?proto.cc.arduino.cli.commands.DownloadProgress} */ (
    jspb.Message.getWrapperField(this, commands_common_pb.DownloadProgress, 1));
};


/**
 * @param {?proto.cc.arduino.cli.commands.DownloadProgress|undefined} value
 * @return {!proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexResp} returns this
*/
proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexResp.prototype.setDownloadProgress = function(value) {
  return jspb.Message.setWrapperField(this, 1, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexResp} returns this
 */
proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexResp.prototype.clearDownloadProgress = function() {
  return this.setDownloadProgress(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.cc.arduino.cli.commands.UpdateCoreLibrariesIndexResp.prototype.hasDownloadProgress = function() {
  return jspb.Message.getField(this, 1) != null;
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.cc.arduino.cli.commands.OutdatedReq.prototype.toObject = function(opt_includeInstance) {
  return proto.cc.arduino.cli.commands.OutdatedReq.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.cc.arduino.cli.commands.OutdatedReq} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.OutdatedReq.toObject = function(includeInstance, msg) {
  var f, obj = {
    instance: (f = msg.getInstance()) && commands_common_pb.Instance.toObject(includeInstance, f)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.cc.arduino.cli.commands.OutdatedReq}
 */
proto.cc.arduino.cli.commands.OutdatedReq.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.cc.arduino.cli.commands.OutdatedReq;
  return proto.cc.arduino.cli.commands.OutdatedReq.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.cc.arduino.cli.commands.OutdatedReq} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.cc.arduino.cli.commands.OutdatedReq}
 */
proto.cc.arduino.cli.commands.OutdatedReq.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new commands_common_pb.Instance;
      reader.readMessage(value,commands_common_pb.Instance.deserializeBinaryFromReader);
      msg.setInstance(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.cc.arduino.cli.commands.OutdatedReq.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.cc.arduino.cli.commands.OutdatedReq.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.cc.arduino.cli.commands.OutdatedReq} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.OutdatedReq.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getInstance();
  if (f != null) {
    writer.writeMessage(
      1,
      f,
      commands_common_pb.Instance.serializeBinaryToWriter
    );
  }
};


/**
 * optional Instance instance = 1;
 * @return {?proto.cc.arduino.cli.commands.Instance}
 */
proto.cc.arduino.cli.commands.OutdatedReq.prototype.getInstance = function() {
  return /** @type{?proto.cc.arduino.cli.commands.Instance} */ (
    jspb.Message.getWrapperField(this, commands_common_pb.Instance, 1));
};


/**
 * @param {?proto.cc.arduino.cli.commands.Instance|undefined} value
 * @return {!proto.cc.arduino.cli.commands.OutdatedReq} returns this
*/
proto.cc.arduino.cli.commands.OutdatedReq.prototype.setInstance = function(value) {
  return jspb.Message.setWrapperField(this, 1, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.cc.arduino.cli.commands.OutdatedReq} returns this
 */
proto.cc.arduino.cli.commands.OutdatedReq.prototype.clearInstance = function() {
  return this.setInstance(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.cc.arduino.cli.commands.OutdatedReq.prototype.hasInstance = function() {
  return jspb.Message.getField(this, 1) != null;
};



/**
 * List of repeated fields within this message type.
 * @private {!Array<number>}
 * @const
 */
proto.cc.arduino.cli.commands.OutdatedResp.repeatedFields_ = [1,2];



if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.cc.arduino.cli.commands.OutdatedResp.prototype.toObject = function(opt_includeInstance) {
  return proto.cc.arduino.cli.commands.OutdatedResp.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.cc.arduino.cli.commands.OutdatedResp} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.OutdatedResp.toObject = function(includeInstance, msg) {
  var f, obj = {
    outdatedLibraryList: jspb.Message.toObjectList(msg.getOutdatedLibraryList(),
    commands_lib_pb.InstalledLibrary.toObject, includeInstance),
    outdatedPlatformList: jspb.Message.toObjectList(msg.getOutdatedPlatformList(),
    commands_core_pb.Platform.toObject, includeInstance)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.cc.arduino.cli.commands.OutdatedResp}
 */
proto.cc.arduino.cli.commands.OutdatedResp.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.cc.arduino.cli.commands.OutdatedResp;
  return proto.cc.arduino.cli.commands.OutdatedResp.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.cc.arduino.cli.commands.OutdatedResp} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.cc.arduino.cli.commands.OutdatedResp}
 */
proto.cc.arduino.cli.commands.OutdatedResp.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new commands_lib_pb.InstalledLibrary;
      reader.readMessage(value,commands_lib_pb.InstalledLibrary.deserializeBinaryFromReader);
      msg.addOutdatedLibrary(value);
      break;
    case 2:
      var value = new commands_core_pb.Platform;
      reader.readMessage(value,commands_core_pb.Platform.deserializeBinaryFromReader);
      msg.addOutdatedPlatform(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.cc.arduino.cli.commands.OutdatedResp.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.cc.arduino.cli.commands.OutdatedResp.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.cc.arduino.cli.commands.OutdatedResp} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.OutdatedResp.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getOutdatedLibraryList();
  if (f.length > 0) {
    writer.writeRepeatedMessage(
      1,
      f,
      commands_lib_pb.InstalledLibrary.serializeBinaryToWriter
    );
  }
  f = message.getOutdatedPlatformList();
  if (f.length > 0) {
    writer.writeRepeatedMessage(
      2,
      f,
      commands_core_pb.Platform.serializeBinaryToWriter
    );
  }
};


/**
 * repeated InstalledLibrary outdated_library = 1;
 * @return {!Array<!proto.cc.arduino.cli.commands.InstalledLibrary>}
 */
proto.cc.arduino.cli.commands.OutdatedResp.prototype.getOutdatedLibraryList = function() {
  return /** @type{!Array<!proto.cc.arduino.cli.commands.InstalledLibrary>} */ (
    jspb.Message.getRepeatedWrapperField(this, commands_lib_pb.InstalledLibrary, 1));
};


/**
 * @param {!Array<!proto.cc.arduino.cli.commands.InstalledLibrary>} value
 * @return {!proto.cc.arduino.cli.commands.OutdatedResp} returns this
*/
proto.cc.arduino.cli.commands.OutdatedResp.prototype.setOutdatedLibraryList = function(value) {
  return jspb.Message.setRepeatedWrapperField(this, 1, value);
};


/**
 * @param {!proto.cc.arduino.cli.commands.InstalledLibrary=} opt_value
 * @param {number=} opt_index
 * @return {!proto.cc.arduino.cli.commands.InstalledLibrary}
 */
proto.cc.arduino.cli.commands.OutdatedResp.prototype.addOutdatedLibrary = function(opt_value, opt_index) {
  return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.cc.arduino.cli.commands.InstalledLibrary, opt_index);
};


/**
 * Clears the list making it empty but non-null.
 * @return {!proto.cc.arduino.cli.commands.OutdatedResp} returns this
 */
proto.cc.arduino.cli.commands.OutdatedResp.prototype.clearOutdatedLibraryList = function() {
  return this.setOutdatedLibraryList([]);
};


/**
 * repeated Platform outdated_platform = 2;
 * @return {!Array<!proto.cc.arduino.cli.commands.Platform>}
 */
proto.cc.arduino.cli.commands.OutdatedResp.prototype.getOutdatedPlatformList = function() {
  return /** @type{!Array<!proto.cc.arduino.cli.commands.Platform>} */ (
    jspb.Message.getRepeatedWrapperField(this, commands_core_pb.Platform, 2));
};


/**
 * @param {!Array<!proto.cc.arduino.cli.commands.Platform>} value
 * @return {!proto.cc.arduino.cli.commands.OutdatedResp} returns this
*/
proto.cc.arduino.cli.commands.OutdatedResp.prototype.setOutdatedPlatformList = function(value) {
  return jspb.Message.setRepeatedWrapperField(this, 2, value);
};


/**
 * @param {!proto.cc.arduino.cli.commands.Platform=} opt_value
 * @param {number=} opt_index
 * @return {!proto.cc.arduino.cli.commands.Platform}
 */
proto.cc.arduino.cli.commands.OutdatedResp.prototype.addOutdatedPlatform = function(opt_value, opt_index) {
  return jspb.Message.addToRepeatedWrapperField(this, 2, opt_value, proto.cc.arduino.cli.commands.Platform, opt_index);
};


/**
 * Clears the list making it empty but non-null.
 * @return {!proto.cc.arduino.cli.commands.OutdatedResp} returns this
 */
proto.cc.arduino.cli.commands.OutdatedResp.prototype.clearOutdatedPlatformList = function() {
  return this.setOutdatedPlatformList([]);
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.cc.arduino.cli.commands.UpgradeReq.prototype.toObject = function(opt_includeInstance) {
  return proto.cc.arduino.cli.commands.UpgradeReq.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.cc.arduino.cli.commands.UpgradeReq} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.UpgradeReq.toObject = function(includeInstance, msg) {
  var f, obj = {
    instance: (f = msg.getInstance()) && commands_common_pb.Instance.toObject(includeInstance, f),
    skippostinstall: jspb.Message.getBooleanFieldWithDefault(msg, 2, false)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.cc.arduino.cli.commands.UpgradeReq}
 */
proto.cc.arduino.cli.commands.UpgradeReq.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.cc.arduino.cli.commands.UpgradeReq;
  return proto.cc.arduino.cli.commands.UpgradeReq.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.cc.arduino.cli.commands.UpgradeReq} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.cc.arduino.cli.commands.UpgradeReq}
 */
proto.cc.arduino.cli.commands.UpgradeReq.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new commands_common_pb.Instance;
      reader.readMessage(value,commands_common_pb.Instance.deserializeBinaryFromReader);
      msg.setInstance(value);
      break;
    case 2:
      var value = /** @type {boolean} */ (reader.readBool());
      msg.setSkippostinstall(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.cc.arduino.cli.commands.UpgradeReq.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.cc.arduino.cli.commands.UpgradeReq.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.cc.arduino.cli.commands.UpgradeReq} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.UpgradeReq.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getInstance();
  if (f != null) {
    writer.writeMessage(
      1,
      f,
      commands_common_pb.Instance.serializeBinaryToWriter
    );
  }
  f = message.getSkippostinstall();
  if (f) {
    writer.writeBool(
      2,
      f
    );
  }
};


/**
 * optional Instance instance = 1;
 * @return {?proto.cc.arduino.cli.commands.Instance}
 */
proto.cc.arduino.cli.commands.UpgradeReq.prototype.getInstance = function() {
  return /** @type{?proto.cc.arduino.cli.commands.Instance} */ (
    jspb.Message.getWrapperField(this, commands_common_pb.Instance, 1));
};


/**
 * @param {?proto.cc.arduino.cli.commands.Instance|undefined} value
 * @return {!proto.cc.arduino.cli.commands.UpgradeReq} returns this
*/
proto.cc.arduino.cli.commands.UpgradeReq.prototype.setInstance = function(value) {
  return jspb.Message.setWrapperField(this, 1, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.cc.arduino.cli.commands.UpgradeReq} returns this
 */
proto.cc.arduino.cli.commands.UpgradeReq.prototype.clearInstance = function() {
  return this.setInstance(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.cc.arduino.cli.commands.UpgradeReq.prototype.hasInstance = function() {
  return jspb.Message.getField(this, 1) != null;
};


/**
 * optional bool skipPostInstall = 2;
 * @return {boolean}
 */
proto.cc.arduino.cli.commands.UpgradeReq.prototype.getSkippostinstall = function() {
  return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 2, false));
};


/**
 * @param {boolean} value
 * @return {!proto.cc.arduino.cli.commands.UpgradeReq} returns this
 */
proto.cc.arduino.cli.commands.UpgradeReq.prototype.setSkippostinstall = function(value) {
  return jspb.Message.setProto3BooleanField(this, 2, value);
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.cc.arduino.cli.commands.UpgradeResp.prototype.toObject = function(opt_includeInstance) {
  return proto.cc.arduino.cli.commands.UpgradeResp.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.cc.arduino.cli.commands.UpgradeResp} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.UpgradeResp.toObject = function(includeInstance, msg) {
  var f, obj = {
    progress: (f = msg.getProgress()) && commands_common_pb.DownloadProgress.toObject(includeInstance, f),
    taskProgress: (f = msg.getTaskProgress()) && commands_common_pb.TaskProgress.toObject(includeInstance, f)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.cc.arduino.cli.commands.UpgradeResp}
 */
proto.cc.arduino.cli.commands.UpgradeResp.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.cc.arduino.cli.commands.UpgradeResp;
  return proto.cc.arduino.cli.commands.UpgradeResp.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.cc.arduino.cli.commands.UpgradeResp} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.cc.arduino.cli.commands.UpgradeResp}
 */
proto.cc.arduino.cli.commands.UpgradeResp.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new commands_common_pb.DownloadProgress;
      reader.readMessage(value,commands_common_pb.DownloadProgress.deserializeBinaryFromReader);
      msg.setProgress(value);
      break;
    case 2:
      var value = new commands_common_pb.TaskProgress;
      reader.readMessage(value,commands_common_pb.TaskProgress.deserializeBinaryFromReader);
      msg.setTaskProgress(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.cc.arduino.cli.commands.UpgradeResp.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.cc.arduino.cli.commands.UpgradeResp.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.cc.arduino.cli.commands.UpgradeResp} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.UpgradeResp.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getProgress();
  if (f != null) {
    writer.writeMessage(
      1,
      f,
      commands_common_pb.DownloadProgress.serializeBinaryToWriter
    );
  }
  f = message.getTaskProgress();
  if (f != null) {
    writer.writeMessage(
      2,
      f,
      commands_common_pb.TaskProgress.serializeBinaryToWriter
    );
  }
};


/**
 * optional DownloadProgress progress = 1;
 * @return {?proto.cc.arduino.cli.commands.DownloadProgress}
 */
proto.cc.arduino.cli.commands.UpgradeResp.prototype.getProgress = function() {
  return /** @type{?proto.cc.arduino.cli.commands.DownloadProgress} */ (
    jspb.Message.getWrapperField(this, commands_common_pb.DownloadProgress, 1));
};


/**
 * @param {?proto.cc.arduino.cli.commands.DownloadProgress|undefined} value
 * @return {!proto.cc.arduino.cli.commands.UpgradeResp} returns this
*/
proto.cc.arduino.cli.commands.UpgradeResp.prototype.setProgress = function(value) {
  return jspb.Message.setWrapperField(this, 1, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.cc.arduino.cli.commands.UpgradeResp} returns this
 */
proto.cc.arduino.cli.commands.UpgradeResp.prototype.clearProgress = function() {
  return this.setProgress(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.cc.arduino.cli.commands.UpgradeResp.prototype.hasProgress = function() {
  return jspb.Message.getField(this, 1) != null;
};


/**
 * optional TaskProgress task_progress = 2;
 * @return {?proto.cc.arduino.cli.commands.TaskProgress}
 */
proto.cc.arduino.cli.commands.UpgradeResp.prototype.getTaskProgress = function() {
  return /** @type{?proto.cc.arduino.cli.commands.TaskProgress} */ (
    jspb.Message.getWrapperField(this, commands_common_pb.TaskProgress, 2));
};


/**
 * @param {?proto.cc.arduino.cli.commands.TaskProgress|undefined} value
 * @return {!proto.cc.arduino.cli.commands.UpgradeResp} returns this
*/
proto.cc.arduino.cli.commands.UpgradeResp.prototype.setTaskProgress = function(value) {
  return jspb.Message.setWrapperField(this, 2, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.cc.arduino.cli.commands.UpgradeResp} returns this
 */
proto.cc.arduino.cli.commands.UpgradeResp.prototype.clearTaskProgress = function() {
  return this.setTaskProgress(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.cc.arduino.cli.commands.UpgradeResp.prototype.hasTaskProgress = function() {
  return jspb.Message.getField(this, 2) != null;
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.cc.arduino.cli.commands.VersionReq.prototype.toObject = function(opt_includeInstance) {
  return proto.cc.arduino.cli.commands.VersionReq.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.cc.arduino.cli.commands.VersionReq} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.VersionReq.toObject = function(includeInstance, msg) {
  var f, obj = {

  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.cc.arduino.cli.commands.VersionReq}
 */
proto.cc.arduino.cli.commands.VersionReq.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.cc.arduino.cli.commands.VersionReq;
  return proto.cc.arduino.cli.commands.VersionReq.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.cc.arduino.cli.commands.VersionReq} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.cc.arduino.cli.commands.VersionReq}
 */
proto.cc.arduino.cli.commands.VersionReq.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.cc.arduino.cli.commands.VersionReq.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.cc.arduino.cli.commands.VersionReq.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.cc.arduino.cli.commands.VersionReq} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.VersionReq.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.cc.arduino.cli.commands.VersionResp.prototype.toObject = function(opt_includeInstance) {
  return proto.cc.arduino.cli.commands.VersionResp.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.cc.arduino.cli.commands.VersionResp} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.VersionResp.toObject = function(includeInstance, msg) {
  var f, obj = {
    version: jspb.Message.getFieldWithDefault(msg, 1, "")
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.cc.arduino.cli.commands.VersionResp}
 */
proto.cc.arduino.cli.commands.VersionResp.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.cc.arduino.cli.commands.VersionResp;
  return proto.cc.arduino.cli.commands.VersionResp.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.cc.arduino.cli.commands.VersionResp} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.cc.arduino.cli.commands.VersionResp}
 */
proto.cc.arduino.cli.commands.VersionResp.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = /** @type {string} */ (reader.readString());
      msg.setVersion(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.cc.arduino.cli.commands.VersionResp.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.cc.arduino.cli.commands.VersionResp.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.cc.arduino.cli.commands.VersionResp} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.VersionResp.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getVersion();
  if (f.length > 0) {
    writer.writeString(
      1,
      f
    );
  }
};


/**
 * optional string version = 1;
 * @return {string}
 */
proto.cc.arduino.cli.commands.VersionResp.prototype.getVersion = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
};


/**
 * @param {string} value
 * @return {!proto.cc.arduino.cli.commands.VersionResp} returns this
 */
proto.cc.arduino.cli.commands.VersionResp.prototype.setVersion = function(value) {
  return jspb.Message.setProto3StringField(this, 1, value);
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.cc.arduino.cli.commands.LoadSketchReq.prototype.toObject = function(opt_includeInstance) {
  return proto.cc.arduino.cli.commands.LoadSketchReq.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.cc.arduino.cli.commands.LoadSketchReq} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.LoadSketchReq.toObject = function(includeInstance, msg) {
  var f, obj = {
    instance: (f = msg.getInstance()) && commands_common_pb.Instance.toObject(includeInstance, f),
    sketchPath: jspb.Message.getFieldWithDefault(msg, 2, "")
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.cc.arduino.cli.commands.LoadSketchReq}
 */
proto.cc.arduino.cli.commands.LoadSketchReq.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.cc.arduino.cli.commands.LoadSketchReq;
  return proto.cc.arduino.cli.commands.LoadSketchReq.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.cc.arduino.cli.commands.LoadSketchReq} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.cc.arduino.cli.commands.LoadSketchReq}
 */
proto.cc.arduino.cli.commands.LoadSketchReq.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = new commands_common_pb.Instance;
      reader.readMessage(value,commands_common_pb.Instance.deserializeBinaryFromReader);
      msg.setInstance(value);
      break;
    case 2:
      var value = /** @type {string} */ (reader.readString());
      msg.setSketchPath(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.cc.arduino.cli.commands.LoadSketchReq.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.cc.arduino.cli.commands.LoadSketchReq.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.cc.arduino.cli.commands.LoadSketchReq} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.LoadSketchReq.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getInstance();
  if (f != null) {
    writer.writeMessage(
      1,
      f,
      commands_common_pb.Instance.serializeBinaryToWriter
    );
  }
  f = message.getSketchPath();
  if (f.length > 0) {
    writer.writeString(
      2,
      f
    );
  }
};


/**
 * optional Instance instance = 1;
 * @return {?proto.cc.arduino.cli.commands.Instance}
 */
proto.cc.arduino.cli.commands.LoadSketchReq.prototype.getInstance = function() {
  return /** @type{?proto.cc.arduino.cli.commands.Instance} */ (
    jspb.Message.getWrapperField(this, commands_common_pb.Instance, 1));
};


/**
 * @param {?proto.cc.arduino.cli.commands.Instance|undefined} value
 * @return {!proto.cc.arduino.cli.commands.LoadSketchReq} returns this
*/
proto.cc.arduino.cli.commands.LoadSketchReq.prototype.setInstance = function(value) {
  return jspb.Message.setWrapperField(this, 1, value);
};


/**
 * Clears the message field making it undefined.
 * @return {!proto.cc.arduino.cli.commands.LoadSketchReq} returns this
 */
proto.cc.arduino.cli.commands.LoadSketchReq.prototype.clearInstance = function() {
  return this.setInstance(undefined);
};


/**
 * Returns whether this field is set.
 * @return {boolean}
 */
proto.cc.arduino.cli.commands.LoadSketchReq.prototype.hasInstance = function() {
  return jspb.Message.getField(this, 1) != null;
};


/**
 * optional string sketch_path = 2;
 * @return {string}
 */
proto.cc.arduino.cli.commands.LoadSketchReq.prototype.getSketchPath = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
};


/**
 * @param {string} value
 * @return {!proto.cc.arduino.cli.commands.LoadSketchReq} returns this
 */
proto.cc.arduino.cli.commands.LoadSketchReq.prototype.setSketchPath = function(value) {
  return jspb.Message.setProto3StringField(this, 2, value);
};



/**
 * List of repeated fields within this message type.
 * @private {!Array<number>}
 * @const
 */
proto.cc.arduino.cli.commands.LoadSketchResp.repeatedFields_ = [3,4];



if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.cc.arduino.cli.commands.LoadSketchResp.prototype.toObject = function(opt_includeInstance) {
  return proto.cc.arduino.cli.commands.LoadSketchResp.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.cc.arduino.cli.commands.LoadSketchResp} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.LoadSketchResp.toObject = function(includeInstance, msg) {
  var f, obj = {
    mainFile: jspb.Message.getFieldWithDefault(msg, 1, ""),
    locationPath: jspb.Message.getFieldWithDefault(msg, 2, ""),
    otherSketchFilesList: (f = jspb.Message.getRepeatedField(msg, 3)) == null ? undefined : f,
    additionalFilesList: (f = jspb.Message.getRepeatedField(msg, 4)) == null ? undefined : f
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.cc.arduino.cli.commands.LoadSketchResp}
 */
proto.cc.arduino.cli.commands.LoadSketchResp.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.cc.arduino.cli.commands.LoadSketchResp;
  return proto.cc.arduino.cli.commands.LoadSketchResp.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.cc.arduino.cli.commands.LoadSketchResp} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.cc.arduino.cli.commands.LoadSketchResp}
 */
proto.cc.arduino.cli.commands.LoadSketchResp.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = /** @type {string} */ (reader.readString());
      msg.setMainFile(value);
      break;
    case 2:
      var value = /** @type {string} */ (reader.readString());
      msg.setLocationPath(value);
      break;
    case 3:
      var value = /** @type {string} */ (reader.readString());
      msg.addOtherSketchFiles(value);
      break;
    case 4:
      var value = /** @type {string} */ (reader.readString());
      msg.addAdditionalFiles(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.cc.arduino.cli.commands.LoadSketchResp.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.cc.arduino.cli.commands.LoadSketchResp.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.cc.arduino.cli.commands.LoadSketchResp} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.LoadSketchResp.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getMainFile();
  if (f.length > 0) {
    writer.writeString(
      1,
      f
    );
  }
  f = message.getLocationPath();
  if (f.length > 0) {
    writer.writeString(
      2,
      f
    );
  }
  f = message.getOtherSketchFilesList();
  if (f.length > 0) {
    writer.writeRepeatedString(
      3,
      f
    );
  }
  f = message.getAdditionalFilesList();
  if (f.length > 0) {
    writer.writeRepeatedString(
      4,
      f
    );
  }
};


/**
 * optional string main_file = 1;
 * @return {string}
 */
proto.cc.arduino.cli.commands.LoadSketchResp.prototype.getMainFile = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
};


/**
 * @param {string} value
 * @return {!proto.cc.arduino.cli.commands.LoadSketchResp} returns this
 */
proto.cc.arduino.cli.commands.LoadSketchResp.prototype.setMainFile = function(value) {
  return jspb.Message.setProto3StringField(this, 1, value);
};


/**
 * optional string location_path = 2;
 * @return {string}
 */
proto.cc.arduino.cli.commands.LoadSketchResp.prototype.getLocationPath = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
};


/**
 * @param {string} value
 * @return {!proto.cc.arduino.cli.commands.LoadSketchResp} returns this
 */
proto.cc.arduino.cli.commands.LoadSketchResp.prototype.setLocationPath = function(value) {
  return jspb.Message.setProto3StringField(this, 2, value);
};


/**
 * repeated string other_sketch_files = 3;
 * @return {!Array<string>}
 */
proto.cc.arduino.cli.commands.LoadSketchResp.prototype.getOtherSketchFilesList = function() {
  return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 3));
};


/**
 * @param {!Array<string>} value
 * @return {!proto.cc.arduino.cli.commands.LoadSketchResp} returns this
 */
proto.cc.arduino.cli.commands.LoadSketchResp.prototype.setOtherSketchFilesList = function(value) {
  return jspb.Message.setField(this, 3, value || []);
};


/**
 * @param {string} value
 * @param {number=} opt_index
 * @return {!proto.cc.arduino.cli.commands.LoadSketchResp} returns this
 */
proto.cc.arduino.cli.commands.LoadSketchResp.prototype.addOtherSketchFiles = function(value, opt_index) {
  return jspb.Message.addToRepeatedField(this, 3, value, opt_index);
};


/**
 * Clears the list making it empty but non-null.
 * @return {!proto.cc.arduino.cli.commands.LoadSketchResp} returns this
 */
proto.cc.arduino.cli.commands.LoadSketchResp.prototype.clearOtherSketchFilesList = function() {
  return this.setOtherSketchFilesList([]);
};


/**
 * repeated string additional_files = 4;
 * @return {!Array<string>}
 */
proto.cc.arduino.cli.commands.LoadSketchResp.prototype.getAdditionalFilesList = function() {
  return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 4));
};


/**
 * @param {!Array<string>} value
 * @return {!proto.cc.arduino.cli.commands.LoadSketchResp} returns this
 */
proto.cc.arduino.cli.commands.LoadSketchResp.prototype.setAdditionalFilesList = function(value) {
  return jspb.Message.setField(this, 4, value || []);
};


/**
 * @param {string} value
 * @param {number=} opt_index
 * @return {!proto.cc.arduino.cli.commands.LoadSketchResp} returns this
 */
proto.cc.arduino.cli.commands.LoadSketchResp.prototype.addAdditionalFiles = function(value, opt_index) {
  return jspb.Message.addToRepeatedField(this, 4, value, opt_index);
};


/**
 * Clears the list making it empty but non-null.
 * @return {!proto.cc.arduino.cli.commands.LoadSketchResp} returns this
 */
proto.cc.arduino.cli.commands.LoadSketchResp.prototype.clearAdditionalFilesList = function() {
  return this.setAdditionalFilesList([]);
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.cc.arduino.cli.commands.ArchiveSketchReq.prototype.toObject = function(opt_includeInstance) {
  return proto.cc.arduino.cli.commands.ArchiveSketchReq.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.cc.arduino.cli.commands.ArchiveSketchReq} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.ArchiveSketchReq.toObject = function(includeInstance, msg) {
  var f, obj = {
    sketchPath: jspb.Message.getFieldWithDefault(msg, 1, ""),
    archivePath: jspb.Message.getFieldWithDefault(msg, 2, ""),
    includeBuildDir: jspb.Message.getBooleanFieldWithDefault(msg, 3, false)
  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.cc.arduino.cli.commands.ArchiveSketchReq}
 */
proto.cc.arduino.cli.commands.ArchiveSketchReq.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.cc.arduino.cli.commands.ArchiveSketchReq;
  return proto.cc.arduino.cli.commands.ArchiveSketchReq.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.cc.arduino.cli.commands.ArchiveSketchReq} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.cc.arduino.cli.commands.ArchiveSketchReq}
 */
proto.cc.arduino.cli.commands.ArchiveSketchReq.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    case 1:
      var value = /** @type {string} */ (reader.readString());
      msg.setSketchPath(value);
      break;
    case 2:
      var value = /** @type {string} */ (reader.readString());
      msg.setArchivePath(value);
      break;
    case 3:
      var value = /** @type {boolean} */ (reader.readBool());
      msg.setIncludeBuildDir(value);
      break;
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.cc.arduino.cli.commands.ArchiveSketchReq.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.cc.arduino.cli.commands.ArchiveSketchReq.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.cc.arduino.cli.commands.ArchiveSketchReq} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.ArchiveSketchReq.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
  f = message.getSketchPath();
  if (f.length > 0) {
    writer.writeString(
      1,
      f
    );
  }
  f = message.getArchivePath();
  if (f.length > 0) {
    writer.writeString(
      2,
      f
    );
  }
  f = message.getIncludeBuildDir();
  if (f) {
    writer.writeBool(
      3,
      f
    );
  }
};


/**
 * optional string sketch_path = 1;
 * @return {string}
 */
proto.cc.arduino.cli.commands.ArchiveSketchReq.prototype.getSketchPath = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
};


/**
 * @param {string} value
 * @return {!proto.cc.arduino.cli.commands.ArchiveSketchReq} returns this
 */
proto.cc.arduino.cli.commands.ArchiveSketchReq.prototype.setSketchPath = function(value) {
  return jspb.Message.setProto3StringField(this, 1, value);
};


/**
 * optional string archive_path = 2;
 * @return {string}
 */
proto.cc.arduino.cli.commands.ArchiveSketchReq.prototype.getArchivePath = function() {
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
};


/**
 * @param {string} value
 * @return {!proto.cc.arduino.cli.commands.ArchiveSketchReq} returns this
 */
proto.cc.arduino.cli.commands.ArchiveSketchReq.prototype.setArchivePath = function(value) {
  return jspb.Message.setProto3StringField(this, 2, value);
};


/**
 * optional bool include_build_dir = 3;
 * @return {boolean}
 */
proto.cc.arduino.cli.commands.ArchiveSketchReq.prototype.getIncludeBuildDir = function() {
  return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 3, false));
};


/**
 * @param {boolean} value
 * @return {!proto.cc.arduino.cli.commands.ArchiveSketchReq} returns this
 */
proto.cc.arduino.cli.commands.ArchiveSketchReq.prototype.setIncludeBuildDir = function(value) {
  return jspb.Message.setProto3BooleanField(this, 3, value);
};





if (jspb.Message.GENERATE_TO_OBJECT) {
/**
 * Creates an object representation of this proto.
 * Field names that are reserved in JavaScript and will be renamed to pb_name.
 * Optional fields that are not set will be set to undefined.
 * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
 * For the list of reserved names please see:
 *     net/proto2/compiler/js/internal/generator.cc#kKeyword.
 * @param {boolean=} opt_includeInstance Deprecated. whether to include the
 *     JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @return {!Object}
 */
proto.cc.arduino.cli.commands.ArchiveSketchResp.prototype.toObject = function(opt_includeInstance) {
  return proto.cc.arduino.cli.commands.ArchiveSketchResp.toObject(opt_includeInstance, this);
};


/**
 * Static version of the {@see toObject} method.
 * @param {boolean|undefined} includeInstance Deprecated. Whether to include
 *     the JSPB instance for transitional soy proto support:
 *     http://goto/soy-param-migration
 * @param {!proto.cc.arduino.cli.commands.ArchiveSketchResp} msg The msg instance to transform.
 * @return {!Object}
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.ArchiveSketchResp.toObject = function(includeInstance, msg) {
  var f, obj = {

  };

  if (includeInstance) {
    obj.$jspbMessageInstance = msg;
  }
  return obj;
};
}


/**
 * Deserializes binary data (in protobuf wire format).
 * @param {jspb.ByteSource} bytes The bytes to deserialize.
 * @return {!proto.cc.arduino.cli.commands.ArchiveSketchResp}
 */
proto.cc.arduino.cli.commands.ArchiveSketchResp.deserializeBinary = function(bytes) {
  var reader = new jspb.BinaryReader(bytes);
  var msg = new proto.cc.arduino.cli.commands.ArchiveSketchResp;
  return proto.cc.arduino.cli.commands.ArchiveSketchResp.deserializeBinaryFromReader(msg, reader);
};


/**
 * Deserializes binary data (in protobuf wire format) from the
 * given reader into the given message object.
 * @param {!proto.cc.arduino.cli.commands.ArchiveSketchResp} msg The message object to deserialize into.
 * @param {!jspb.BinaryReader} reader The BinaryReader to use.
 * @return {!proto.cc.arduino.cli.commands.ArchiveSketchResp}
 */
proto.cc.arduino.cli.commands.ArchiveSketchResp.deserializeBinaryFromReader = function(msg, reader) {
  while (reader.nextField()) {
    if (reader.isEndGroup()) {
      break;
    }
    var field = reader.getFieldNumber();
    switch (field) {
    default:
      reader.skipField();
      break;
    }
  }
  return msg;
};


/**
 * Serializes the message to binary data (in protobuf wire format).
 * @return {!Uint8Array}
 */
proto.cc.arduino.cli.commands.ArchiveSketchResp.prototype.serializeBinary = function() {
  var writer = new jspb.BinaryWriter();
  proto.cc.arduino.cli.commands.ArchiveSketchResp.serializeBinaryToWriter(this, writer);
  return writer.getResultBuffer();
};


/**
 * Serializes the given message to binary data (in protobuf wire
 * format), writing to the given BinaryWriter.
 * @param {!proto.cc.arduino.cli.commands.ArchiveSketchResp} message
 * @param {!jspb.BinaryWriter} writer
 * @suppress {unusedLocalVariables} f is only used for nested messages
 */
proto.cc.arduino.cli.commands.ArchiveSketchResp.serializeBinaryToWriter = function(message, writer) {
  var f = undefined;
};


goog.object.extend(exports, proto.cc.arduino.cli.commands);
