@vertexvis/viewer 0.22.1-testing.0 → 0.22.1-testing.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/{entities-a0db2d78.js → entities-9fad8808.js} +2 -2
- package/dist/cjs/{entities-a0db2d78.js.map → entities-9fad8808.js.map} +1 -1
- package/dist/cjs/index.cjs.js +5 -4
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/mapper-ac34f608.js +27 -0
- package/dist/cjs/mapper-ac34f608.js.map +1 -0
- package/dist/cjs/{queries-d31d23d4.js → queries-ea895dd6.js} +34 -3
- package/dist/cjs/queries-ea895dd6.js.map +1 -0
- package/dist/cjs/{scene_view_api_pb-0c5fdc13.js → scene_view_api_pb-61f663af.js} +605 -1
- package/dist/cjs/scene_view_api_pb-61f663af.js.map +1 -0
- package/dist/cjs/{scene_view_api_pb_service-4f9e3f90.js → scene_view_api_pb_service-bd6f25d0.js} +42 -2
- package/dist/cjs/scene_view_api_pb_service-bd6f25d0.js.map +1 -0
- package/dist/cjs/vertex-viewer-measurement-distance.cjs.entry.js +1 -1
- package/dist/cjs/vertex-viewer-measurement-line_2.cjs.entry.js +1 -1
- package/dist/cjs/vertex-viewer-measurement-precise.cjs.entry.js +3 -3
- package/dist/cjs/vertex-viewer-pin-group.cjs.entry.js +2 -2
- package/dist/cjs/vertex-viewer.cjs.entry.js +5 -4
- package/dist/cjs/vertex-viewer.cjs.entry.js.map +1 -1
- package/dist/cjs/viewer.cjs.js +1 -1
- package/dist/collection/components/viewer/viewer.js +25 -0
- package/dist/collection/components/viewer/viewer.js.map +1 -1
- package/dist/collection/index.js +1 -0
- package/dist/collection/index.js.map +1 -1
- package/dist/collection/lib/pmi/controller.js +39 -0
- package/dist/collection/lib/pmi/controller.js.map +1 -0
- package/dist/collection/lib/pmi/index.js +6 -0
- package/dist/collection/lib/pmi/index.js.map +1 -0
- package/dist/collection/lib/pmi/mapper.js +9 -0
- package/dist/collection/lib/pmi/mapper.js.map +1 -0
- package/dist/collection/lib/pmi/types.js +5 -0
- package/dist/collection/lib/pmi/types.js.map +1 -0
- package/dist/collection/testing/pmi.js +20 -0
- package/dist/collection/testing/pmi.js.map +1 -0
- package/dist/components/index.js +1 -1
- package/dist/components/mapper2.js +7 -3
- package/dist/components/mapper2.js.map +1 -1
- package/dist/components/queries.js +32 -2
- package/dist/components/queries.js.map +1 -1
- package/dist/components/scene_view_api_pb.js +604 -0
- package/dist/components/scene_view_api_pb.js.map +1 -1
- package/dist/components/scene_view_api_pb_service.js +40 -0
- package/dist/components/scene_view_api_pb_service.js.map +1 -1
- package/dist/components/vertex-viewer.js +3 -1
- package/dist/components/vertex-viewer.js.map +1 -1
- package/dist/esm/{entities-632f31f3.js → entities-9d4e336b.js} +2 -2
- package/dist/esm/{entities-632f31f3.js.map → entities-9d4e336b.js.map} +1 -1
- package/dist/esm/index.js +4 -4
- package/dist/esm/index.mjs +4 -4
- package/dist/esm/loader.js +1 -1
- package/dist/esm/loader.mjs +1 -1
- package/dist/esm/mapper-b3a6eca5.js +23 -0
- package/dist/esm/mapper-b3a6eca5.js.map +1 -0
- package/dist/esm/{queries-40a25625.js → queries-f2b5a440.js} +34 -4
- package/dist/esm/queries-f2b5a440.js.map +1 -0
- package/dist/esm/{scene_view_api_pb-1d91cc93.js → scene_view_api_pb-c030fd23.js} +605 -1
- package/dist/esm/scene_view_api_pb-c030fd23.js.map +1 -0
- package/dist/esm/{scene_view_api_pb_service-9f20d437.js → scene_view_api_pb_service-65caee11.js} +42 -2
- package/dist/esm/scene_view_api_pb_service-65caee11.js.map +1 -0
- package/dist/esm/vertex-viewer-measurement-distance.entry.js +1 -1
- package/dist/esm/vertex-viewer-measurement-line_2.entry.js +1 -1
- package/dist/esm/vertex-viewer-measurement-precise.entry.js +3 -3
- package/dist/esm/vertex-viewer-pin-group.entry.js +2 -2
- package/dist/esm/vertex-viewer.entry.js +5 -4
- package/dist/esm/vertex-viewer.entry.js.map +1 -1
- package/dist/esm/viewer.js +1 -1
- package/dist/types/components/viewer/viewer.d.ts +7 -0
- package/dist/types/components.d.ts +11 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/lib/pmi/controller.d.ts +16 -0
- package/dist/types/lib/pmi/index.d.ts +2 -0
- package/dist/types/lib/pmi/mapper.d.ts +4 -0
- package/dist/types/lib/pmi/types.d.ts +10 -0
- package/dist/types/testing/pmi.d.ts +5 -0
- package/dist/viewer/index.esm.js +1 -1
- package/dist/viewer/index.esm.js.map +1 -1
- package/dist/viewer/p-187f783f.entry.js +5 -0
- package/dist/viewer/p-187f783f.entry.js.map +1 -0
- package/dist/viewer/p-32bff740.js +5 -0
- package/dist/viewer/p-32bff740.js.map +1 -0
- package/dist/viewer/{p-9d0c84ab.entry.js → p-4b7b629a.entry.js} +2 -2
- package/dist/viewer/p-8af6917b.js +5 -0
- package/dist/viewer/p-8af6917b.js.map +1 -0
- package/dist/viewer/{p-34dce39f.js → p-90bbb5f6.js} +2 -2
- package/dist/viewer/{p-9094c563.entry.js → p-9de90d0e.entry.js} +2 -2
- package/dist/viewer/{p-b9965b9b.entry.js → p-b3257f48.entry.js} +2 -2
- package/dist/viewer/{p-076e9e65.entry.js → p-d10f7459.entry.js} +2 -2
- package/dist/viewer/p-d36d5971.js +5 -0
- package/dist/viewer/p-d36d5971.js.map +1 -0
- package/dist/viewer/p-f0c0cf0b.js +5 -0
- package/dist/viewer/p-f0c0cf0b.js.map +1 -0
- package/dist/viewer/viewer.esm.js +1 -1
- package/dist/viewer/viewer.esm.js.map +1 -1
- package/package.json +8 -8
- package/dist/cjs/mapper-f168a1a5.js +0 -22
- package/dist/cjs/mapper-f168a1a5.js.map +0 -1
- package/dist/cjs/queries-d31d23d4.js.map +0 -1
- package/dist/cjs/scene_view_api_pb-0c5fdc13.js.map +0 -1
- package/dist/cjs/scene_view_api_pb_service-4f9e3f90.js.map +0 -1
- package/dist/esm/mapper-826430a2.js +0 -19
- package/dist/esm/mapper-826430a2.js.map +0 -1
- package/dist/esm/queries-40a25625.js.map +0 -1
- package/dist/esm/scene_view_api_pb-1d91cc93.js.map +0 -1
- package/dist/esm/scene_view_api_pb_service-9f20d437.js.map +0 -1
- package/dist/viewer/p-2800111a.js +0 -5
- package/dist/viewer/p-2800111a.js.map +0 -1
- package/dist/viewer/p-2924ed4a.entry.js +0 -5
- package/dist/viewer/p-2924ed4a.entry.js.map +0 -1
- package/dist/viewer/p-9f190847.js +0 -5
- package/dist/viewer/p-9f190847.js.map +0 -1
- package/dist/viewer/p-a297836a.js +0 -5
- package/dist/viewer/p-a297836a.js.map +0 -1
- package/dist/viewer/p-aeaafe7f.js +0 -5
- package/dist/viewer/p-aeaafe7f.js.map +0 -1
- /package/dist/viewer/{p-9d0c84ab.entry.js.map → p-4b7b629a.entry.js.map} +0 -0
- /package/dist/viewer/{p-34dce39f.js.map → p-90bbb5f6.js.map} +0 -0
- /package/dist/viewer/{p-9094c563.entry.js.map → p-9de90d0e.entry.js.map} +0 -0
- /package/dist/viewer/{p-b9965b9b.entry.js.map → p-b3257f48.entry.js.map} +0 -0
- /package/dist/viewer/{p-076e9e65.entry.js.map → p-d10f7459.entry.js.map} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"file":"scene_view_api_pb-0c5fdc13.js","mappings":"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","names":["jspb","core_protos_uuid_pb","google_protobuf_any_pb","core_protos_geometry_pb","google_protobuf_timestamp_pb","google_protobuf_wrappers_pb","core_protos_representation_pb","core_protos_paging_pb","sceneview_protos_domain_pb","core_protos_model_views_pb","core_protos_scene_annotations_pb","core_protos_model_entity_pb","core_protos_measurement_pb"],"sources":["../../node_modules/@vertexvis/scene-view-protos/core/protos/uuid_pb.js","../../node_modules/google-protobuf/google/protobuf/any_pb.js","../../node_modules/@vertexvis/scene-view-protos/core/protos/model_entity_pb.js","../../node_modules/@vertexvis/scene-view-protos/core/protos/geometry_pb.js","../../node_modules/google-protobuf/google/protobuf/timestamp_pb.js","../../node_modules/@vertexvis/scene-view-protos/core/protos/model_views_pb.js","../../node_modules/@vertexvis/scene-view-protos/core/protos/aws_pb.js","../../node_modules/@vertexvis/scene-view-protos/core/protos/measurement_pb.js","../../node_modules/@vertexvis/scene-view-protos/core/protos/paging_pb.js","../../node_modules/@vertexvis/scene-view-protos/core/protos/scene_annotations_pb.js","../../node_modules/@vertexvis/scene-view-protos/core/protos/representation_pb.js","../../node_modules/@vertexvis/scene-view-protos/sceneview/protos/domain_pb.js","../../node_modules/@vertexvis/scene-view-protos/sceneview/protos/scene_view_api_pb.js"],"sourcesContent":["/**\n * @fileoverview\n * @enhanceable\n * @suppress {messageConventions} JS Compiler reports an error if a variable or\n * field starts with 'MSG_' and isn't a translatable message.\n * @public\n */\n// GENERATED CODE -- DO NOT EDIT!\n\nvar jspb = require('google-protobuf');\nvar goog = jspb;\nvar global = Function('return this')();\n\ngoog.exportSymbol('proto.vertexvis.protobuf.core.Uuid', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.Uuid2l', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.UuidArray', null, global);\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.Uuid = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.Uuid, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.Uuid.displayName = 'proto.vertexvis.protobuf.core.Uuid';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.Uuid.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.Uuid.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.Uuid} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Uuid.toObject = function(includeInstance, msg) {\n var f, obj = {\n hex: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.Uuid}\n */\nproto.vertexvis.protobuf.core.Uuid.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.Uuid;\n return proto.vertexvis.protobuf.core.Uuid.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.Uuid} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.Uuid}\n */\nproto.vertexvis.protobuf.core.Uuid.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setHex(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.Uuid.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.Uuid.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.Uuid} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Uuid.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getHex();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string hex = 1;\n * @return {string}\n */\nproto.vertexvis.protobuf.core.Uuid.prototype.getHex = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.vertexvis.protobuf.core.Uuid.prototype.setHex = function(value) {\n jspb.Message.setProto3StringField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.Uuid2l = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.Uuid2l, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.Uuid2l.displayName = 'proto.vertexvis.protobuf.core.Uuid2l';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.Uuid2l.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.Uuid2l.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.Uuid2l} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Uuid2l.toObject = function(includeInstance, msg) {\n var f, obj = {\n msb: jspb.Message.getFieldWithDefault(msg, 1, \"0\"),\n lsb: jspb.Message.getFieldWithDefault(msg, 2, \"0\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.Uuid2l}\n */\nproto.vertexvis.protobuf.core.Uuid2l.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.Uuid2l;\n return proto.vertexvis.protobuf.core.Uuid2l.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.Uuid2l} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.Uuid2l}\n */\nproto.vertexvis.protobuf.core.Uuid2l.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readSfixed64String());\n msg.setMsb(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readSfixed64String());\n msg.setLsb(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.Uuid2l.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.Uuid2l.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.Uuid2l} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Uuid2l.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getMsb();\n if (parseInt(f, 10) !== 0) {\n writer.writeSfixed64String(\n 1,\n f\n );\n }\n f = message.getLsb();\n if (parseInt(f, 10) !== 0) {\n writer.writeSfixed64String(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional sfixed64 msb = 1;\n * @return {string}\n */\nproto.vertexvis.protobuf.core.Uuid2l.prototype.getMsb = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"0\"));\n};\n\n\n/** @param {string} value */\nproto.vertexvis.protobuf.core.Uuid2l.prototype.setMsb = function(value) {\n jspb.Message.setProto3StringIntField(this, 1, value);\n};\n\n\n/**\n * optional sfixed64 lsb = 2;\n * @return {string}\n */\nproto.vertexvis.protobuf.core.Uuid2l.prototype.getLsb = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"0\"));\n};\n\n\n/** @param {string} value */\nproto.vertexvis.protobuf.core.Uuid2l.prototype.setLsb = function(value) {\n jspb.Message.setProto3StringIntField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.UuidArray = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.vertexvis.protobuf.core.UuidArray.repeatedFields_, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.UuidArray, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.UuidArray.displayName = 'proto.vertexvis.protobuf.core.UuidArray';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array<number>}\n * @const\n */\nproto.vertexvis.protobuf.core.UuidArray.repeatedFields_ = [1,2];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.UuidArray.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.UuidArray.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.UuidArray} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.UuidArray.toObject = function(includeInstance, msg) {\n var f, obj = {\n msbsList: jspb.Message.getRepeatedField(msg, 1),\n lsbsList: jspb.Message.getRepeatedField(msg, 2)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.UuidArray}\n */\nproto.vertexvis.protobuf.core.UuidArray.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.UuidArray;\n return proto.vertexvis.protobuf.core.UuidArray.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.UuidArray} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.UuidArray}\n */\nproto.vertexvis.protobuf.core.UuidArray.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!Array<string>} */ (reader.readPackedSfixed64String());\n msg.setMsbsList(value);\n break;\n case 2:\n var value = /** @type {!Array<string>} */ (reader.readPackedSfixed64String());\n msg.setLsbsList(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.UuidArray.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.UuidArray.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.UuidArray} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.UuidArray.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getMsbsList();\n if (f.length > 0) {\n writer.writePackedSfixed64String(\n 1,\n f\n );\n }\n f = message.getLsbsList();\n if (f.length > 0) {\n writer.writePackedSfixed64String(\n 2,\n f\n );\n }\n};\n\n\n/**\n * repeated sfixed64 msbs = 1;\n * @return {!Array<string>}\n */\nproto.vertexvis.protobuf.core.UuidArray.prototype.getMsbsList = function() {\n return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 1));\n};\n\n\n/** @param {!Array<string>} value */\nproto.vertexvis.protobuf.core.UuidArray.prototype.setMsbsList = function(value) {\n jspb.Message.setField(this, 1, value || []);\n};\n\n\n/**\n * @param {!string} value\n * @param {number=} opt_index\n */\nproto.vertexvis.protobuf.core.UuidArray.prototype.addMsbs = function(value, opt_index) {\n jspb.Message.addToRepeatedField(this, 1, value, opt_index);\n};\n\n\nproto.vertexvis.protobuf.core.UuidArray.prototype.clearMsbsList = function() {\n this.setMsbsList([]);\n};\n\n\n/**\n * repeated sfixed64 lsbs = 2;\n * @return {!Array<string>}\n */\nproto.vertexvis.protobuf.core.UuidArray.prototype.getLsbsList = function() {\n return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 2));\n};\n\n\n/** @param {!Array<string>} value */\nproto.vertexvis.protobuf.core.UuidArray.prototype.setLsbsList = function(value) {\n jspb.Message.setField(this, 2, value || []);\n};\n\n\n/**\n * @param {!string} value\n * @param {number=} opt_index\n */\nproto.vertexvis.protobuf.core.UuidArray.prototype.addLsbs = function(value, opt_index) {\n jspb.Message.addToRepeatedField(this, 2, value, opt_index);\n};\n\n\nproto.vertexvis.protobuf.core.UuidArray.prototype.clearLsbsList = function() {\n this.setLsbsList([]);\n};\n\n\ngoog.object.extend(exports, proto.vertexvis.protobuf.core);\n","// source: google/protobuf/any.proto\n/**\n * @fileoverview\n * @enhanceable\n * @suppress {missingRequire} reports error on implicit type usages.\n * @suppress {messageConventions} JS Compiler reports an error if a variable or\n * field starts with 'MSG_' and isn't a translatable message.\n * @public\n */\n// GENERATED CODE -- DO NOT EDIT!\n/* eslint-disable */\n// @ts-nocheck\n\nvar jspb = require('google-protobuf');\nvar goog = jspb;\nvar global = (function() {\n if (this) { return this; }\n if (typeof window !== 'undefined') { return window; }\n if (typeof global !== 'undefined') { return global; }\n if (typeof self !== 'undefined') { return self; }\n return Function('return this')();\n}.call(null));\n\ngoog.exportSymbol('proto.google.protobuf.Any', null, global);\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.google.protobuf.Any = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.google.protobuf.Any, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.google.protobuf.Any.displayName = 'proto.google.protobuf.Any';\n}\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.google.protobuf.Any.prototype.toObject = function(opt_includeInstance) {\n return proto.google.protobuf.Any.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.google.protobuf.Any} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.google.protobuf.Any.toObject = function(includeInstance, msg) {\n var f, obj = {\n typeUrl: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n value: msg.getValue_asB64()\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.google.protobuf.Any}\n */\nproto.google.protobuf.Any.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.google.protobuf.Any;\n return proto.google.protobuf.Any.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.google.protobuf.Any} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.google.protobuf.Any}\n */\nproto.google.protobuf.Any.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setTypeUrl(value);\n break;\n case 2:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setValue(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.google.protobuf.Any.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.google.protobuf.Any.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.google.protobuf.Any} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.google.protobuf.Any.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTypeUrl();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getValue_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional string type_url = 1;\n * @return {string}\n */\nproto.google.protobuf.Any.prototype.getTypeUrl = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * @param {string} value\n * @return {!proto.google.protobuf.Any} returns this\n */\nproto.google.protobuf.Any.prototype.setTypeUrl = function(value) {\n return jspb.Message.setProto3StringField(this, 1, value);\n};\n\n\n/**\n * optional bytes value = 2;\n * @return {!(string|Uint8Array)}\n */\nproto.google.protobuf.Any.prototype.getValue = function() {\n return /** @type {!(string|Uint8Array)} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/**\n * optional bytes value = 2;\n * This is a type-conversion wrapper around `getValue()`\n * @return {string}\n */\nproto.google.protobuf.Any.prototype.getValue_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getValue()));\n};\n\n\n/**\n * optional bytes value = 2;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getValue()`\n * @return {!Uint8Array}\n */\nproto.google.protobuf.Any.prototype.getValue_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getValue()));\n};\n\n\n/**\n * @param {!(string|Uint8Array)} value\n * @return {!proto.google.protobuf.Any} returns this\n */\nproto.google.protobuf.Any.prototype.setValue = function(value) {\n return jspb.Message.setProto3BytesField(this, 2, value);\n};\n\n\ngoog.object.extend(exports, proto.google.protobuf);\n/* This code will be inserted into generated code for\n * google/protobuf/any.proto. */\n\n/**\n * Returns the type name contained in this instance, if any.\n * @return {string|undefined}\n */\nproto.google.protobuf.Any.prototype.getTypeName = function() {\n return this.getTypeUrl().split('/').pop();\n};\n\n\n/**\n * Packs the given message instance into this Any.\n * For binary format usage only.\n * @param {!Uint8Array} serialized The serialized data to pack.\n * @param {string} name The type name of this message object.\n * @param {string=} opt_typeUrlPrefix the type URL prefix.\n */\nproto.google.protobuf.Any.prototype.pack = function(serialized, name,\n opt_typeUrlPrefix) {\n if (!opt_typeUrlPrefix) {\n opt_typeUrlPrefix = 'type.googleapis.com/';\n }\n\n if (opt_typeUrlPrefix.substr(-1) != '/') {\n this.setTypeUrl(opt_typeUrlPrefix + '/' + name);\n } else {\n this.setTypeUrl(opt_typeUrlPrefix + name);\n }\n\n this.setValue(serialized);\n};\n\n\n/**\n * @template T\n * Unpacks this Any into the given message object.\n * @param {function(Uint8Array):T} deserialize Function that will deserialize\n * the binary data properly.\n * @param {string} name The expected type name of this message object.\n * @return {?T} If the name matched the expected name, returns the deserialized\n * object, otherwise returns null.\n */\nproto.google.protobuf.Any.prototype.unpack = function(deserialize, name) {\n if (this.getTypeName() == name) {\n return deserialize(this.getValue_asU8());\n } else {\n return null;\n }\n};\n","/**\n * @fileoverview\n * @enhanceable\n * @suppress {messageConventions} JS Compiler reports an error if a variable or\n * field starts with 'MSG_' and isn't a translatable message.\n * @public\n */\n// GENERATED CODE -- DO NOT EDIT!\n\nvar jspb = require('google-protobuf');\nvar goog = jspb;\nvar global = Function('return this')();\n\nvar core_protos_uuid_pb = require('../../core/protos/uuid_pb.js');\nvar google_protobuf_any_pb = require('google-protobuf/google/protobuf/any_pb.js');\ngoog.exportSymbol('proto.vertexvis.protobuf.core.ModelEntity', null, global);\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.ModelEntity = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.vertexvis.protobuf.core.ModelEntity.repeatedFields_, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.ModelEntity, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.ModelEntity.displayName = 'proto.vertexvis.protobuf.core.ModelEntity';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array<number>}\n * @const\n */\nproto.vertexvis.protobuf.core.ModelEntity.repeatedFields_ = [3];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.ModelEntity.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.ModelEntity.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.ModelEntity} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.ModelEntity.toObject = function(includeInstance, msg) {\n var f, obj = {\n entityId: jspb.Message.getFieldWithDefault(msg, 1, 0),\n sceneItemId: (f = msg.getSceneItemId()) && core_protos_uuid_pb.Uuid.toObject(includeInstance, f),\n detailsList: jspb.Message.toObjectList(msg.getDetailsList(),\n google_protobuf_any_pb.Any.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.ModelEntity}\n */\nproto.vertexvis.protobuf.core.ModelEntity.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.ModelEntity;\n return proto.vertexvis.protobuf.core.ModelEntity.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.ModelEntity} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.ModelEntity}\n */\nproto.vertexvis.protobuf.core.ModelEntity.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setEntityId(value);\n break;\n case 2:\n var value = new core_protos_uuid_pb.Uuid;\n reader.readMessage(value,core_protos_uuid_pb.Uuid.deserializeBinaryFromReader);\n msg.setSceneItemId(value);\n break;\n case 3:\n var value = new google_protobuf_any_pb.Any;\n reader.readMessage(value,google_protobuf_any_pb.Any.deserializeBinaryFromReader);\n msg.addDetails(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.ModelEntity.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.ModelEntity.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.ModelEntity} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.ModelEntity.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getEntityId();\n if (f !== 0) {\n writer.writeInt64(\n 1,\n f\n );\n }\n f = message.getSceneItemId();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n core_protos_uuid_pb.Uuid.serializeBinaryToWriter\n );\n }\n f = message.getDetailsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 3,\n f,\n google_protobuf_any_pb.Any.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional int64 entity_id = 1;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.ModelEntity.prototype.getEntityId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.ModelEntity.prototype.setEntityId = function(value) {\n jspb.Message.setProto3IntField(this, 1, value);\n};\n\n\n/**\n * optional Uuid scene_item_id = 2;\n * @return {?proto.vertexvis.protobuf.core.Uuid}\n */\nproto.vertexvis.protobuf.core.ModelEntity.prototype.getSceneItemId = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Uuid} */ (\n jspb.Message.getWrapperField(this, core_protos_uuid_pb.Uuid, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Uuid|undefined} value */\nproto.vertexvis.protobuf.core.ModelEntity.prototype.setSceneItemId = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.ModelEntity.prototype.clearSceneItemId = function() {\n this.setSceneItemId(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.ModelEntity.prototype.hasSceneItemId = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n/**\n * repeated google.protobuf.Any details = 3;\n * @return {!Array<!proto.google.protobuf.Any>}\n */\nproto.vertexvis.protobuf.core.ModelEntity.prototype.getDetailsList = function() {\n return /** @type{!Array<!proto.google.protobuf.Any>} */ (\n jspb.Message.getRepeatedWrapperField(this, google_protobuf_any_pb.Any, 3));\n};\n\n\n/** @param {!Array<!proto.google.protobuf.Any>} value */\nproto.vertexvis.protobuf.core.ModelEntity.prototype.setDetailsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 3, value);\n};\n\n\n/**\n * @param {!proto.google.protobuf.Any=} opt_value\n * @param {number=} opt_index\n * @return {!proto.google.protobuf.Any}\n */\nproto.vertexvis.protobuf.core.ModelEntity.prototype.addDetails = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 3, opt_value, proto.google.protobuf.Any, opt_index);\n};\n\n\nproto.vertexvis.protobuf.core.ModelEntity.prototype.clearDetailsList = function() {\n this.setDetailsList([]);\n};\n\n\ngoog.object.extend(exports, proto.vertexvis.protobuf.core);\n","/**\n * @fileoverview\n * @enhanceable\n * @suppress {messageConventions} JS Compiler reports an error if a variable or\n * field starts with 'MSG_' and isn't a translatable message.\n * @public\n */\n// GENERATED CODE -- DO NOT EDIT!\n\nvar jspb = require('google-protobuf');\nvar goog = jspb;\nvar global = Function('return this')();\n\ngoog.exportSymbol('proto.vertexvis.protobuf.core.AffineMatrix4d', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.AffineMatrix4f', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.AffineTransform2d', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.AffineTransform2f', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.AffineTransform3d', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.AffineTransform3f', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.BBox2d', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.BBox2f', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.BBox2i', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.BBox3d', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.BBox3f', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.BoundingBox3f', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.Dimension2i', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.Indexed3DTriangleSet', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.IndexedVector3fArray', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.LinearTransform2d', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.LinearTransform2f', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.LinearTransform3d', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.LinearTransform3f', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.Matrix4x4d', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.Matrix4x4f', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.Plane', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.Point2i', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.Vector2d', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.Vector2f', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.Vector2i', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.Vector3d', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.Vector3f', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.Vector4d', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.Vector4f', null, global);\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.Vector2i = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.Vector2i, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.Vector2i.displayName = 'proto.vertexvis.protobuf.core.Vector2i';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.Vector2i.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.Vector2i.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.Vector2i} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Vector2i.toObject = function(includeInstance, msg) {\n var f, obj = {\n x: jspb.Message.getFieldWithDefault(msg, 1, 0),\n y: jspb.Message.getFieldWithDefault(msg, 2, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.Vector2i}\n */\nproto.vertexvis.protobuf.core.Vector2i.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.Vector2i;\n return proto.vertexvis.protobuf.core.Vector2i.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.Vector2i} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.Vector2i}\n */\nproto.vertexvis.protobuf.core.Vector2i.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setX(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setY(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.Vector2i.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.Vector2i.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.Vector2i} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Vector2i.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getX();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n f = message.getY();\n if (f !== 0) {\n writer.writeInt32(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional int32 x = 1;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.Vector2i.prototype.getX = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.Vector2i.prototype.setX = function(value) {\n jspb.Message.setProto3IntField(this, 1, value);\n};\n\n\n/**\n * optional int32 y = 2;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.Vector2i.prototype.getY = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.Vector2i.prototype.setY = function(value) {\n jspb.Message.setProto3IntField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.Vector2f = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.Vector2f, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.Vector2f.displayName = 'proto.vertexvis.protobuf.core.Vector2f';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.Vector2f.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.Vector2f.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.Vector2f} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Vector2f.toObject = function(includeInstance, msg) {\n var f, obj = {\n x: +jspb.Message.getFieldWithDefault(msg, 1, 0.0),\n y: +jspb.Message.getFieldWithDefault(msg, 2, 0.0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.Vector2f}\n */\nproto.vertexvis.protobuf.core.Vector2f.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.Vector2f;\n return proto.vertexvis.protobuf.core.Vector2f.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.Vector2f} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.Vector2f}\n */\nproto.vertexvis.protobuf.core.Vector2f.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readFloat());\n msg.setX(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readFloat());\n msg.setY(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.Vector2f.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.Vector2f.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.Vector2f} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Vector2f.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getX();\n if (f !== 0.0) {\n writer.writeFloat(\n 1,\n f\n );\n }\n f = message.getY();\n if (f !== 0.0) {\n writer.writeFloat(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional float x = 1;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.Vector2f.prototype.getX = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 1, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.Vector2f.prototype.setX = function(value) {\n jspb.Message.setProto3FloatField(this, 1, value);\n};\n\n\n/**\n * optional float y = 2;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.Vector2f.prototype.getY = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 2, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.Vector2f.prototype.setY = function(value) {\n jspb.Message.setProto3FloatField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.Vector2d = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.Vector2d, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.Vector2d.displayName = 'proto.vertexvis.protobuf.core.Vector2d';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.Vector2d.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.Vector2d.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.Vector2d} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Vector2d.toObject = function(includeInstance, msg) {\n var f, obj = {\n x: +jspb.Message.getFieldWithDefault(msg, 1, 0.0),\n y: +jspb.Message.getFieldWithDefault(msg, 2, 0.0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.Vector2d}\n */\nproto.vertexvis.protobuf.core.Vector2d.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.Vector2d;\n return proto.vertexvis.protobuf.core.Vector2d.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.Vector2d} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.Vector2d}\n */\nproto.vertexvis.protobuf.core.Vector2d.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setX(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setY(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.Vector2d.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.Vector2d.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.Vector2d} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Vector2d.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getX();\n if (f !== 0.0) {\n writer.writeDouble(\n 1,\n f\n );\n }\n f = message.getY();\n if (f !== 0.0) {\n writer.writeDouble(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional double x = 1;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.Vector2d.prototype.getX = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 1, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.Vector2d.prototype.setX = function(value) {\n jspb.Message.setProto3FloatField(this, 1, value);\n};\n\n\n/**\n * optional double y = 2;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.Vector2d.prototype.getY = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 2, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.Vector2d.prototype.setY = function(value) {\n jspb.Message.setProto3FloatField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.Vector3f = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.Vector3f, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.Vector3f.displayName = 'proto.vertexvis.protobuf.core.Vector3f';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.Vector3f.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.Vector3f.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.Vector3f} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Vector3f.toObject = function(includeInstance, msg) {\n var f, obj = {\n x: +jspb.Message.getFieldWithDefault(msg, 1, 0.0),\n y: +jspb.Message.getFieldWithDefault(msg, 2, 0.0),\n z: +jspb.Message.getFieldWithDefault(msg, 3, 0.0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.Vector3f}\n */\nproto.vertexvis.protobuf.core.Vector3f.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.Vector3f;\n return proto.vertexvis.protobuf.core.Vector3f.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.Vector3f} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.Vector3f}\n */\nproto.vertexvis.protobuf.core.Vector3f.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readFloat());\n msg.setX(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readFloat());\n msg.setY(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readFloat());\n msg.setZ(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.Vector3f.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.Vector3f.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.Vector3f} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Vector3f.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getX();\n if (f !== 0.0) {\n writer.writeFloat(\n 1,\n f\n );\n }\n f = message.getY();\n if (f !== 0.0) {\n writer.writeFloat(\n 2,\n f\n );\n }\n f = message.getZ();\n if (f !== 0.0) {\n writer.writeFloat(\n 3,\n f\n );\n }\n};\n\n\n/**\n * optional float x = 1;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.Vector3f.prototype.getX = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 1, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.Vector3f.prototype.setX = function(value) {\n jspb.Message.setProto3FloatField(this, 1, value);\n};\n\n\n/**\n * optional float y = 2;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.Vector3f.prototype.getY = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 2, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.Vector3f.prototype.setY = function(value) {\n jspb.Message.setProto3FloatField(this, 2, value);\n};\n\n\n/**\n * optional float z = 3;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.Vector3f.prototype.getZ = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 3, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.Vector3f.prototype.setZ = function(value) {\n jspb.Message.setProto3FloatField(this, 3, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.Vector3d = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.Vector3d, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.Vector3d.displayName = 'proto.vertexvis.protobuf.core.Vector3d';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.Vector3d.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.Vector3d.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.Vector3d} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Vector3d.toObject = function(includeInstance, msg) {\n var f, obj = {\n x: +jspb.Message.getFieldWithDefault(msg, 1, 0.0),\n y: +jspb.Message.getFieldWithDefault(msg, 2, 0.0),\n z: +jspb.Message.getFieldWithDefault(msg, 3, 0.0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.Vector3d}\n */\nproto.vertexvis.protobuf.core.Vector3d.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.Vector3d;\n return proto.vertexvis.protobuf.core.Vector3d.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.Vector3d} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.Vector3d}\n */\nproto.vertexvis.protobuf.core.Vector3d.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setX(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setY(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setZ(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.Vector3d.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.Vector3d.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.Vector3d} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Vector3d.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getX();\n if (f !== 0.0) {\n writer.writeDouble(\n 1,\n f\n );\n }\n f = message.getY();\n if (f !== 0.0) {\n writer.writeDouble(\n 2,\n f\n );\n }\n f = message.getZ();\n if (f !== 0.0) {\n writer.writeDouble(\n 3,\n f\n );\n }\n};\n\n\n/**\n * optional double x = 1;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.Vector3d.prototype.getX = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 1, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.Vector3d.prototype.setX = function(value) {\n jspb.Message.setProto3FloatField(this, 1, value);\n};\n\n\n/**\n * optional double y = 2;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.Vector3d.prototype.getY = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 2, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.Vector3d.prototype.setY = function(value) {\n jspb.Message.setProto3FloatField(this, 2, value);\n};\n\n\n/**\n * optional double z = 3;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.Vector3d.prototype.getZ = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 3, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.Vector3d.prototype.setZ = function(value) {\n jspb.Message.setProto3FloatField(this, 3, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.Vector4f = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.Vector4f, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.Vector4f.displayName = 'proto.vertexvis.protobuf.core.Vector4f';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.Vector4f.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.Vector4f.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.Vector4f} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Vector4f.toObject = function(includeInstance, msg) {\n var f, obj = {\n x: +jspb.Message.getFieldWithDefault(msg, 1, 0.0),\n y: +jspb.Message.getFieldWithDefault(msg, 2, 0.0),\n z: +jspb.Message.getFieldWithDefault(msg, 3, 0.0),\n w: +jspb.Message.getFieldWithDefault(msg, 4, 0.0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.Vector4f}\n */\nproto.vertexvis.protobuf.core.Vector4f.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.Vector4f;\n return proto.vertexvis.protobuf.core.Vector4f.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.Vector4f} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.Vector4f}\n */\nproto.vertexvis.protobuf.core.Vector4f.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readFloat());\n msg.setX(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readFloat());\n msg.setY(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readFloat());\n msg.setZ(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readFloat());\n msg.setW(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.Vector4f.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.Vector4f.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.Vector4f} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Vector4f.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getX();\n if (f !== 0.0) {\n writer.writeFloat(\n 1,\n f\n );\n }\n f = message.getY();\n if (f !== 0.0) {\n writer.writeFloat(\n 2,\n f\n );\n }\n f = message.getZ();\n if (f !== 0.0) {\n writer.writeFloat(\n 3,\n f\n );\n }\n f = message.getW();\n if (f !== 0.0) {\n writer.writeFloat(\n 4,\n f\n );\n }\n};\n\n\n/**\n * optional float x = 1;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.Vector4f.prototype.getX = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 1, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.Vector4f.prototype.setX = function(value) {\n jspb.Message.setProto3FloatField(this, 1, value);\n};\n\n\n/**\n * optional float y = 2;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.Vector4f.prototype.getY = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 2, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.Vector4f.prototype.setY = function(value) {\n jspb.Message.setProto3FloatField(this, 2, value);\n};\n\n\n/**\n * optional float z = 3;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.Vector4f.prototype.getZ = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 3, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.Vector4f.prototype.setZ = function(value) {\n jspb.Message.setProto3FloatField(this, 3, value);\n};\n\n\n/**\n * optional float w = 4;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.Vector4f.prototype.getW = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 4, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.Vector4f.prototype.setW = function(value) {\n jspb.Message.setProto3FloatField(this, 4, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.Vector4d = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.Vector4d, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.Vector4d.displayName = 'proto.vertexvis.protobuf.core.Vector4d';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.Vector4d.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.Vector4d.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.Vector4d} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Vector4d.toObject = function(includeInstance, msg) {\n var f, obj = {\n x: +jspb.Message.getFieldWithDefault(msg, 1, 0.0),\n y: +jspb.Message.getFieldWithDefault(msg, 2, 0.0),\n z: +jspb.Message.getFieldWithDefault(msg, 3, 0.0),\n w: +jspb.Message.getFieldWithDefault(msg, 4, 0.0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.Vector4d}\n */\nproto.vertexvis.protobuf.core.Vector4d.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.Vector4d;\n return proto.vertexvis.protobuf.core.Vector4d.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.Vector4d} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.Vector4d}\n */\nproto.vertexvis.protobuf.core.Vector4d.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setX(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setY(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setZ(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setW(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.Vector4d.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.Vector4d.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.Vector4d} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Vector4d.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getX();\n if (f !== 0.0) {\n writer.writeDouble(\n 1,\n f\n );\n }\n f = message.getY();\n if (f !== 0.0) {\n writer.writeDouble(\n 2,\n f\n );\n }\n f = message.getZ();\n if (f !== 0.0) {\n writer.writeDouble(\n 3,\n f\n );\n }\n f = message.getW();\n if (f !== 0.0) {\n writer.writeDouble(\n 4,\n f\n );\n }\n};\n\n\n/**\n * optional double x = 1;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.Vector4d.prototype.getX = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 1, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.Vector4d.prototype.setX = function(value) {\n jspb.Message.setProto3FloatField(this, 1, value);\n};\n\n\n/**\n * optional double y = 2;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.Vector4d.prototype.getY = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 2, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.Vector4d.prototype.setY = function(value) {\n jspb.Message.setProto3FloatField(this, 2, value);\n};\n\n\n/**\n * optional double z = 3;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.Vector4d.prototype.getZ = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 3, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.Vector4d.prototype.setZ = function(value) {\n jspb.Message.setProto3FloatField(this, 3, value);\n};\n\n\n/**\n * optional double w = 4;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.Vector4d.prototype.getW = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 4, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.Vector4d.prototype.setW = function(value) {\n jspb.Message.setProto3FloatField(this, 4, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.BoundingBox3f = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.BoundingBox3f, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.BoundingBox3f.displayName = 'proto.vertexvis.protobuf.core.BoundingBox3f';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.BoundingBox3f.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.BoundingBox3f.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.BoundingBox3f} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.BoundingBox3f.toObject = function(includeInstance, msg) {\n var f, obj = {\n xmin: +jspb.Message.getFieldWithDefault(msg, 1, 0.0),\n xmax: +jspb.Message.getFieldWithDefault(msg, 2, 0.0),\n ymin: +jspb.Message.getFieldWithDefault(msg, 3, 0.0),\n ymax: +jspb.Message.getFieldWithDefault(msg, 4, 0.0),\n zmin: +jspb.Message.getFieldWithDefault(msg, 5, 0.0),\n zmax: +jspb.Message.getFieldWithDefault(msg, 6, 0.0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.BoundingBox3f}\n */\nproto.vertexvis.protobuf.core.BoundingBox3f.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.BoundingBox3f;\n return proto.vertexvis.protobuf.core.BoundingBox3f.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.BoundingBox3f} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.BoundingBox3f}\n */\nproto.vertexvis.protobuf.core.BoundingBox3f.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readFloat());\n msg.setXmin(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readFloat());\n msg.setXmax(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readFloat());\n msg.setYmin(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readFloat());\n msg.setYmax(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readFloat());\n msg.setZmin(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readFloat());\n msg.setZmax(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.BoundingBox3f.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.BoundingBox3f.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.BoundingBox3f} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.BoundingBox3f.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getXmin();\n if (f !== 0.0) {\n writer.writeFloat(\n 1,\n f\n );\n }\n f = message.getXmax();\n if (f !== 0.0) {\n writer.writeFloat(\n 2,\n f\n );\n }\n f = message.getYmin();\n if (f !== 0.0) {\n writer.writeFloat(\n 3,\n f\n );\n }\n f = message.getYmax();\n if (f !== 0.0) {\n writer.writeFloat(\n 4,\n f\n );\n }\n f = message.getZmin();\n if (f !== 0.0) {\n writer.writeFloat(\n 5,\n f\n );\n }\n f = message.getZmax();\n if (f !== 0.0) {\n writer.writeFloat(\n 6,\n f\n );\n }\n};\n\n\n/**\n * optional float xmin = 1;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.BoundingBox3f.prototype.getXmin = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 1, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.BoundingBox3f.prototype.setXmin = function(value) {\n jspb.Message.setProto3FloatField(this, 1, value);\n};\n\n\n/**\n * optional float xmax = 2;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.BoundingBox3f.prototype.getXmax = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 2, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.BoundingBox3f.prototype.setXmax = function(value) {\n jspb.Message.setProto3FloatField(this, 2, value);\n};\n\n\n/**\n * optional float ymin = 3;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.BoundingBox3f.prototype.getYmin = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 3, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.BoundingBox3f.prototype.setYmin = function(value) {\n jspb.Message.setProto3FloatField(this, 3, value);\n};\n\n\n/**\n * optional float ymax = 4;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.BoundingBox3f.prototype.getYmax = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 4, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.BoundingBox3f.prototype.setYmax = function(value) {\n jspb.Message.setProto3FloatField(this, 4, value);\n};\n\n\n/**\n * optional float zmin = 5;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.BoundingBox3f.prototype.getZmin = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 5, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.BoundingBox3f.prototype.setZmin = function(value) {\n jspb.Message.setProto3FloatField(this, 5, value);\n};\n\n\n/**\n * optional float zmax = 6;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.BoundingBox3f.prototype.getZmax = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 6, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.BoundingBox3f.prototype.setZmax = function(value) {\n jspb.Message.setProto3FloatField(this, 6, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.AffineMatrix4f = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.AffineMatrix4f, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.AffineMatrix4f.displayName = 'proto.vertexvis.protobuf.core.AffineMatrix4f';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.AffineMatrix4f.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.AffineMatrix4f.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.AffineMatrix4f} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.AffineMatrix4f.toObject = function(includeInstance, msg) {\n var f, obj = {\n basisX: (f = msg.getBasisX()) && proto.vertexvis.protobuf.core.Vector3f.toObject(includeInstance, f),\n basisY: (f = msg.getBasisY()) && proto.vertexvis.protobuf.core.Vector3f.toObject(includeInstance, f),\n xlate: (f = msg.getXlate()) && proto.vertexvis.protobuf.core.Vector3f.toObject(includeInstance, f),\n scale: +jspb.Message.getFieldWithDefault(msg, 4, 0.0),\n basisZ: (f = msg.getBasisZ()) && proto.vertexvis.protobuf.core.Vector3f.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.AffineMatrix4f}\n */\nproto.vertexvis.protobuf.core.AffineMatrix4f.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.AffineMatrix4f;\n return proto.vertexvis.protobuf.core.AffineMatrix4f.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.AffineMatrix4f} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.AffineMatrix4f}\n */\nproto.vertexvis.protobuf.core.AffineMatrix4f.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.vertexvis.protobuf.core.Vector3f;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector3f.deserializeBinaryFromReader);\n msg.setBasisX(value);\n break;\n case 2:\n var value = new proto.vertexvis.protobuf.core.Vector3f;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector3f.deserializeBinaryFromReader);\n msg.setBasisY(value);\n break;\n case 3:\n var value = new proto.vertexvis.protobuf.core.Vector3f;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector3f.deserializeBinaryFromReader);\n msg.setXlate(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readFloat());\n msg.setScale(value);\n break;\n case 5:\n var value = new proto.vertexvis.protobuf.core.Vector3f;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector3f.deserializeBinaryFromReader);\n msg.setBasisZ(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.AffineMatrix4f.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.AffineMatrix4f.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.AffineMatrix4f} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.AffineMatrix4f.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getBasisX();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.vertexvis.protobuf.core.Vector3f.serializeBinaryToWriter\n );\n }\n f = message.getBasisY();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.vertexvis.protobuf.core.Vector3f.serializeBinaryToWriter\n );\n }\n f = message.getXlate();\n if (f != null) {\n writer.writeMessage(\n 3,\n f,\n proto.vertexvis.protobuf.core.Vector3f.serializeBinaryToWriter\n );\n }\n f = message.getScale();\n if (f !== 0.0) {\n writer.writeFloat(\n 4,\n f\n );\n }\n f = message.getBasisZ();\n if (f != null) {\n writer.writeMessage(\n 5,\n f,\n proto.vertexvis.protobuf.core.Vector3f.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional Vector3f basis_x = 1;\n * @return {?proto.vertexvis.protobuf.core.Vector3f}\n */\nproto.vertexvis.protobuf.core.AffineMatrix4f.prototype.getBasisX = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3f} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector3f, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3f|undefined} value */\nproto.vertexvis.protobuf.core.AffineMatrix4f.prototype.setBasisX = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.core.AffineMatrix4f.prototype.clearBasisX = function() {\n this.setBasisX(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.AffineMatrix4f.prototype.hasBasisX = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional Vector3f basis_y = 2;\n * @return {?proto.vertexvis.protobuf.core.Vector3f}\n */\nproto.vertexvis.protobuf.core.AffineMatrix4f.prototype.getBasisY = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3f} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector3f, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3f|undefined} value */\nproto.vertexvis.protobuf.core.AffineMatrix4f.prototype.setBasisY = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.AffineMatrix4f.prototype.clearBasisY = function() {\n this.setBasisY(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.AffineMatrix4f.prototype.hasBasisY = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n/**\n * optional Vector3f xlate = 3;\n * @return {?proto.vertexvis.protobuf.core.Vector3f}\n */\nproto.vertexvis.protobuf.core.AffineMatrix4f.prototype.getXlate = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3f} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector3f, 3));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3f|undefined} value */\nproto.vertexvis.protobuf.core.AffineMatrix4f.prototype.setXlate = function(value) {\n jspb.Message.setWrapperField(this, 3, value);\n};\n\n\nproto.vertexvis.protobuf.core.AffineMatrix4f.prototype.clearXlate = function() {\n this.setXlate(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.AffineMatrix4f.prototype.hasXlate = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n/**\n * optional float scale = 4;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.AffineMatrix4f.prototype.getScale = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 4, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.AffineMatrix4f.prototype.setScale = function(value) {\n jspb.Message.setProto3FloatField(this, 4, value);\n};\n\n\n/**\n * optional Vector3f basis_z = 5;\n * @return {?proto.vertexvis.protobuf.core.Vector3f}\n */\nproto.vertexvis.protobuf.core.AffineMatrix4f.prototype.getBasisZ = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3f} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector3f, 5));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3f|undefined} value */\nproto.vertexvis.protobuf.core.AffineMatrix4f.prototype.setBasisZ = function(value) {\n jspb.Message.setWrapperField(this, 5, value);\n};\n\n\nproto.vertexvis.protobuf.core.AffineMatrix4f.prototype.clearBasisZ = function() {\n this.setBasisZ(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.AffineMatrix4f.prototype.hasBasisZ = function() {\n return jspb.Message.getField(this, 5) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.AffineMatrix4d = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.AffineMatrix4d, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.AffineMatrix4d.displayName = 'proto.vertexvis.protobuf.core.AffineMatrix4d';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.AffineMatrix4d.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.AffineMatrix4d.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.AffineMatrix4d} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.AffineMatrix4d.toObject = function(includeInstance, msg) {\n var f, obj = {\n basisX: (f = msg.getBasisX()) && proto.vertexvis.protobuf.core.Vector3d.toObject(includeInstance, f),\n basisY: (f = msg.getBasisY()) && proto.vertexvis.protobuf.core.Vector3d.toObject(includeInstance, f),\n xlate: (f = msg.getXlate()) && proto.vertexvis.protobuf.core.Vector3d.toObject(includeInstance, f),\n scale: +jspb.Message.getFieldWithDefault(msg, 4, 0.0),\n basisZ: (f = msg.getBasisZ()) && proto.vertexvis.protobuf.core.Vector3d.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.AffineMatrix4d}\n */\nproto.vertexvis.protobuf.core.AffineMatrix4d.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.AffineMatrix4d;\n return proto.vertexvis.protobuf.core.AffineMatrix4d.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.AffineMatrix4d} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.AffineMatrix4d}\n */\nproto.vertexvis.protobuf.core.AffineMatrix4d.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.vertexvis.protobuf.core.Vector3d;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector3d.deserializeBinaryFromReader);\n msg.setBasisX(value);\n break;\n case 2:\n var value = new proto.vertexvis.protobuf.core.Vector3d;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector3d.deserializeBinaryFromReader);\n msg.setBasisY(value);\n break;\n case 3:\n var value = new proto.vertexvis.protobuf.core.Vector3d;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector3d.deserializeBinaryFromReader);\n msg.setXlate(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setScale(value);\n break;\n case 5:\n var value = new proto.vertexvis.protobuf.core.Vector3d;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector3d.deserializeBinaryFromReader);\n msg.setBasisZ(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.AffineMatrix4d.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.AffineMatrix4d.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.AffineMatrix4d} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.AffineMatrix4d.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getBasisX();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.vertexvis.protobuf.core.Vector3d.serializeBinaryToWriter\n );\n }\n f = message.getBasisY();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.vertexvis.protobuf.core.Vector3d.serializeBinaryToWriter\n );\n }\n f = message.getXlate();\n if (f != null) {\n writer.writeMessage(\n 3,\n f,\n proto.vertexvis.protobuf.core.Vector3d.serializeBinaryToWriter\n );\n }\n f = message.getScale();\n if (f !== 0.0) {\n writer.writeDouble(\n 4,\n f\n );\n }\n f = message.getBasisZ();\n if (f != null) {\n writer.writeMessage(\n 5,\n f,\n proto.vertexvis.protobuf.core.Vector3d.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional Vector3d basis_x = 1;\n * @return {?proto.vertexvis.protobuf.core.Vector3d}\n */\nproto.vertexvis.protobuf.core.AffineMatrix4d.prototype.getBasisX = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3d} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector3d, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3d|undefined} value */\nproto.vertexvis.protobuf.core.AffineMatrix4d.prototype.setBasisX = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.core.AffineMatrix4d.prototype.clearBasisX = function() {\n this.setBasisX(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.AffineMatrix4d.prototype.hasBasisX = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional Vector3d basis_y = 2;\n * @return {?proto.vertexvis.protobuf.core.Vector3d}\n */\nproto.vertexvis.protobuf.core.AffineMatrix4d.prototype.getBasisY = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3d} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector3d, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3d|undefined} value */\nproto.vertexvis.protobuf.core.AffineMatrix4d.prototype.setBasisY = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.AffineMatrix4d.prototype.clearBasisY = function() {\n this.setBasisY(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.AffineMatrix4d.prototype.hasBasisY = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n/**\n * optional Vector3d xlate = 3;\n * @return {?proto.vertexvis.protobuf.core.Vector3d}\n */\nproto.vertexvis.protobuf.core.AffineMatrix4d.prototype.getXlate = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3d} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector3d, 3));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3d|undefined} value */\nproto.vertexvis.protobuf.core.AffineMatrix4d.prototype.setXlate = function(value) {\n jspb.Message.setWrapperField(this, 3, value);\n};\n\n\nproto.vertexvis.protobuf.core.AffineMatrix4d.prototype.clearXlate = function() {\n this.setXlate(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.AffineMatrix4d.prototype.hasXlate = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n/**\n * optional double scale = 4;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.AffineMatrix4d.prototype.getScale = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 4, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.AffineMatrix4d.prototype.setScale = function(value) {\n jspb.Message.setProto3FloatField(this, 4, value);\n};\n\n\n/**\n * optional Vector3d basis_z = 5;\n * @return {?proto.vertexvis.protobuf.core.Vector3d}\n */\nproto.vertexvis.protobuf.core.AffineMatrix4d.prototype.getBasisZ = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3d} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector3d, 5));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3d|undefined} value */\nproto.vertexvis.protobuf.core.AffineMatrix4d.prototype.setBasisZ = function(value) {\n jspb.Message.setWrapperField(this, 5, value);\n};\n\n\nproto.vertexvis.protobuf.core.AffineMatrix4d.prototype.clearBasisZ = function() {\n this.setBasisZ(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.AffineMatrix4d.prototype.hasBasisZ = function() {\n return jspb.Message.getField(this, 5) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.IndexedVector3fArray = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.vertexvis.protobuf.core.IndexedVector3fArray.repeatedFields_, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.IndexedVector3fArray, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.IndexedVector3fArray.displayName = 'proto.vertexvis.protobuf.core.IndexedVector3fArray';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array<number>}\n * @const\n */\nproto.vertexvis.protobuf.core.IndexedVector3fArray.repeatedFields_ = [1,2];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.IndexedVector3fArray.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.IndexedVector3fArray.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.IndexedVector3fArray} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.IndexedVector3fArray.toObject = function(includeInstance, msg) {\n var f, obj = {\n valuesList: jspb.Message.toObjectList(msg.getValuesList(),\n proto.vertexvis.protobuf.core.Vector3f.toObject, includeInstance),\n indicesList: jspb.Message.getRepeatedField(msg, 2)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.IndexedVector3fArray}\n */\nproto.vertexvis.protobuf.core.IndexedVector3fArray.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.IndexedVector3fArray;\n return proto.vertexvis.protobuf.core.IndexedVector3fArray.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.IndexedVector3fArray} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.IndexedVector3fArray}\n */\nproto.vertexvis.protobuf.core.IndexedVector3fArray.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.vertexvis.protobuf.core.Vector3f;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector3f.deserializeBinaryFromReader);\n msg.addValues(value);\n break;\n case 2:\n var value = /** @type {!Array<number>} */ (reader.readPackedUint32());\n msg.setIndicesList(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.IndexedVector3fArray.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.IndexedVector3fArray.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.IndexedVector3fArray} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.IndexedVector3fArray.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getValuesList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.vertexvis.protobuf.core.Vector3f.serializeBinaryToWriter\n );\n }\n f = message.getIndicesList();\n if (f.length > 0) {\n writer.writePackedUint32(\n 2,\n f\n );\n }\n};\n\n\n/**\n * repeated Vector3f values = 1;\n * @return {!Array<!proto.vertexvis.protobuf.core.Vector3f>}\n */\nproto.vertexvis.protobuf.core.IndexedVector3fArray.prototype.getValuesList = function() {\n return /** @type{!Array<!proto.vertexvis.protobuf.core.Vector3f>} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.vertexvis.protobuf.core.Vector3f, 1));\n};\n\n\n/** @param {!Array<!proto.vertexvis.protobuf.core.Vector3f>} value */\nproto.vertexvis.protobuf.core.IndexedVector3fArray.prototype.setValuesList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.vertexvis.protobuf.core.Vector3f=} opt_value\n * @param {number=} opt_index\n * @return {!proto.vertexvis.protobuf.core.Vector3f}\n */\nproto.vertexvis.protobuf.core.IndexedVector3fArray.prototype.addValues = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.vertexvis.protobuf.core.Vector3f, opt_index);\n};\n\n\nproto.vertexvis.protobuf.core.IndexedVector3fArray.prototype.clearValuesList = function() {\n this.setValuesList([]);\n};\n\n\n/**\n * repeated uint32 indices = 2;\n * @return {!Array<number>}\n */\nproto.vertexvis.protobuf.core.IndexedVector3fArray.prototype.getIndicesList = function() {\n return /** @type {!Array<number>} */ (jspb.Message.getRepeatedField(this, 2));\n};\n\n\n/** @param {!Array<number>} value */\nproto.vertexvis.protobuf.core.IndexedVector3fArray.prototype.setIndicesList = function(value) {\n jspb.Message.setField(this, 2, value || []);\n};\n\n\n/**\n * @param {!number} value\n * @param {number=} opt_index\n */\nproto.vertexvis.protobuf.core.IndexedVector3fArray.prototype.addIndices = function(value, opt_index) {\n jspb.Message.addToRepeatedField(this, 2, value, opt_index);\n};\n\n\nproto.vertexvis.protobuf.core.IndexedVector3fArray.prototype.clearIndicesList = function() {\n this.setIndicesList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.Indexed3DTriangleSet = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.Indexed3DTriangleSet, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.Indexed3DTriangleSet.displayName = 'proto.vertexvis.protobuf.core.Indexed3DTriangleSet';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.Indexed3DTriangleSet.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.Indexed3DTriangleSet.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.Indexed3DTriangleSet} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Indexed3DTriangleSet.toObject = function(includeInstance, msg) {\n var f, obj = {\n vertices: (f = msg.getVertices()) && proto.vertexvis.protobuf.core.IndexedVector3fArray.toObject(includeInstance, f),\n normals: (f = msg.getNormals()) && proto.vertexvis.protobuf.core.IndexedVector3fArray.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.Indexed3DTriangleSet}\n */\nproto.vertexvis.protobuf.core.Indexed3DTriangleSet.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.Indexed3DTriangleSet;\n return proto.vertexvis.protobuf.core.Indexed3DTriangleSet.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.Indexed3DTriangleSet} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.Indexed3DTriangleSet}\n */\nproto.vertexvis.protobuf.core.Indexed3DTriangleSet.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.vertexvis.protobuf.core.IndexedVector3fArray;\n reader.readMessage(value,proto.vertexvis.protobuf.core.IndexedVector3fArray.deserializeBinaryFromReader);\n msg.setVertices(value);\n break;\n case 2:\n var value = new proto.vertexvis.protobuf.core.IndexedVector3fArray;\n reader.readMessage(value,proto.vertexvis.protobuf.core.IndexedVector3fArray.deserializeBinaryFromReader);\n msg.setNormals(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.Indexed3DTriangleSet.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.Indexed3DTriangleSet.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.Indexed3DTriangleSet} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Indexed3DTriangleSet.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getVertices();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.vertexvis.protobuf.core.IndexedVector3fArray.serializeBinaryToWriter\n );\n }\n f = message.getNormals();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.vertexvis.protobuf.core.IndexedVector3fArray.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional IndexedVector3fArray vertices = 1;\n * @return {?proto.vertexvis.protobuf.core.IndexedVector3fArray}\n */\nproto.vertexvis.protobuf.core.Indexed3DTriangleSet.prototype.getVertices = function() {\n return /** @type{?proto.vertexvis.protobuf.core.IndexedVector3fArray} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.IndexedVector3fArray, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.IndexedVector3fArray|undefined} value */\nproto.vertexvis.protobuf.core.Indexed3DTriangleSet.prototype.setVertices = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.core.Indexed3DTriangleSet.prototype.clearVertices = function() {\n this.setVertices(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.Indexed3DTriangleSet.prototype.hasVertices = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional IndexedVector3fArray normals = 2;\n * @return {?proto.vertexvis.protobuf.core.IndexedVector3fArray}\n */\nproto.vertexvis.protobuf.core.Indexed3DTriangleSet.prototype.getNormals = function() {\n return /** @type{?proto.vertexvis.protobuf.core.IndexedVector3fArray} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.IndexedVector3fArray, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.IndexedVector3fArray|undefined} value */\nproto.vertexvis.protobuf.core.Indexed3DTriangleSet.prototype.setNormals = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.Indexed3DTriangleSet.prototype.clearNormals = function() {\n this.setNormals(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.Indexed3DTriangleSet.prototype.hasNormals = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.Matrix4x4f = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.Matrix4x4f, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.Matrix4x4f.displayName = 'proto.vertexvis.protobuf.core.Matrix4x4f';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.Matrix4x4f.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.Matrix4x4f.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.Matrix4x4f} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Matrix4x4f.toObject = function(includeInstance, msg) {\n var f, obj = {\n r0: (f = msg.getR0()) && proto.vertexvis.protobuf.core.Vector4f.toObject(includeInstance, f),\n r1: (f = msg.getR1()) && proto.vertexvis.protobuf.core.Vector4f.toObject(includeInstance, f),\n r2: (f = msg.getR2()) && proto.vertexvis.protobuf.core.Vector4f.toObject(includeInstance, f),\n r3: (f = msg.getR3()) && proto.vertexvis.protobuf.core.Vector4f.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.Matrix4x4f}\n */\nproto.vertexvis.protobuf.core.Matrix4x4f.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.Matrix4x4f;\n return proto.vertexvis.protobuf.core.Matrix4x4f.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.Matrix4x4f} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.Matrix4x4f}\n */\nproto.vertexvis.protobuf.core.Matrix4x4f.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.vertexvis.protobuf.core.Vector4f;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector4f.deserializeBinaryFromReader);\n msg.setR0(value);\n break;\n case 2:\n var value = new proto.vertexvis.protobuf.core.Vector4f;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector4f.deserializeBinaryFromReader);\n msg.setR1(value);\n break;\n case 3:\n var value = new proto.vertexvis.protobuf.core.Vector4f;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector4f.deserializeBinaryFromReader);\n msg.setR2(value);\n break;\n case 4:\n var value = new proto.vertexvis.protobuf.core.Vector4f;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector4f.deserializeBinaryFromReader);\n msg.setR3(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.Matrix4x4f.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.Matrix4x4f.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.Matrix4x4f} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Matrix4x4f.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getR0();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.vertexvis.protobuf.core.Vector4f.serializeBinaryToWriter\n );\n }\n f = message.getR1();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.vertexvis.protobuf.core.Vector4f.serializeBinaryToWriter\n );\n }\n f = message.getR2();\n if (f != null) {\n writer.writeMessage(\n 3,\n f,\n proto.vertexvis.protobuf.core.Vector4f.serializeBinaryToWriter\n );\n }\n f = message.getR3();\n if (f != null) {\n writer.writeMessage(\n 4,\n f,\n proto.vertexvis.protobuf.core.Vector4f.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional Vector4f r0 = 1;\n * @return {?proto.vertexvis.protobuf.core.Vector4f}\n */\nproto.vertexvis.protobuf.core.Matrix4x4f.prototype.getR0 = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector4f} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector4f, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector4f|undefined} value */\nproto.vertexvis.protobuf.core.Matrix4x4f.prototype.setR0 = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.core.Matrix4x4f.prototype.clearR0 = function() {\n this.setR0(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.Matrix4x4f.prototype.hasR0 = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional Vector4f r1 = 2;\n * @return {?proto.vertexvis.protobuf.core.Vector4f}\n */\nproto.vertexvis.protobuf.core.Matrix4x4f.prototype.getR1 = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector4f} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector4f, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector4f|undefined} value */\nproto.vertexvis.protobuf.core.Matrix4x4f.prototype.setR1 = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.Matrix4x4f.prototype.clearR1 = function() {\n this.setR1(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.Matrix4x4f.prototype.hasR1 = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n/**\n * optional Vector4f r2 = 3;\n * @return {?proto.vertexvis.protobuf.core.Vector4f}\n */\nproto.vertexvis.protobuf.core.Matrix4x4f.prototype.getR2 = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector4f} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector4f, 3));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector4f|undefined} value */\nproto.vertexvis.protobuf.core.Matrix4x4f.prototype.setR2 = function(value) {\n jspb.Message.setWrapperField(this, 3, value);\n};\n\n\nproto.vertexvis.protobuf.core.Matrix4x4f.prototype.clearR2 = function() {\n this.setR2(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.Matrix4x4f.prototype.hasR2 = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n/**\n * optional Vector4f r3 = 4;\n * @return {?proto.vertexvis.protobuf.core.Vector4f}\n */\nproto.vertexvis.protobuf.core.Matrix4x4f.prototype.getR3 = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector4f} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector4f, 4));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector4f|undefined} value */\nproto.vertexvis.protobuf.core.Matrix4x4f.prototype.setR3 = function(value) {\n jspb.Message.setWrapperField(this, 4, value);\n};\n\n\nproto.vertexvis.protobuf.core.Matrix4x4f.prototype.clearR3 = function() {\n this.setR3(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.Matrix4x4f.prototype.hasR3 = function() {\n return jspb.Message.getField(this, 4) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.Matrix4x4d = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.Matrix4x4d, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.Matrix4x4d.displayName = 'proto.vertexvis.protobuf.core.Matrix4x4d';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.Matrix4x4d.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.Matrix4x4d.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.Matrix4x4d} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Matrix4x4d.toObject = function(includeInstance, msg) {\n var f, obj = {\n r0: (f = msg.getR0()) && proto.vertexvis.protobuf.core.Vector4d.toObject(includeInstance, f),\n r1: (f = msg.getR1()) && proto.vertexvis.protobuf.core.Vector4d.toObject(includeInstance, f),\n r2: (f = msg.getR2()) && proto.vertexvis.protobuf.core.Vector4d.toObject(includeInstance, f),\n r3: (f = msg.getR3()) && proto.vertexvis.protobuf.core.Vector4d.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.Matrix4x4d}\n */\nproto.vertexvis.protobuf.core.Matrix4x4d.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.Matrix4x4d;\n return proto.vertexvis.protobuf.core.Matrix4x4d.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.Matrix4x4d} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.Matrix4x4d}\n */\nproto.vertexvis.protobuf.core.Matrix4x4d.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.vertexvis.protobuf.core.Vector4d;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector4d.deserializeBinaryFromReader);\n msg.setR0(value);\n break;\n case 2:\n var value = new proto.vertexvis.protobuf.core.Vector4d;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector4d.deserializeBinaryFromReader);\n msg.setR1(value);\n break;\n case 3:\n var value = new proto.vertexvis.protobuf.core.Vector4d;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector4d.deserializeBinaryFromReader);\n msg.setR2(value);\n break;\n case 4:\n var value = new proto.vertexvis.protobuf.core.Vector4d;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector4d.deserializeBinaryFromReader);\n msg.setR3(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.Matrix4x4d.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.Matrix4x4d.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.Matrix4x4d} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Matrix4x4d.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getR0();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.vertexvis.protobuf.core.Vector4d.serializeBinaryToWriter\n );\n }\n f = message.getR1();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.vertexvis.protobuf.core.Vector4d.serializeBinaryToWriter\n );\n }\n f = message.getR2();\n if (f != null) {\n writer.writeMessage(\n 3,\n f,\n proto.vertexvis.protobuf.core.Vector4d.serializeBinaryToWriter\n );\n }\n f = message.getR3();\n if (f != null) {\n writer.writeMessage(\n 4,\n f,\n proto.vertexvis.protobuf.core.Vector4d.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional Vector4d r0 = 1;\n * @return {?proto.vertexvis.protobuf.core.Vector4d}\n */\nproto.vertexvis.protobuf.core.Matrix4x4d.prototype.getR0 = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector4d} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector4d, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector4d|undefined} value */\nproto.vertexvis.protobuf.core.Matrix4x4d.prototype.setR0 = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.core.Matrix4x4d.prototype.clearR0 = function() {\n this.setR0(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.Matrix4x4d.prototype.hasR0 = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional Vector4d r1 = 2;\n * @return {?proto.vertexvis.protobuf.core.Vector4d}\n */\nproto.vertexvis.protobuf.core.Matrix4x4d.prototype.getR1 = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector4d} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector4d, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector4d|undefined} value */\nproto.vertexvis.protobuf.core.Matrix4x4d.prototype.setR1 = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.Matrix4x4d.prototype.clearR1 = function() {\n this.setR1(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.Matrix4x4d.prototype.hasR1 = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n/**\n * optional Vector4d r2 = 3;\n * @return {?proto.vertexvis.protobuf.core.Vector4d}\n */\nproto.vertexvis.protobuf.core.Matrix4x4d.prototype.getR2 = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector4d} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector4d, 3));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector4d|undefined} value */\nproto.vertexvis.protobuf.core.Matrix4x4d.prototype.setR2 = function(value) {\n jspb.Message.setWrapperField(this, 3, value);\n};\n\n\nproto.vertexvis.protobuf.core.Matrix4x4d.prototype.clearR2 = function() {\n this.setR2(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.Matrix4x4d.prototype.hasR2 = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n/**\n * optional Vector4d r3 = 4;\n * @return {?proto.vertexvis.protobuf.core.Vector4d}\n */\nproto.vertexvis.protobuf.core.Matrix4x4d.prototype.getR3 = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector4d} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector4d, 4));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector4d|undefined} value */\nproto.vertexvis.protobuf.core.Matrix4x4d.prototype.setR3 = function(value) {\n jspb.Message.setWrapperField(this, 4, value);\n};\n\n\nproto.vertexvis.protobuf.core.Matrix4x4d.prototype.clearR3 = function() {\n this.setR3(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.Matrix4x4d.prototype.hasR3 = function() {\n return jspb.Message.getField(this, 4) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.Dimension2i = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.Dimension2i, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.Dimension2i.displayName = 'proto.vertexvis.protobuf.core.Dimension2i';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.Dimension2i.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.Dimension2i.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.Dimension2i} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Dimension2i.toObject = function(includeInstance, msg) {\n var f, obj = {\n width: jspb.Message.getFieldWithDefault(msg, 1, 0),\n height: jspb.Message.getFieldWithDefault(msg, 2, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.Dimension2i}\n */\nproto.vertexvis.protobuf.core.Dimension2i.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.Dimension2i;\n return proto.vertexvis.protobuf.core.Dimension2i.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.Dimension2i} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.Dimension2i}\n */\nproto.vertexvis.protobuf.core.Dimension2i.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setWidth(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setHeight(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.Dimension2i.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.Dimension2i.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.Dimension2i} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Dimension2i.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getWidth();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n f = message.getHeight();\n if (f !== 0) {\n writer.writeInt32(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional int32 width = 1;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.Dimension2i.prototype.getWidth = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.Dimension2i.prototype.setWidth = function(value) {\n jspb.Message.setProto3IntField(this, 1, value);\n};\n\n\n/**\n * optional int32 height = 2;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.Dimension2i.prototype.getHeight = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.Dimension2i.prototype.setHeight = function(value) {\n jspb.Message.setProto3IntField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.Point2i = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.Point2i, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.Point2i.displayName = 'proto.vertexvis.protobuf.core.Point2i';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.Point2i.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.Point2i.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.Point2i} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Point2i.toObject = function(includeInstance, msg) {\n var f, obj = {\n dx: jspb.Message.getFieldWithDefault(msg, 1, 0),\n dy: jspb.Message.getFieldWithDefault(msg, 2, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.Point2i}\n */\nproto.vertexvis.protobuf.core.Point2i.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.Point2i;\n return proto.vertexvis.protobuf.core.Point2i.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.Point2i} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.Point2i}\n */\nproto.vertexvis.protobuf.core.Point2i.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setDx(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setDy(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.Point2i.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.Point2i.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.Point2i} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Point2i.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getDx();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n f = message.getDy();\n if (f !== 0) {\n writer.writeInt32(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional int32 dx = 1;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.Point2i.prototype.getDx = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.Point2i.prototype.setDx = function(value) {\n jspb.Message.setProto3IntField(this, 1, value);\n};\n\n\n/**\n * optional int32 dy = 2;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.Point2i.prototype.getDy = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.Point2i.prototype.setDy = function(value) {\n jspb.Message.setProto3IntField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.BBox2f = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.BBox2f, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.BBox2f.displayName = 'proto.vertexvis.protobuf.core.BBox2f';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.BBox2f.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.BBox2f.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.BBox2f} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.BBox2f.toObject = function(includeInstance, msg) {\n var f, obj = {\n min: (f = msg.getMin()) && proto.vertexvis.protobuf.core.Vector2f.toObject(includeInstance, f),\n max: (f = msg.getMax()) && proto.vertexvis.protobuf.core.Vector2f.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.BBox2f}\n */\nproto.vertexvis.protobuf.core.BBox2f.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.BBox2f;\n return proto.vertexvis.protobuf.core.BBox2f.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.BBox2f} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.BBox2f}\n */\nproto.vertexvis.protobuf.core.BBox2f.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.vertexvis.protobuf.core.Vector2f;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector2f.deserializeBinaryFromReader);\n msg.setMin(value);\n break;\n case 2:\n var value = new proto.vertexvis.protobuf.core.Vector2f;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector2f.deserializeBinaryFromReader);\n msg.setMax(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.BBox2f.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.BBox2f.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.BBox2f} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.BBox2f.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getMin();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.vertexvis.protobuf.core.Vector2f.serializeBinaryToWriter\n );\n }\n f = message.getMax();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.vertexvis.protobuf.core.Vector2f.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional Vector2f min = 1;\n * @return {?proto.vertexvis.protobuf.core.Vector2f}\n */\nproto.vertexvis.protobuf.core.BBox2f.prototype.getMin = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector2f} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector2f, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector2f|undefined} value */\nproto.vertexvis.protobuf.core.BBox2f.prototype.setMin = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.core.BBox2f.prototype.clearMin = function() {\n this.setMin(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.BBox2f.prototype.hasMin = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional Vector2f max = 2;\n * @return {?proto.vertexvis.protobuf.core.Vector2f}\n */\nproto.vertexvis.protobuf.core.BBox2f.prototype.getMax = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector2f} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector2f, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector2f|undefined} value */\nproto.vertexvis.protobuf.core.BBox2f.prototype.setMax = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.BBox2f.prototype.clearMax = function() {\n this.setMax(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.BBox2f.prototype.hasMax = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.BBox2d = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.BBox2d, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.BBox2d.displayName = 'proto.vertexvis.protobuf.core.BBox2d';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.BBox2d.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.BBox2d.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.BBox2d} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.BBox2d.toObject = function(includeInstance, msg) {\n var f, obj = {\n min: (f = msg.getMin()) && proto.vertexvis.protobuf.core.Vector2d.toObject(includeInstance, f),\n max: (f = msg.getMax()) && proto.vertexvis.protobuf.core.Vector2d.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.BBox2d}\n */\nproto.vertexvis.protobuf.core.BBox2d.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.BBox2d;\n return proto.vertexvis.protobuf.core.BBox2d.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.BBox2d} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.BBox2d}\n */\nproto.vertexvis.protobuf.core.BBox2d.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.vertexvis.protobuf.core.Vector2d;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector2d.deserializeBinaryFromReader);\n msg.setMin(value);\n break;\n case 2:\n var value = new proto.vertexvis.protobuf.core.Vector2d;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector2d.deserializeBinaryFromReader);\n msg.setMax(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.BBox2d.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.BBox2d.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.BBox2d} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.BBox2d.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getMin();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.vertexvis.protobuf.core.Vector2d.serializeBinaryToWriter\n );\n }\n f = message.getMax();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.vertexvis.protobuf.core.Vector2d.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional Vector2d min = 1;\n * @return {?proto.vertexvis.protobuf.core.Vector2d}\n */\nproto.vertexvis.protobuf.core.BBox2d.prototype.getMin = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector2d} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector2d, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector2d|undefined} value */\nproto.vertexvis.protobuf.core.BBox2d.prototype.setMin = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.core.BBox2d.prototype.clearMin = function() {\n this.setMin(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.BBox2d.prototype.hasMin = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional Vector2d max = 2;\n * @return {?proto.vertexvis.protobuf.core.Vector2d}\n */\nproto.vertexvis.protobuf.core.BBox2d.prototype.getMax = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector2d} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector2d, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector2d|undefined} value */\nproto.vertexvis.protobuf.core.BBox2d.prototype.setMax = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.BBox2d.prototype.clearMax = function() {\n this.setMax(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.BBox2d.prototype.hasMax = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.BBox2i = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.BBox2i, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.BBox2i.displayName = 'proto.vertexvis.protobuf.core.BBox2i';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.BBox2i.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.BBox2i.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.BBox2i} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.BBox2i.toObject = function(includeInstance, msg) {\n var f, obj = {\n min: (f = msg.getMin()) && proto.vertexvis.protobuf.core.Vector2i.toObject(includeInstance, f),\n max: (f = msg.getMax()) && proto.vertexvis.protobuf.core.Vector2i.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.BBox2i}\n */\nproto.vertexvis.protobuf.core.BBox2i.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.BBox2i;\n return proto.vertexvis.protobuf.core.BBox2i.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.BBox2i} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.BBox2i}\n */\nproto.vertexvis.protobuf.core.BBox2i.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.vertexvis.protobuf.core.Vector2i;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector2i.deserializeBinaryFromReader);\n msg.setMin(value);\n break;\n case 2:\n var value = new proto.vertexvis.protobuf.core.Vector2i;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector2i.deserializeBinaryFromReader);\n msg.setMax(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.BBox2i.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.BBox2i.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.BBox2i} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.BBox2i.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getMin();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.vertexvis.protobuf.core.Vector2i.serializeBinaryToWriter\n );\n }\n f = message.getMax();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.vertexvis.protobuf.core.Vector2i.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional Vector2i min = 1;\n * @return {?proto.vertexvis.protobuf.core.Vector2i}\n */\nproto.vertexvis.protobuf.core.BBox2i.prototype.getMin = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector2i} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector2i, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector2i|undefined} value */\nproto.vertexvis.protobuf.core.BBox2i.prototype.setMin = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.core.BBox2i.prototype.clearMin = function() {\n this.setMin(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.BBox2i.prototype.hasMin = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional Vector2i max = 2;\n * @return {?proto.vertexvis.protobuf.core.Vector2i}\n */\nproto.vertexvis.protobuf.core.BBox2i.prototype.getMax = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector2i} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector2i, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector2i|undefined} value */\nproto.vertexvis.protobuf.core.BBox2i.prototype.setMax = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.BBox2i.prototype.clearMax = function() {\n this.setMax(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.BBox2i.prototype.hasMax = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.BBox3f = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.BBox3f, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.BBox3f.displayName = 'proto.vertexvis.protobuf.core.BBox3f';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.BBox3f.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.BBox3f.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.BBox3f} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.BBox3f.toObject = function(includeInstance, msg) {\n var f, obj = {\n min: (f = msg.getMin()) && proto.vertexvis.protobuf.core.Vector3f.toObject(includeInstance, f),\n max: (f = msg.getMax()) && proto.vertexvis.protobuf.core.Vector3f.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.BBox3f}\n */\nproto.vertexvis.protobuf.core.BBox3f.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.BBox3f;\n return proto.vertexvis.protobuf.core.BBox3f.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.BBox3f} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.BBox3f}\n */\nproto.vertexvis.protobuf.core.BBox3f.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.vertexvis.protobuf.core.Vector3f;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector3f.deserializeBinaryFromReader);\n msg.setMin(value);\n break;\n case 2:\n var value = new proto.vertexvis.protobuf.core.Vector3f;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector3f.deserializeBinaryFromReader);\n msg.setMax(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.BBox3f.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.BBox3f.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.BBox3f} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.BBox3f.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getMin();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.vertexvis.protobuf.core.Vector3f.serializeBinaryToWriter\n );\n }\n f = message.getMax();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.vertexvis.protobuf.core.Vector3f.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional Vector3f min = 1;\n * @return {?proto.vertexvis.protobuf.core.Vector3f}\n */\nproto.vertexvis.protobuf.core.BBox3f.prototype.getMin = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3f} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector3f, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3f|undefined} value */\nproto.vertexvis.protobuf.core.BBox3f.prototype.setMin = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.core.BBox3f.prototype.clearMin = function() {\n this.setMin(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.BBox3f.prototype.hasMin = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional Vector3f max = 2;\n * @return {?proto.vertexvis.protobuf.core.Vector3f}\n */\nproto.vertexvis.protobuf.core.BBox3f.prototype.getMax = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3f} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector3f, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3f|undefined} value */\nproto.vertexvis.protobuf.core.BBox3f.prototype.setMax = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.BBox3f.prototype.clearMax = function() {\n this.setMax(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.BBox3f.prototype.hasMax = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.BBox3d = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.BBox3d, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.BBox3d.displayName = 'proto.vertexvis.protobuf.core.BBox3d';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.BBox3d.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.BBox3d.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.BBox3d} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.BBox3d.toObject = function(includeInstance, msg) {\n var f, obj = {\n min: (f = msg.getMin()) && proto.vertexvis.protobuf.core.Vector3d.toObject(includeInstance, f),\n max: (f = msg.getMax()) && proto.vertexvis.protobuf.core.Vector3d.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.BBox3d}\n */\nproto.vertexvis.protobuf.core.BBox3d.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.BBox3d;\n return proto.vertexvis.protobuf.core.BBox3d.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.BBox3d} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.BBox3d}\n */\nproto.vertexvis.protobuf.core.BBox3d.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.vertexvis.protobuf.core.Vector3d;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector3d.deserializeBinaryFromReader);\n msg.setMin(value);\n break;\n case 2:\n var value = new proto.vertexvis.protobuf.core.Vector3d;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector3d.deserializeBinaryFromReader);\n msg.setMax(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.BBox3d.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.BBox3d.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.BBox3d} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.BBox3d.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getMin();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.vertexvis.protobuf.core.Vector3d.serializeBinaryToWriter\n );\n }\n f = message.getMax();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.vertexvis.protobuf.core.Vector3d.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional Vector3d min = 1;\n * @return {?proto.vertexvis.protobuf.core.Vector3d}\n */\nproto.vertexvis.protobuf.core.BBox3d.prototype.getMin = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3d} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector3d, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3d|undefined} value */\nproto.vertexvis.protobuf.core.BBox3d.prototype.setMin = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.core.BBox3d.prototype.clearMin = function() {\n this.setMin(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.BBox3d.prototype.hasMin = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional Vector3d max = 2;\n * @return {?proto.vertexvis.protobuf.core.Vector3d}\n */\nproto.vertexvis.protobuf.core.BBox3d.prototype.getMax = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3d} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector3d, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3d|undefined} value */\nproto.vertexvis.protobuf.core.BBox3d.prototype.setMax = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.BBox3d.prototype.clearMax = function() {\n this.setMax(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.BBox3d.prototype.hasMax = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.LinearTransform2f = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.LinearTransform2f, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.LinearTransform2f.displayName = 'proto.vertexvis.protobuf.core.LinearTransform2f';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.LinearTransform2f.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.LinearTransform2f.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.LinearTransform2f} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.LinearTransform2f.toObject = function(includeInstance, msg) {\n var f, obj = {\n basisX: (f = msg.getBasisX()) && proto.vertexvis.protobuf.core.Vector2f.toObject(includeInstance, f),\n basisY: (f = msg.getBasisY()) && proto.vertexvis.protobuf.core.Vector2f.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.LinearTransform2f}\n */\nproto.vertexvis.protobuf.core.LinearTransform2f.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.LinearTransform2f;\n return proto.vertexvis.protobuf.core.LinearTransform2f.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.LinearTransform2f} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.LinearTransform2f}\n */\nproto.vertexvis.protobuf.core.LinearTransform2f.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.vertexvis.protobuf.core.Vector2f;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector2f.deserializeBinaryFromReader);\n msg.setBasisX(value);\n break;\n case 2:\n var value = new proto.vertexvis.protobuf.core.Vector2f;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector2f.deserializeBinaryFromReader);\n msg.setBasisY(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.LinearTransform2f.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.LinearTransform2f.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.LinearTransform2f} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.LinearTransform2f.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getBasisX();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.vertexvis.protobuf.core.Vector2f.serializeBinaryToWriter\n );\n }\n f = message.getBasisY();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.vertexvis.protobuf.core.Vector2f.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional Vector2f basis_x = 1;\n * @return {?proto.vertexvis.protobuf.core.Vector2f}\n */\nproto.vertexvis.protobuf.core.LinearTransform2f.prototype.getBasisX = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector2f} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector2f, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector2f|undefined} value */\nproto.vertexvis.protobuf.core.LinearTransform2f.prototype.setBasisX = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.core.LinearTransform2f.prototype.clearBasisX = function() {\n this.setBasisX(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.LinearTransform2f.prototype.hasBasisX = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional Vector2f basis_y = 2;\n * @return {?proto.vertexvis.protobuf.core.Vector2f}\n */\nproto.vertexvis.protobuf.core.LinearTransform2f.prototype.getBasisY = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector2f} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector2f, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector2f|undefined} value */\nproto.vertexvis.protobuf.core.LinearTransform2f.prototype.setBasisY = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.LinearTransform2f.prototype.clearBasisY = function() {\n this.setBasisY(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.LinearTransform2f.prototype.hasBasisY = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.LinearTransform2d = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.LinearTransform2d, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.LinearTransform2d.displayName = 'proto.vertexvis.protobuf.core.LinearTransform2d';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.LinearTransform2d.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.LinearTransform2d.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.LinearTransform2d} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.LinearTransform2d.toObject = function(includeInstance, msg) {\n var f, obj = {\n basisX: (f = msg.getBasisX()) && proto.vertexvis.protobuf.core.Vector2d.toObject(includeInstance, f),\n basisY: (f = msg.getBasisY()) && proto.vertexvis.protobuf.core.Vector2d.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.LinearTransform2d}\n */\nproto.vertexvis.protobuf.core.LinearTransform2d.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.LinearTransform2d;\n return proto.vertexvis.protobuf.core.LinearTransform2d.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.LinearTransform2d} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.LinearTransform2d}\n */\nproto.vertexvis.protobuf.core.LinearTransform2d.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.vertexvis.protobuf.core.Vector2d;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector2d.deserializeBinaryFromReader);\n msg.setBasisX(value);\n break;\n case 2:\n var value = new proto.vertexvis.protobuf.core.Vector2d;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector2d.deserializeBinaryFromReader);\n msg.setBasisY(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.LinearTransform2d.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.LinearTransform2d.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.LinearTransform2d} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.LinearTransform2d.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getBasisX();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.vertexvis.protobuf.core.Vector2d.serializeBinaryToWriter\n );\n }\n f = message.getBasisY();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.vertexvis.protobuf.core.Vector2d.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional Vector2d basis_x = 1;\n * @return {?proto.vertexvis.protobuf.core.Vector2d}\n */\nproto.vertexvis.protobuf.core.LinearTransform2d.prototype.getBasisX = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector2d} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector2d, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector2d|undefined} value */\nproto.vertexvis.protobuf.core.LinearTransform2d.prototype.setBasisX = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.core.LinearTransform2d.prototype.clearBasisX = function() {\n this.setBasisX(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.LinearTransform2d.prototype.hasBasisX = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional Vector2d basis_y = 2;\n * @return {?proto.vertexvis.protobuf.core.Vector2d}\n */\nproto.vertexvis.protobuf.core.LinearTransform2d.prototype.getBasisY = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector2d} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector2d, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector2d|undefined} value */\nproto.vertexvis.protobuf.core.LinearTransform2d.prototype.setBasisY = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.LinearTransform2d.prototype.clearBasisY = function() {\n this.setBasisY(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.LinearTransform2d.prototype.hasBasisY = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.LinearTransform3f = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.LinearTransform3f, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.LinearTransform3f.displayName = 'proto.vertexvis.protobuf.core.LinearTransform3f';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.LinearTransform3f.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.LinearTransform3f.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.LinearTransform3f} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.LinearTransform3f.toObject = function(includeInstance, msg) {\n var f, obj = {\n basisX: (f = msg.getBasisX()) && proto.vertexvis.protobuf.core.Vector3f.toObject(includeInstance, f),\n basisY: (f = msg.getBasisY()) && proto.vertexvis.protobuf.core.Vector3f.toObject(includeInstance, f),\n basisZ: (f = msg.getBasisZ()) && proto.vertexvis.protobuf.core.Vector3f.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.LinearTransform3f}\n */\nproto.vertexvis.protobuf.core.LinearTransform3f.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.LinearTransform3f;\n return proto.vertexvis.protobuf.core.LinearTransform3f.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.LinearTransform3f} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.LinearTransform3f}\n */\nproto.vertexvis.protobuf.core.LinearTransform3f.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.vertexvis.protobuf.core.Vector3f;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector3f.deserializeBinaryFromReader);\n msg.setBasisX(value);\n break;\n case 2:\n var value = new proto.vertexvis.protobuf.core.Vector3f;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector3f.deserializeBinaryFromReader);\n msg.setBasisY(value);\n break;\n case 3:\n var value = new proto.vertexvis.protobuf.core.Vector3f;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector3f.deserializeBinaryFromReader);\n msg.setBasisZ(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.LinearTransform3f.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.LinearTransform3f.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.LinearTransform3f} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.LinearTransform3f.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getBasisX();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.vertexvis.protobuf.core.Vector3f.serializeBinaryToWriter\n );\n }\n f = message.getBasisY();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.vertexvis.protobuf.core.Vector3f.serializeBinaryToWriter\n );\n }\n f = message.getBasisZ();\n if (f != null) {\n writer.writeMessage(\n 3,\n f,\n proto.vertexvis.protobuf.core.Vector3f.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional Vector3f basis_x = 1;\n * @return {?proto.vertexvis.protobuf.core.Vector3f}\n */\nproto.vertexvis.protobuf.core.LinearTransform3f.prototype.getBasisX = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3f} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector3f, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3f|undefined} value */\nproto.vertexvis.protobuf.core.LinearTransform3f.prototype.setBasisX = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.core.LinearTransform3f.prototype.clearBasisX = function() {\n this.setBasisX(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.LinearTransform3f.prototype.hasBasisX = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional Vector3f basis_y = 2;\n * @return {?proto.vertexvis.protobuf.core.Vector3f}\n */\nproto.vertexvis.protobuf.core.LinearTransform3f.prototype.getBasisY = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3f} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector3f, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3f|undefined} value */\nproto.vertexvis.protobuf.core.LinearTransform3f.prototype.setBasisY = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.LinearTransform3f.prototype.clearBasisY = function() {\n this.setBasisY(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.LinearTransform3f.prototype.hasBasisY = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n/**\n * optional Vector3f basis_z = 3;\n * @return {?proto.vertexvis.protobuf.core.Vector3f}\n */\nproto.vertexvis.protobuf.core.LinearTransform3f.prototype.getBasisZ = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3f} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector3f, 3));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3f|undefined} value */\nproto.vertexvis.protobuf.core.LinearTransform3f.prototype.setBasisZ = function(value) {\n jspb.Message.setWrapperField(this, 3, value);\n};\n\n\nproto.vertexvis.protobuf.core.LinearTransform3f.prototype.clearBasisZ = function() {\n this.setBasisZ(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.LinearTransform3f.prototype.hasBasisZ = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.LinearTransform3d = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.LinearTransform3d, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.LinearTransform3d.displayName = 'proto.vertexvis.protobuf.core.LinearTransform3d';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.LinearTransform3d.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.LinearTransform3d.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.LinearTransform3d} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.LinearTransform3d.toObject = function(includeInstance, msg) {\n var f, obj = {\n basisX: (f = msg.getBasisX()) && proto.vertexvis.protobuf.core.Vector3d.toObject(includeInstance, f),\n basisY: (f = msg.getBasisY()) && proto.vertexvis.protobuf.core.Vector3d.toObject(includeInstance, f),\n basisZ: (f = msg.getBasisZ()) && proto.vertexvis.protobuf.core.Vector3d.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.LinearTransform3d}\n */\nproto.vertexvis.protobuf.core.LinearTransform3d.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.LinearTransform3d;\n return proto.vertexvis.protobuf.core.LinearTransform3d.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.LinearTransform3d} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.LinearTransform3d}\n */\nproto.vertexvis.protobuf.core.LinearTransform3d.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.vertexvis.protobuf.core.Vector3d;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector3d.deserializeBinaryFromReader);\n msg.setBasisX(value);\n break;\n case 2:\n var value = new proto.vertexvis.protobuf.core.Vector3d;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector3d.deserializeBinaryFromReader);\n msg.setBasisY(value);\n break;\n case 3:\n var value = new proto.vertexvis.protobuf.core.Vector3d;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector3d.deserializeBinaryFromReader);\n msg.setBasisZ(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.LinearTransform3d.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.LinearTransform3d.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.LinearTransform3d} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.LinearTransform3d.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getBasisX();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.vertexvis.protobuf.core.Vector3d.serializeBinaryToWriter\n );\n }\n f = message.getBasisY();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.vertexvis.protobuf.core.Vector3d.serializeBinaryToWriter\n );\n }\n f = message.getBasisZ();\n if (f != null) {\n writer.writeMessage(\n 3,\n f,\n proto.vertexvis.protobuf.core.Vector3d.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional Vector3d basis_x = 1;\n * @return {?proto.vertexvis.protobuf.core.Vector3d}\n */\nproto.vertexvis.protobuf.core.LinearTransform3d.prototype.getBasisX = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3d} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector3d, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3d|undefined} value */\nproto.vertexvis.protobuf.core.LinearTransform3d.prototype.setBasisX = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.core.LinearTransform3d.prototype.clearBasisX = function() {\n this.setBasisX(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.LinearTransform3d.prototype.hasBasisX = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional Vector3d basis_y = 2;\n * @return {?proto.vertexvis.protobuf.core.Vector3d}\n */\nproto.vertexvis.protobuf.core.LinearTransform3d.prototype.getBasisY = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3d} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector3d, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3d|undefined} value */\nproto.vertexvis.protobuf.core.LinearTransform3d.prototype.setBasisY = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.LinearTransform3d.prototype.clearBasisY = function() {\n this.setBasisY(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.LinearTransform3d.prototype.hasBasisY = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n/**\n * optional Vector3d basis_z = 3;\n * @return {?proto.vertexvis.protobuf.core.Vector3d}\n */\nproto.vertexvis.protobuf.core.LinearTransform3d.prototype.getBasisZ = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3d} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector3d, 3));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3d|undefined} value */\nproto.vertexvis.protobuf.core.LinearTransform3d.prototype.setBasisZ = function(value) {\n jspb.Message.setWrapperField(this, 3, value);\n};\n\n\nproto.vertexvis.protobuf.core.LinearTransform3d.prototype.clearBasisZ = function() {\n this.setBasisZ(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.LinearTransform3d.prototype.hasBasisZ = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.AffineTransform2f = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.AffineTransform2f, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.AffineTransform2f.displayName = 'proto.vertexvis.protobuf.core.AffineTransform2f';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.AffineTransform2f.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.AffineTransform2f.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.AffineTransform2f} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.AffineTransform2f.toObject = function(includeInstance, msg) {\n var f, obj = {\n transform: (f = msg.getTransform()) && proto.vertexvis.protobuf.core.LinearTransform2f.toObject(includeInstance, f),\n pos: (f = msg.getPos()) && proto.vertexvis.protobuf.core.Vector2f.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.AffineTransform2f}\n */\nproto.vertexvis.protobuf.core.AffineTransform2f.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.AffineTransform2f;\n return proto.vertexvis.protobuf.core.AffineTransform2f.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.AffineTransform2f} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.AffineTransform2f}\n */\nproto.vertexvis.protobuf.core.AffineTransform2f.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.vertexvis.protobuf.core.LinearTransform2f;\n reader.readMessage(value,proto.vertexvis.protobuf.core.LinearTransform2f.deserializeBinaryFromReader);\n msg.setTransform(value);\n break;\n case 2:\n var value = new proto.vertexvis.protobuf.core.Vector2f;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector2f.deserializeBinaryFromReader);\n msg.setPos(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.AffineTransform2f.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.AffineTransform2f.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.AffineTransform2f} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.AffineTransform2f.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTransform();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.vertexvis.protobuf.core.LinearTransform2f.serializeBinaryToWriter\n );\n }\n f = message.getPos();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.vertexvis.protobuf.core.Vector2f.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional LinearTransform2f transform = 1;\n * @return {?proto.vertexvis.protobuf.core.LinearTransform2f}\n */\nproto.vertexvis.protobuf.core.AffineTransform2f.prototype.getTransform = function() {\n return /** @type{?proto.vertexvis.protobuf.core.LinearTransform2f} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.LinearTransform2f, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.LinearTransform2f|undefined} value */\nproto.vertexvis.protobuf.core.AffineTransform2f.prototype.setTransform = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.core.AffineTransform2f.prototype.clearTransform = function() {\n this.setTransform(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.AffineTransform2f.prototype.hasTransform = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional Vector2f pos = 2;\n * @return {?proto.vertexvis.protobuf.core.Vector2f}\n */\nproto.vertexvis.protobuf.core.AffineTransform2f.prototype.getPos = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector2f} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector2f, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector2f|undefined} value */\nproto.vertexvis.protobuf.core.AffineTransform2f.prototype.setPos = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.AffineTransform2f.prototype.clearPos = function() {\n this.setPos(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.AffineTransform2f.prototype.hasPos = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.AffineTransform2d = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.AffineTransform2d, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.AffineTransform2d.displayName = 'proto.vertexvis.protobuf.core.AffineTransform2d';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.AffineTransform2d.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.AffineTransform2d.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.AffineTransform2d} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.AffineTransform2d.toObject = function(includeInstance, msg) {\n var f, obj = {\n transform: (f = msg.getTransform()) && proto.vertexvis.protobuf.core.LinearTransform2d.toObject(includeInstance, f),\n pos: (f = msg.getPos()) && proto.vertexvis.protobuf.core.Vector2d.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.AffineTransform2d}\n */\nproto.vertexvis.protobuf.core.AffineTransform2d.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.AffineTransform2d;\n return proto.vertexvis.protobuf.core.AffineTransform2d.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.AffineTransform2d} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.AffineTransform2d}\n */\nproto.vertexvis.protobuf.core.AffineTransform2d.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.vertexvis.protobuf.core.LinearTransform2d;\n reader.readMessage(value,proto.vertexvis.protobuf.core.LinearTransform2d.deserializeBinaryFromReader);\n msg.setTransform(value);\n break;\n case 2:\n var value = new proto.vertexvis.protobuf.core.Vector2d;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector2d.deserializeBinaryFromReader);\n msg.setPos(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.AffineTransform2d.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.AffineTransform2d.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.AffineTransform2d} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.AffineTransform2d.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTransform();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.vertexvis.protobuf.core.LinearTransform2d.serializeBinaryToWriter\n );\n }\n f = message.getPos();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.vertexvis.protobuf.core.Vector2d.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional LinearTransform2d transform = 1;\n * @return {?proto.vertexvis.protobuf.core.LinearTransform2d}\n */\nproto.vertexvis.protobuf.core.AffineTransform2d.prototype.getTransform = function() {\n return /** @type{?proto.vertexvis.protobuf.core.LinearTransform2d} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.LinearTransform2d, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.LinearTransform2d|undefined} value */\nproto.vertexvis.protobuf.core.AffineTransform2d.prototype.setTransform = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.core.AffineTransform2d.prototype.clearTransform = function() {\n this.setTransform(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.AffineTransform2d.prototype.hasTransform = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional Vector2d pos = 2;\n * @return {?proto.vertexvis.protobuf.core.Vector2d}\n */\nproto.vertexvis.protobuf.core.AffineTransform2d.prototype.getPos = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector2d} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector2d, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector2d|undefined} value */\nproto.vertexvis.protobuf.core.AffineTransform2d.prototype.setPos = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.AffineTransform2d.prototype.clearPos = function() {\n this.setPos(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.AffineTransform2d.prototype.hasPos = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.AffineTransform3f = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.AffineTransform3f, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.AffineTransform3f.displayName = 'proto.vertexvis.protobuf.core.AffineTransform3f';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.AffineTransform3f.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.AffineTransform3f.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.AffineTransform3f} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.AffineTransform3f.toObject = function(includeInstance, msg) {\n var f, obj = {\n transform: (f = msg.getTransform()) && proto.vertexvis.protobuf.core.LinearTransform3f.toObject(includeInstance, f),\n pos: (f = msg.getPos()) && proto.vertexvis.protobuf.core.Vector3f.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.AffineTransform3f}\n */\nproto.vertexvis.protobuf.core.AffineTransform3f.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.AffineTransform3f;\n return proto.vertexvis.protobuf.core.AffineTransform3f.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.AffineTransform3f} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.AffineTransform3f}\n */\nproto.vertexvis.protobuf.core.AffineTransform3f.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.vertexvis.protobuf.core.LinearTransform3f;\n reader.readMessage(value,proto.vertexvis.protobuf.core.LinearTransform3f.deserializeBinaryFromReader);\n msg.setTransform(value);\n break;\n case 2:\n var value = new proto.vertexvis.protobuf.core.Vector3f;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector3f.deserializeBinaryFromReader);\n msg.setPos(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.AffineTransform3f.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.AffineTransform3f.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.AffineTransform3f} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.AffineTransform3f.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTransform();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.vertexvis.protobuf.core.LinearTransform3f.serializeBinaryToWriter\n );\n }\n f = message.getPos();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.vertexvis.protobuf.core.Vector3f.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional LinearTransform3f transform = 1;\n * @return {?proto.vertexvis.protobuf.core.LinearTransform3f}\n */\nproto.vertexvis.protobuf.core.AffineTransform3f.prototype.getTransform = function() {\n return /** @type{?proto.vertexvis.protobuf.core.LinearTransform3f} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.LinearTransform3f, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.LinearTransform3f|undefined} value */\nproto.vertexvis.protobuf.core.AffineTransform3f.prototype.setTransform = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.core.AffineTransform3f.prototype.clearTransform = function() {\n this.setTransform(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.AffineTransform3f.prototype.hasTransform = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional Vector3f pos = 2;\n * @return {?proto.vertexvis.protobuf.core.Vector3f}\n */\nproto.vertexvis.protobuf.core.AffineTransform3f.prototype.getPos = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3f} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector3f, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3f|undefined} value */\nproto.vertexvis.protobuf.core.AffineTransform3f.prototype.setPos = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.AffineTransform3f.prototype.clearPos = function() {\n this.setPos(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.AffineTransform3f.prototype.hasPos = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.AffineTransform3d = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.AffineTransform3d, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.AffineTransform3d.displayName = 'proto.vertexvis.protobuf.core.AffineTransform3d';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.AffineTransform3d.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.AffineTransform3d.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.AffineTransform3d} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.AffineTransform3d.toObject = function(includeInstance, msg) {\n var f, obj = {\n transform: (f = msg.getTransform()) && proto.vertexvis.protobuf.core.LinearTransform3d.toObject(includeInstance, f),\n pos: (f = msg.getPos()) && proto.vertexvis.protobuf.core.Vector3d.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.AffineTransform3d}\n */\nproto.vertexvis.protobuf.core.AffineTransform3d.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.AffineTransform3d;\n return proto.vertexvis.protobuf.core.AffineTransform3d.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.AffineTransform3d} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.AffineTransform3d}\n */\nproto.vertexvis.protobuf.core.AffineTransform3d.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.vertexvis.protobuf.core.LinearTransform3d;\n reader.readMessage(value,proto.vertexvis.protobuf.core.LinearTransform3d.deserializeBinaryFromReader);\n msg.setTransform(value);\n break;\n case 2:\n var value = new proto.vertexvis.protobuf.core.Vector3d;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector3d.deserializeBinaryFromReader);\n msg.setPos(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.AffineTransform3d.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.AffineTransform3d.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.AffineTransform3d} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.AffineTransform3d.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTransform();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.vertexvis.protobuf.core.LinearTransform3d.serializeBinaryToWriter\n );\n }\n f = message.getPos();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.vertexvis.protobuf.core.Vector3d.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional LinearTransform3d transform = 1;\n * @return {?proto.vertexvis.protobuf.core.LinearTransform3d}\n */\nproto.vertexvis.protobuf.core.AffineTransform3d.prototype.getTransform = function() {\n return /** @type{?proto.vertexvis.protobuf.core.LinearTransform3d} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.LinearTransform3d, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.LinearTransform3d|undefined} value */\nproto.vertexvis.protobuf.core.AffineTransform3d.prototype.setTransform = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.core.AffineTransform3d.prototype.clearTransform = function() {\n this.setTransform(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.AffineTransform3d.prototype.hasTransform = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional Vector3d pos = 2;\n * @return {?proto.vertexvis.protobuf.core.Vector3d}\n */\nproto.vertexvis.protobuf.core.AffineTransform3d.prototype.getPos = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3d} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector3d, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3d|undefined} value */\nproto.vertexvis.protobuf.core.AffineTransform3d.prototype.setPos = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.AffineTransform3d.prototype.clearPos = function() {\n this.setPos(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.AffineTransform3d.prototype.hasPos = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.Plane = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.Plane, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.Plane.displayName = 'proto.vertexvis.protobuf.core.Plane';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.Plane.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.Plane.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.Plane} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Plane.toObject = function(includeInstance, msg) {\n var f, obj = {\n normal: (f = msg.getNormal()) && proto.vertexvis.protobuf.core.Vector3d.toObject(includeInstance, f),\n d: +jspb.Message.getFieldWithDefault(msg, 2, 0.0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.Plane}\n */\nproto.vertexvis.protobuf.core.Plane.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.Plane;\n return proto.vertexvis.protobuf.core.Plane.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.Plane} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.Plane}\n */\nproto.vertexvis.protobuf.core.Plane.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.vertexvis.protobuf.core.Vector3d;\n reader.readMessage(value,proto.vertexvis.protobuf.core.Vector3d.deserializeBinaryFromReader);\n msg.setNormal(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setD(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.Plane.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.Plane.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.Plane} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Plane.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getNormal();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.vertexvis.protobuf.core.Vector3d.serializeBinaryToWriter\n );\n }\n f = message.getD();\n if (f !== 0.0) {\n writer.writeDouble(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional Vector3d normal = 1;\n * @return {?proto.vertexvis.protobuf.core.Vector3d}\n */\nproto.vertexvis.protobuf.core.Plane.prototype.getNormal = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3d} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.Vector3d, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3d|undefined} value */\nproto.vertexvis.protobuf.core.Plane.prototype.setNormal = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.core.Plane.prototype.clearNormal = function() {\n this.setNormal(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.Plane.prototype.hasNormal = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional double d = 2;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.Plane.prototype.getD = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 2, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.Plane.prototype.setD = function(value) {\n jspb.Message.setProto3FloatField(this, 2, value);\n};\n\n\ngoog.object.extend(exports, proto.vertexvis.protobuf.core);\n","// source: google/protobuf/timestamp.proto\n/**\n * @fileoverview\n * @enhanceable\n * @suppress {missingRequire} reports error on implicit type usages.\n * @suppress {messageConventions} JS Compiler reports an error if a variable or\n * field starts with 'MSG_' and isn't a translatable message.\n * @public\n */\n// GENERATED CODE -- DO NOT EDIT!\n/* eslint-disable */\n// @ts-nocheck\n\nvar jspb = require('google-protobuf');\nvar goog = jspb;\nvar global = (function() {\n if (this) { return this; }\n if (typeof window !== 'undefined') { return window; }\n if (typeof global !== 'undefined') { return global; }\n if (typeof self !== 'undefined') { return self; }\n return Function('return this')();\n}.call(null));\n\ngoog.exportSymbol('proto.google.protobuf.Timestamp', null, global);\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.google.protobuf.Timestamp = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.google.protobuf.Timestamp, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n /**\n * @public\n * @override\n */\n proto.google.protobuf.Timestamp.displayName = 'proto.google.protobuf.Timestamp';\n}\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * Optional fields that are not set will be set to undefined.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * net/proto2/compiler/js/internal/generator.cc#kKeyword.\n * @param {boolean=} opt_includeInstance Deprecated. whether to include the\n * JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.google.protobuf.Timestamp.prototype.toObject = function(opt_includeInstance) {\n return proto.google.protobuf.Timestamp.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Deprecated. Whether to include\n * the JSPB instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.google.protobuf.Timestamp} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.google.protobuf.Timestamp.toObject = function(includeInstance, msg) {\n var f, obj = {\n seconds: jspb.Message.getFieldWithDefault(msg, 1, 0),\n nanos: jspb.Message.getFieldWithDefault(msg, 2, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.google.protobuf.Timestamp}\n */\nproto.google.protobuf.Timestamp.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.google.protobuf.Timestamp;\n return proto.google.protobuf.Timestamp.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.google.protobuf.Timestamp} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.google.protobuf.Timestamp}\n */\nproto.google.protobuf.Timestamp.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setSeconds(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setNanos(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.google.protobuf.Timestamp.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.google.protobuf.Timestamp.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.google.protobuf.Timestamp} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.google.protobuf.Timestamp.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSeconds();\n if (f !== 0) {\n writer.writeInt64(\n 1,\n f\n );\n }\n f = message.getNanos();\n if (f !== 0) {\n writer.writeInt32(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional int64 seconds = 1;\n * @return {number}\n */\nproto.google.protobuf.Timestamp.prototype.getSeconds = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/**\n * @param {number} value\n * @return {!proto.google.protobuf.Timestamp} returns this\n */\nproto.google.protobuf.Timestamp.prototype.setSeconds = function(value) {\n return jspb.Message.setProto3IntField(this, 1, value);\n};\n\n\n/**\n * optional int32 nanos = 2;\n * @return {number}\n */\nproto.google.protobuf.Timestamp.prototype.getNanos = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/**\n * @param {number} value\n * @return {!proto.google.protobuf.Timestamp} returns this\n */\nproto.google.protobuf.Timestamp.prototype.setNanos = function(value) {\n return jspb.Message.setProto3IntField(this, 2, value);\n};\n\n\ngoog.object.extend(exports, proto.google.protobuf);\n/* This code will be inserted into generated code for\n * google/protobuf/timestamp.proto. */\n\n/**\n * Returns a JavaScript 'Date' object corresponding to this Timestamp.\n * @return {!Date}\n */\nproto.google.protobuf.Timestamp.prototype.toDate = function() {\n var seconds = this.getSeconds();\n var nanos = this.getNanos();\n\n return new Date((seconds * 1000) + (nanos / 1000000));\n};\n\n\n/**\n * Sets the value of this Timestamp object to be the given Date.\n * @param {!Date} value The value to set.\n */\nproto.google.protobuf.Timestamp.prototype.fromDate = function(value) {\n this.setSeconds(Math.floor(value.getTime() / 1000));\n this.setNanos(value.getMilliseconds() * 1000000);\n};\n\n\n/**\n * Factory method that returns a Timestamp object with value equal to\n * the given Date.\n * @param {!Date} value The value to set.\n * @return {!proto.google.protobuf.Timestamp}\n */\nproto.google.protobuf.Timestamp.fromDate = function(value) {\n var timestamp = new proto.google.protobuf.Timestamp();\n timestamp.fromDate(value);\n return timestamp;\n};\n","/**\n * @fileoverview\n * @enhanceable\n * @suppress {messageConventions} JS Compiler reports an error if a variable or\n * field starts with 'MSG_' and isn't a translatable message.\n * @public\n */\n// GENERATED CODE -- DO NOT EDIT!\n\nvar jspb = require('google-protobuf');\nvar goog = jspb;\nvar global = Function('return this')();\n\nvar core_protos_uuid_pb = require('../../core/protos/uuid_pb.js');\nvar google_protobuf_any_pb = require('google-protobuf/google/protobuf/any_pb.js');\nvar google_protobuf_timestamp_pb = require('google-protobuf/google/protobuf/timestamp_pb.js');\ngoog.exportSymbol('proto.vertexvis.protobuf.core.ItemModelView', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.ModelView', null, global);\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.ModelView = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.ModelView, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.ModelView.displayName = 'proto.vertexvis.protobuf.core.ModelView';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.ModelView.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.ModelView.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.ModelView} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.ModelView.toObject = function(includeInstance, msg) {\n var f, obj = {\n id: (f = msg.getId()) && core_protos_uuid_pb.Uuid2l.toObject(includeInstance, f),\n partRevisionId: (f = msg.getPartRevisionId()) && core_protos_uuid_pb.Uuid2l.toObject(includeInstance, f),\n displayName: jspb.Message.getFieldWithDefault(msg, 3, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.ModelView}\n */\nproto.vertexvis.protobuf.core.ModelView.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.ModelView;\n return proto.vertexvis.protobuf.core.ModelView.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.ModelView} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.ModelView}\n */\nproto.vertexvis.protobuf.core.ModelView.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new core_protos_uuid_pb.Uuid2l;\n reader.readMessage(value,core_protos_uuid_pb.Uuid2l.deserializeBinaryFromReader);\n msg.setId(value);\n break;\n case 2:\n var value = new core_protos_uuid_pb.Uuid2l;\n reader.readMessage(value,core_protos_uuid_pb.Uuid2l.deserializeBinaryFromReader);\n msg.setPartRevisionId(value);\n break;\n case 3:\n var value = /** @type {string} */ (reader.readString());\n msg.setDisplayName(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.ModelView.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.ModelView.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.ModelView} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.ModelView.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getId();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n core_protos_uuid_pb.Uuid2l.serializeBinaryToWriter\n );\n }\n f = message.getPartRevisionId();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n core_protos_uuid_pb.Uuid2l.serializeBinaryToWriter\n );\n }\n f = message.getDisplayName();\n if (f.length > 0) {\n writer.writeString(\n 3,\n f\n );\n }\n};\n\n\n/**\n * optional Uuid2l id = 1;\n * @return {?proto.vertexvis.protobuf.core.Uuid2l}\n */\nproto.vertexvis.protobuf.core.ModelView.prototype.getId = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Uuid2l} */ (\n jspb.Message.getWrapperField(this, core_protos_uuid_pb.Uuid2l, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Uuid2l|undefined} value */\nproto.vertexvis.protobuf.core.ModelView.prototype.setId = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.core.ModelView.prototype.clearId = function() {\n this.setId(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.ModelView.prototype.hasId = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional Uuid2l part_revision_id = 2;\n * @return {?proto.vertexvis.protobuf.core.Uuid2l}\n */\nproto.vertexvis.protobuf.core.ModelView.prototype.getPartRevisionId = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Uuid2l} */ (\n jspb.Message.getWrapperField(this, core_protos_uuid_pb.Uuid2l, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Uuid2l|undefined} value */\nproto.vertexvis.protobuf.core.ModelView.prototype.setPartRevisionId = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.ModelView.prototype.clearPartRevisionId = function() {\n this.setPartRevisionId(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.ModelView.prototype.hasPartRevisionId = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n/**\n * optional string display_name = 3;\n * @return {string}\n */\nproto.vertexvis.protobuf.core.ModelView.prototype.getDisplayName = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, \"\"));\n};\n\n\n/** @param {string} value */\nproto.vertexvis.protobuf.core.ModelView.prototype.setDisplayName = function(value) {\n jspb.Message.setProto3StringField(this, 3, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.ItemModelView = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.ItemModelView, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.ItemModelView.displayName = 'proto.vertexvis.protobuf.core.ItemModelView';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.ItemModelView.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.ItemModelView.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.ItemModelView} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.ItemModelView.toObject = function(includeInstance, msg) {\n var f, obj = {\n modelViewId: (f = msg.getModelViewId()) && core_protos_uuid_pb.Uuid2l.toObject(includeInstance, f),\n sceneItemId: (f = msg.getSceneItemId()) && core_protos_uuid_pb.Uuid2l.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.ItemModelView}\n */\nproto.vertexvis.protobuf.core.ItemModelView.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.ItemModelView;\n return proto.vertexvis.protobuf.core.ItemModelView.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.ItemModelView} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.ItemModelView}\n */\nproto.vertexvis.protobuf.core.ItemModelView.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new core_protos_uuid_pb.Uuid2l;\n reader.readMessage(value,core_protos_uuid_pb.Uuid2l.deserializeBinaryFromReader);\n msg.setModelViewId(value);\n break;\n case 2:\n var value = new core_protos_uuid_pb.Uuid2l;\n reader.readMessage(value,core_protos_uuid_pb.Uuid2l.deserializeBinaryFromReader);\n msg.setSceneItemId(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.ItemModelView.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.ItemModelView.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.ItemModelView} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.ItemModelView.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getModelViewId();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n core_protos_uuid_pb.Uuid2l.serializeBinaryToWriter\n );\n }\n f = message.getSceneItemId();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n core_protos_uuid_pb.Uuid2l.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional Uuid2l model_view_id = 1;\n * @return {?proto.vertexvis.protobuf.core.Uuid2l}\n */\nproto.vertexvis.protobuf.core.ItemModelView.prototype.getModelViewId = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Uuid2l} */ (\n jspb.Message.getWrapperField(this, core_protos_uuid_pb.Uuid2l, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Uuid2l|undefined} value */\nproto.vertexvis.protobuf.core.ItemModelView.prototype.setModelViewId = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.core.ItemModelView.prototype.clearModelViewId = function() {\n this.setModelViewId(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.ItemModelView.prototype.hasModelViewId = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional Uuid2l scene_item_id = 2;\n * @return {?proto.vertexvis.protobuf.core.Uuid2l}\n */\nproto.vertexvis.protobuf.core.ItemModelView.prototype.getSceneItemId = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Uuid2l} */ (\n jspb.Message.getWrapperField(this, core_protos_uuid_pb.Uuid2l, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Uuid2l|undefined} value */\nproto.vertexvis.protobuf.core.ItemModelView.prototype.setSceneItemId = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.ItemModelView.prototype.clearSceneItemId = function() {\n this.setSceneItemId(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.ItemModelView.prototype.hasSceneItemId = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\ngoog.object.extend(exports, proto.vertexvis.protobuf.core);\n","/**\n * @fileoverview\n * @enhanceable\n * @suppress {messageConventions} JS Compiler reports an error if a variable or\n * field starts with 'MSG_' and isn't a translatable message.\n * @public\n */\n// GENERATED CODE -- DO NOT EDIT!\n\nvar jspb = require('google-protobuf');\nvar goog = jspb;\nvar global = Function('return this')();\n\ngoog.exportSymbol('proto.vertexvis.protobuf.core.S3FileLocation', null, global);\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.S3FileLocation = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.S3FileLocation, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.S3FileLocation.displayName = 'proto.vertexvis.protobuf.core.S3FileLocation';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.S3FileLocation.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.S3FileLocation.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.S3FileLocation} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.S3FileLocation.toObject = function(includeInstance, msg) {\n var f, obj = {\n bucket: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n key: jspb.Message.getFieldWithDefault(msg, 2, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.S3FileLocation}\n */\nproto.vertexvis.protobuf.core.S3FileLocation.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.S3FileLocation;\n return proto.vertexvis.protobuf.core.S3FileLocation.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.S3FileLocation} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.S3FileLocation}\n */\nproto.vertexvis.protobuf.core.S3FileLocation.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setBucket(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setKey(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.S3FileLocation.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.S3FileLocation.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.S3FileLocation} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.S3FileLocation.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getBucket();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getKey();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional string bucket = 1;\n * @return {string}\n */\nproto.vertexvis.protobuf.core.S3FileLocation.prototype.getBucket = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.vertexvis.protobuf.core.S3FileLocation.prototype.setBucket = function(value) {\n jspb.Message.setProto3StringField(this, 1, value);\n};\n\n\n/**\n * optional string key = 2;\n * @return {string}\n */\nproto.vertexvis.protobuf.core.S3FileLocation.prototype.getKey = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.vertexvis.protobuf.core.S3FileLocation.prototype.setKey = function(value) {\n jspb.Message.setProto3StringField(this, 2, value);\n};\n\n\ngoog.object.extend(exports, proto.vertexvis.protobuf.core);\n","/**\n * @fileoverview\n * @enhanceable\n * @suppress {messageConventions} JS Compiler reports an error if a variable or\n * field starts with 'MSG_' and isn't a translatable message.\n * @public\n */\n// GENERATED CODE -- DO NOT EDIT!\n\nvar jspb = require('google-protobuf');\nvar goog = jspb;\nvar global = Function('return this')();\n\nvar core_protos_aws_pb = require('../../core/protos/aws_pb.js');\nvar core_protos_uuid_pb = require('../../core/protos/uuid_pb.js');\nvar core_protos_geometry_pb = require('../../core/protos/geometry_pb.js');\ngoog.exportSymbol('proto.vertexvis.protobuf.core.CircleResult', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.EllipseResult', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.LengthResult', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.MeasurementOutcome', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.MeasurementResult', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.MinimumDistanceResult', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.PlanarAngleResult', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.PlanarDistanceResult', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.PlanePair', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.SurfaceAreaResult', null, global);\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.PlanePair = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.PlanePair, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.PlanePair.displayName = 'proto.vertexvis.protobuf.core.PlanePair';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.PlanePair.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.PlanePair.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.PlanePair} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.PlanePair.toObject = function(includeInstance, msg) {\n var f, obj = {\n start: (f = msg.getStart()) && core_protos_geometry_pb.Plane.toObject(includeInstance, f),\n end: (f = msg.getEnd()) && core_protos_geometry_pb.Plane.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.PlanePair}\n */\nproto.vertexvis.protobuf.core.PlanePair.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.PlanePair;\n return proto.vertexvis.protobuf.core.PlanePair.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.PlanePair} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.PlanePair}\n */\nproto.vertexvis.protobuf.core.PlanePair.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new core_protos_geometry_pb.Plane;\n reader.readMessage(value,core_protos_geometry_pb.Plane.deserializeBinaryFromReader);\n msg.setStart(value);\n break;\n case 2:\n var value = new core_protos_geometry_pb.Plane;\n reader.readMessage(value,core_protos_geometry_pb.Plane.deserializeBinaryFromReader);\n msg.setEnd(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.PlanePair.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.PlanePair.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.PlanePair} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.PlanePair.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getStart();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n core_protos_geometry_pb.Plane.serializeBinaryToWriter\n );\n }\n f = message.getEnd();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n core_protos_geometry_pb.Plane.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional Plane start = 1;\n * @return {?proto.vertexvis.protobuf.core.Plane}\n */\nproto.vertexvis.protobuf.core.PlanePair.prototype.getStart = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Plane} */ (\n jspb.Message.getWrapperField(this, core_protos_geometry_pb.Plane, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Plane|undefined} value */\nproto.vertexvis.protobuf.core.PlanePair.prototype.setStart = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.core.PlanePair.prototype.clearStart = function() {\n this.setStart(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.PlanePair.prototype.hasStart = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional Plane end = 2;\n * @return {?proto.vertexvis.protobuf.core.Plane}\n */\nproto.vertexvis.protobuf.core.PlanePair.prototype.getEnd = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Plane} */ (\n jspb.Message.getWrapperField(this, core_protos_geometry_pb.Plane, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Plane|undefined} value */\nproto.vertexvis.protobuf.core.PlanePair.prototype.setEnd = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.PlanePair.prototype.clearEnd = function() {\n this.setEnd(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.PlanePair.prototype.hasEnd = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.PlanarDistanceResult = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.PlanarDistanceResult, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.PlanarDistanceResult.displayName = 'proto.vertexvis.protobuf.core.PlanarDistanceResult';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.PlanarDistanceResult.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.PlanarDistanceResult.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.PlanarDistanceResult} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.PlanarDistanceResult.toObject = function(includeInstance, msg) {\n var f, obj = {\n distance: +jspb.Message.getFieldWithDefault(msg, 1, 0.0),\n planes: (f = msg.getPlanes()) && proto.vertexvis.protobuf.core.PlanePair.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.PlanarDistanceResult}\n */\nproto.vertexvis.protobuf.core.PlanarDistanceResult.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.PlanarDistanceResult;\n return proto.vertexvis.protobuf.core.PlanarDistanceResult.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.PlanarDistanceResult} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.PlanarDistanceResult}\n */\nproto.vertexvis.protobuf.core.PlanarDistanceResult.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setDistance(value);\n break;\n case 2:\n var value = new proto.vertexvis.protobuf.core.PlanePair;\n reader.readMessage(value,proto.vertexvis.protobuf.core.PlanePair.deserializeBinaryFromReader);\n msg.setPlanes(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.PlanarDistanceResult.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.PlanarDistanceResult.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.PlanarDistanceResult} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.PlanarDistanceResult.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getDistance();\n if (f !== 0.0) {\n writer.writeDouble(\n 1,\n f\n );\n }\n f = message.getPlanes();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.vertexvis.protobuf.core.PlanePair.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional double distance = 1;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.PlanarDistanceResult.prototype.getDistance = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 1, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.PlanarDistanceResult.prototype.setDistance = function(value) {\n jspb.Message.setProto3FloatField(this, 1, value);\n};\n\n\n/**\n * optional PlanePair planes = 2;\n * @return {?proto.vertexvis.protobuf.core.PlanePair}\n */\nproto.vertexvis.protobuf.core.PlanarDistanceResult.prototype.getPlanes = function() {\n return /** @type{?proto.vertexvis.protobuf.core.PlanePair} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.PlanePair, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.PlanePair|undefined} value */\nproto.vertexvis.protobuf.core.PlanarDistanceResult.prototype.setPlanes = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.PlanarDistanceResult.prototype.clearPlanes = function() {\n this.setPlanes(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.PlanarDistanceResult.prototype.hasPlanes = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.MinimumDistanceResult = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.MinimumDistanceResult, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.MinimumDistanceResult.displayName = 'proto.vertexvis.protobuf.core.MinimumDistanceResult';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.MinimumDistanceResult.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.MinimumDistanceResult.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.MinimumDistanceResult} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.MinimumDistanceResult.toObject = function(includeInstance, msg) {\n var f, obj = {\n distance: +jspb.Message.getFieldWithDefault(msg, 1, 0.0),\n closestPoint1: (f = msg.getClosestPoint1()) && core_protos_geometry_pb.Vector3d.toObject(includeInstance, f),\n closestPoint2: (f = msg.getClosestPoint2()) && core_protos_geometry_pb.Vector3d.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.MinimumDistanceResult}\n */\nproto.vertexvis.protobuf.core.MinimumDistanceResult.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.MinimumDistanceResult;\n return proto.vertexvis.protobuf.core.MinimumDistanceResult.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.MinimumDistanceResult} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.MinimumDistanceResult}\n */\nproto.vertexvis.protobuf.core.MinimumDistanceResult.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setDistance(value);\n break;\n case 2:\n var value = new core_protos_geometry_pb.Vector3d;\n reader.readMessage(value,core_protos_geometry_pb.Vector3d.deserializeBinaryFromReader);\n msg.setClosestPoint1(value);\n break;\n case 3:\n var value = new core_protos_geometry_pb.Vector3d;\n reader.readMessage(value,core_protos_geometry_pb.Vector3d.deserializeBinaryFromReader);\n msg.setClosestPoint2(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.MinimumDistanceResult.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.MinimumDistanceResult.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.MinimumDistanceResult} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.MinimumDistanceResult.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getDistance();\n if (f !== 0.0) {\n writer.writeDouble(\n 1,\n f\n );\n }\n f = message.getClosestPoint1();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n core_protos_geometry_pb.Vector3d.serializeBinaryToWriter\n );\n }\n f = message.getClosestPoint2();\n if (f != null) {\n writer.writeMessage(\n 3,\n f,\n core_protos_geometry_pb.Vector3d.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional double distance = 1;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.MinimumDistanceResult.prototype.getDistance = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 1, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.MinimumDistanceResult.prototype.setDistance = function(value) {\n jspb.Message.setProto3FloatField(this, 1, value);\n};\n\n\n/**\n * optional Vector3d closest_point_1 = 2;\n * @return {?proto.vertexvis.protobuf.core.Vector3d}\n */\nproto.vertexvis.protobuf.core.MinimumDistanceResult.prototype.getClosestPoint1 = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3d} */ (\n jspb.Message.getWrapperField(this, core_protos_geometry_pb.Vector3d, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3d|undefined} value */\nproto.vertexvis.protobuf.core.MinimumDistanceResult.prototype.setClosestPoint1 = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.MinimumDistanceResult.prototype.clearClosestPoint1 = function() {\n this.setClosestPoint1(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.MinimumDistanceResult.prototype.hasClosestPoint1 = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n/**\n * optional Vector3d closest_point_2 = 3;\n * @return {?proto.vertexvis.protobuf.core.Vector3d}\n */\nproto.vertexvis.protobuf.core.MinimumDistanceResult.prototype.getClosestPoint2 = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3d} */ (\n jspb.Message.getWrapperField(this, core_protos_geometry_pb.Vector3d, 3));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3d|undefined} value */\nproto.vertexvis.protobuf.core.MinimumDistanceResult.prototype.setClosestPoint2 = function(value) {\n jspb.Message.setWrapperField(this, 3, value);\n};\n\n\nproto.vertexvis.protobuf.core.MinimumDistanceResult.prototype.clearClosestPoint2 = function() {\n this.setClosestPoint2(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.MinimumDistanceResult.prototype.hasClosestPoint2 = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.PlanarAngleResult = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.PlanarAngleResult, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.PlanarAngleResult.displayName = 'proto.vertexvis.protobuf.core.PlanarAngleResult';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.PlanarAngleResult.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.PlanarAngleResult.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.PlanarAngleResult} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.PlanarAngleResult.toObject = function(includeInstance, msg) {\n var f, obj = {\n angleInRadians: +jspb.Message.getFieldWithDefault(msg, 1, 0.0),\n planes: (f = msg.getPlanes()) && proto.vertexvis.protobuf.core.PlanePair.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.PlanarAngleResult}\n */\nproto.vertexvis.protobuf.core.PlanarAngleResult.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.PlanarAngleResult;\n return proto.vertexvis.protobuf.core.PlanarAngleResult.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.PlanarAngleResult} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.PlanarAngleResult}\n */\nproto.vertexvis.protobuf.core.PlanarAngleResult.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setAngleInRadians(value);\n break;\n case 5:\n var value = new proto.vertexvis.protobuf.core.PlanePair;\n reader.readMessage(value,proto.vertexvis.protobuf.core.PlanePair.deserializeBinaryFromReader);\n msg.setPlanes(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.PlanarAngleResult.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.PlanarAngleResult.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.PlanarAngleResult} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.PlanarAngleResult.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getAngleInRadians();\n if (f !== 0.0) {\n writer.writeDouble(\n 1,\n f\n );\n }\n f = message.getPlanes();\n if (f != null) {\n writer.writeMessage(\n 5,\n f,\n proto.vertexvis.protobuf.core.PlanePair.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional double angle_in_radians = 1;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.PlanarAngleResult.prototype.getAngleInRadians = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 1, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.PlanarAngleResult.prototype.setAngleInRadians = function(value) {\n jspb.Message.setProto3FloatField(this, 1, value);\n};\n\n\n/**\n * optional PlanePair planes = 5;\n * @return {?proto.vertexvis.protobuf.core.PlanePair}\n */\nproto.vertexvis.protobuf.core.PlanarAngleResult.prototype.getPlanes = function() {\n return /** @type{?proto.vertexvis.protobuf.core.PlanePair} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.PlanePair, 5));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.PlanePair|undefined} value */\nproto.vertexvis.protobuf.core.PlanarAngleResult.prototype.setPlanes = function(value) {\n jspb.Message.setWrapperField(this, 5, value);\n};\n\n\nproto.vertexvis.protobuf.core.PlanarAngleResult.prototype.clearPlanes = function() {\n this.setPlanes(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.PlanarAngleResult.prototype.hasPlanes = function() {\n return jspb.Message.getField(this, 5) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.SurfaceAreaResult = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.SurfaceAreaResult, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.SurfaceAreaResult.displayName = 'proto.vertexvis.protobuf.core.SurfaceAreaResult';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.SurfaceAreaResult.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.SurfaceAreaResult.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.SurfaceAreaResult} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.SurfaceAreaResult.toObject = function(includeInstance, msg) {\n var f, obj = {\n area: +jspb.Message.getFieldWithDefault(msg, 1, 0.0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.SurfaceAreaResult}\n */\nproto.vertexvis.protobuf.core.SurfaceAreaResult.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.SurfaceAreaResult;\n return proto.vertexvis.protobuf.core.SurfaceAreaResult.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.SurfaceAreaResult} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.SurfaceAreaResult}\n */\nproto.vertexvis.protobuf.core.SurfaceAreaResult.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setArea(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.SurfaceAreaResult.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.SurfaceAreaResult.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.SurfaceAreaResult} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.SurfaceAreaResult.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getArea();\n if (f !== 0.0) {\n writer.writeDouble(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional double area = 1;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.SurfaceAreaResult.prototype.getArea = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 1, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.SurfaceAreaResult.prototype.setArea = function(value) {\n jspb.Message.setProto3FloatField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.LengthResult = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.LengthResult, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.LengthResult.displayName = 'proto.vertexvis.protobuf.core.LengthResult';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.LengthResult.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.LengthResult.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.LengthResult} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.LengthResult.toObject = function(includeInstance, msg) {\n var f, obj = {\n length: +jspb.Message.getFieldWithDefault(msg, 1, 0.0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.LengthResult}\n */\nproto.vertexvis.protobuf.core.LengthResult.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.LengthResult;\n return proto.vertexvis.protobuf.core.LengthResult.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.LengthResult} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.LengthResult}\n */\nproto.vertexvis.protobuf.core.LengthResult.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setLength(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.LengthResult.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.LengthResult.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.LengthResult} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.LengthResult.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getLength();\n if (f !== 0.0) {\n writer.writeDouble(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional double length = 1;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.LengthResult.prototype.getLength = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 1, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.LengthResult.prototype.setLength = function(value) {\n jspb.Message.setProto3FloatField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.CircleResult = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.CircleResult, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.CircleResult.displayName = 'proto.vertexvis.protobuf.core.CircleResult';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.CircleResult.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.CircleResult.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.CircleResult} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.CircleResult.toObject = function(includeInstance, msg) {\n var f, obj = {\n radius: +jspb.Message.getFieldWithDefault(msg, 1, 0.0),\n center: (f = msg.getCenter()) && core_protos_geometry_pb.Vector3d.toObject(includeInstance, f),\n axis: (f = msg.getAxis()) && core_protos_geometry_pb.Vector3d.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.CircleResult}\n */\nproto.vertexvis.protobuf.core.CircleResult.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.CircleResult;\n return proto.vertexvis.protobuf.core.CircleResult.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.CircleResult} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.CircleResult}\n */\nproto.vertexvis.protobuf.core.CircleResult.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setRadius(value);\n break;\n case 2:\n var value = new core_protos_geometry_pb.Vector3d;\n reader.readMessage(value,core_protos_geometry_pb.Vector3d.deserializeBinaryFromReader);\n msg.setCenter(value);\n break;\n case 3:\n var value = new core_protos_geometry_pb.Vector3d;\n reader.readMessage(value,core_protos_geometry_pb.Vector3d.deserializeBinaryFromReader);\n msg.setAxis(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.CircleResult.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.CircleResult.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.CircleResult} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.CircleResult.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getRadius();\n if (f !== 0.0) {\n writer.writeDouble(\n 1,\n f\n );\n }\n f = message.getCenter();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n core_protos_geometry_pb.Vector3d.serializeBinaryToWriter\n );\n }\n f = message.getAxis();\n if (f != null) {\n writer.writeMessage(\n 3,\n f,\n core_protos_geometry_pb.Vector3d.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional double radius = 1;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.CircleResult.prototype.getRadius = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 1, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.CircleResult.prototype.setRadius = function(value) {\n jspb.Message.setProto3FloatField(this, 1, value);\n};\n\n\n/**\n * optional Vector3d center = 2;\n * @return {?proto.vertexvis.protobuf.core.Vector3d}\n */\nproto.vertexvis.protobuf.core.CircleResult.prototype.getCenter = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3d} */ (\n jspb.Message.getWrapperField(this, core_protos_geometry_pb.Vector3d, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3d|undefined} value */\nproto.vertexvis.protobuf.core.CircleResult.prototype.setCenter = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.CircleResult.prototype.clearCenter = function() {\n this.setCenter(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.CircleResult.prototype.hasCenter = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n/**\n * optional Vector3d axis = 3;\n * @return {?proto.vertexvis.protobuf.core.Vector3d}\n */\nproto.vertexvis.protobuf.core.CircleResult.prototype.getAxis = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3d} */ (\n jspb.Message.getWrapperField(this, core_protos_geometry_pb.Vector3d, 3));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3d|undefined} value */\nproto.vertexvis.protobuf.core.CircleResult.prototype.setAxis = function(value) {\n jspb.Message.setWrapperField(this, 3, value);\n};\n\n\nproto.vertexvis.protobuf.core.CircleResult.prototype.clearAxis = function() {\n this.setAxis(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.CircleResult.prototype.hasAxis = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.EllipseResult = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.EllipseResult, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.EllipseResult.displayName = 'proto.vertexvis.protobuf.core.EllipseResult';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.EllipseResult.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.EllipseResult.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.EllipseResult} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.EllipseResult.toObject = function(includeInstance, msg) {\n var f, obj = {\n radiusMin: +jspb.Message.getFieldWithDefault(msg, 1, 0.0),\n radiusMax: +jspb.Message.getFieldWithDefault(msg, 2, 0.0),\n center: (f = msg.getCenter()) && core_protos_geometry_pb.Vector3d.toObject(includeInstance, f),\n axis: (f = msg.getAxis()) && core_protos_geometry_pb.Vector3d.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.EllipseResult}\n */\nproto.vertexvis.protobuf.core.EllipseResult.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.EllipseResult;\n return proto.vertexvis.protobuf.core.EllipseResult.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.EllipseResult} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.EllipseResult}\n */\nproto.vertexvis.protobuf.core.EllipseResult.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setRadiusMin(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setRadiusMax(value);\n break;\n case 3:\n var value = new core_protos_geometry_pb.Vector3d;\n reader.readMessage(value,core_protos_geometry_pb.Vector3d.deserializeBinaryFromReader);\n msg.setCenter(value);\n break;\n case 4:\n var value = new core_protos_geometry_pb.Vector3d;\n reader.readMessage(value,core_protos_geometry_pb.Vector3d.deserializeBinaryFromReader);\n msg.setAxis(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.EllipseResult.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.EllipseResult.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.EllipseResult} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.EllipseResult.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getRadiusMin();\n if (f !== 0.0) {\n writer.writeDouble(\n 1,\n f\n );\n }\n f = message.getRadiusMax();\n if (f !== 0.0) {\n writer.writeDouble(\n 2,\n f\n );\n }\n f = message.getCenter();\n if (f != null) {\n writer.writeMessage(\n 3,\n f,\n core_protos_geometry_pb.Vector3d.serializeBinaryToWriter\n );\n }\n f = message.getAxis();\n if (f != null) {\n writer.writeMessage(\n 4,\n f,\n core_protos_geometry_pb.Vector3d.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional double radius_min = 1;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.EllipseResult.prototype.getRadiusMin = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 1, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.EllipseResult.prototype.setRadiusMin = function(value) {\n jspb.Message.setProto3FloatField(this, 1, value);\n};\n\n\n/**\n * optional double radius_max = 2;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.EllipseResult.prototype.getRadiusMax = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 2, 0.0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.EllipseResult.prototype.setRadiusMax = function(value) {\n jspb.Message.setProto3FloatField(this, 2, value);\n};\n\n\n/**\n * optional Vector3d center = 3;\n * @return {?proto.vertexvis.protobuf.core.Vector3d}\n */\nproto.vertexvis.protobuf.core.EllipseResult.prototype.getCenter = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3d} */ (\n jspb.Message.getWrapperField(this, core_protos_geometry_pb.Vector3d, 3));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3d|undefined} value */\nproto.vertexvis.protobuf.core.EllipseResult.prototype.setCenter = function(value) {\n jspb.Message.setWrapperField(this, 3, value);\n};\n\n\nproto.vertexvis.protobuf.core.EllipseResult.prototype.clearCenter = function() {\n this.setCenter(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.EllipseResult.prototype.hasCenter = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n/**\n * optional Vector3d axis = 4;\n * @return {?proto.vertexvis.protobuf.core.Vector3d}\n */\nproto.vertexvis.protobuf.core.EllipseResult.prototype.getAxis = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3d} */ (\n jspb.Message.getWrapperField(this, core_protos_geometry_pb.Vector3d, 4));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3d|undefined} value */\nproto.vertexvis.protobuf.core.EllipseResult.prototype.setAxis = function(value) {\n jspb.Message.setWrapperField(this, 4, value);\n};\n\n\nproto.vertexvis.protobuf.core.EllipseResult.prototype.clearAxis = function() {\n this.setAxis(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.EllipseResult.prototype.hasAxis = function() {\n return jspb.Message.getField(this, 4) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.MeasurementResult = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, proto.vertexvis.protobuf.core.MeasurementResult.oneofGroups_);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.MeasurementResult, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.MeasurementResult.displayName = 'proto.vertexvis.protobuf.core.MeasurementResult';\n}\n/**\n * Oneof group definitions for this message. Each group defines the field\n * numbers belonging to that group. When of these fields' value is set, all\n * other fields in the group are cleared. During deserialization, if multiple\n * fields are encountered for a group, only the last value seen will be kept.\n * @private {!Array<!Array<number>>}\n * @const\n */\nproto.vertexvis.protobuf.core.MeasurementResult.oneofGroups_ = [[1,2,3,4,5,6,7]];\n\n/**\n * @enum {number}\n */\nproto.vertexvis.protobuf.core.MeasurementResult.DetailsCase = {\n DETAILS_NOT_SET: 0,\n PLANAR_DISTANCE: 1,\n PLANAR_ANGLE: 2,\n MINIMUM_DISTANCE: 3,\n TOTAL_SURFACE_AREA: 4,\n TOTAL_LENGTH: 5,\n CIRCLE: 6,\n ELLIPSE: 7\n};\n\n/**\n * @return {proto.vertexvis.protobuf.core.MeasurementResult.DetailsCase}\n */\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.getDetailsCase = function() {\n return /** @type {proto.vertexvis.protobuf.core.MeasurementResult.DetailsCase} */(jspb.Message.computeOneofCase(this, proto.vertexvis.protobuf.core.MeasurementResult.oneofGroups_[0]));\n};\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.MeasurementResult.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.MeasurementResult} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.MeasurementResult.toObject = function(includeInstance, msg) {\n var f, obj = {\n planarDistance: (f = msg.getPlanarDistance()) && proto.vertexvis.protobuf.core.PlanarDistanceResult.toObject(includeInstance, f),\n planarAngle: (f = msg.getPlanarAngle()) && proto.vertexvis.protobuf.core.PlanarAngleResult.toObject(includeInstance, f),\n minimumDistance: (f = msg.getMinimumDistance()) && proto.vertexvis.protobuf.core.MinimumDistanceResult.toObject(includeInstance, f),\n totalSurfaceArea: (f = msg.getTotalSurfaceArea()) && proto.vertexvis.protobuf.core.SurfaceAreaResult.toObject(includeInstance, f),\n totalLength: (f = msg.getTotalLength()) && proto.vertexvis.protobuf.core.LengthResult.toObject(includeInstance, f),\n circle: (f = msg.getCircle()) && proto.vertexvis.protobuf.core.CircleResult.toObject(includeInstance, f),\n ellipse: (f = msg.getEllipse()) && proto.vertexvis.protobuf.core.EllipseResult.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.MeasurementResult}\n */\nproto.vertexvis.protobuf.core.MeasurementResult.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.MeasurementResult;\n return proto.vertexvis.protobuf.core.MeasurementResult.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.MeasurementResult} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.MeasurementResult}\n */\nproto.vertexvis.protobuf.core.MeasurementResult.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.vertexvis.protobuf.core.PlanarDistanceResult;\n reader.readMessage(value,proto.vertexvis.protobuf.core.PlanarDistanceResult.deserializeBinaryFromReader);\n msg.setPlanarDistance(value);\n break;\n case 2:\n var value = new proto.vertexvis.protobuf.core.PlanarAngleResult;\n reader.readMessage(value,proto.vertexvis.protobuf.core.PlanarAngleResult.deserializeBinaryFromReader);\n msg.setPlanarAngle(value);\n break;\n case 3:\n var value = new proto.vertexvis.protobuf.core.MinimumDistanceResult;\n reader.readMessage(value,proto.vertexvis.protobuf.core.MinimumDistanceResult.deserializeBinaryFromReader);\n msg.setMinimumDistance(value);\n break;\n case 4:\n var value = new proto.vertexvis.protobuf.core.SurfaceAreaResult;\n reader.readMessage(value,proto.vertexvis.protobuf.core.SurfaceAreaResult.deserializeBinaryFromReader);\n msg.setTotalSurfaceArea(value);\n break;\n case 5:\n var value = new proto.vertexvis.protobuf.core.LengthResult;\n reader.readMessage(value,proto.vertexvis.protobuf.core.LengthResult.deserializeBinaryFromReader);\n msg.setTotalLength(value);\n break;\n case 6:\n var value = new proto.vertexvis.protobuf.core.CircleResult;\n reader.readMessage(value,proto.vertexvis.protobuf.core.CircleResult.deserializeBinaryFromReader);\n msg.setCircle(value);\n break;\n case 7:\n var value = new proto.vertexvis.protobuf.core.EllipseResult;\n reader.readMessage(value,proto.vertexvis.protobuf.core.EllipseResult.deserializeBinaryFromReader);\n msg.setEllipse(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.MeasurementResult.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.MeasurementResult} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.MeasurementResult.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPlanarDistance();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.vertexvis.protobuf.core.PlanarDistanceResult.serializeBinaryToWriter\n );\n }\n f = message.getPlanarAngle();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.vertexvis.protobuf.core.PlanarAngleResult.serializeBinaryToWriter\n );\n }\n f = message.getMinimumDistance();\n if (f != null) {\n writer.writeMessage(\n 3,\n f,\n proto.vertexvis.protobuf.core.MinimumDistanceResult.serializeBinaryToWriter\n );\n }\n f = message.getTotalSurfaceArea();\n if (f != null) {\n writer.writeMessage(\n 4,\n f,\n proto.vertexvis.protobuf.core.SurfaceAreaResult.serializeBinaryToWriter\n );\n }\n f = message.getTotalLength();\n if (f != null) {\n writer.writeMessage(\n 5,\n f,\n proto.vertexvis.protobuf.core.LengthResult.serializeBinaryToWriter\n );\n }\n f = message.getCircle();\n if (f != null) {\n writer.writeMessage(\n 6,\n f,\n proto.vertexvis.protobuf.core.CircleResult.serializeBinaryToWriter\n );\n }\n f = message.getEllipse();\n if (f != null) {\n writer.writeMessage(\n 7,\n f,\n proto.vertexvis.protobuf.core.EllipseResult.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional PlanarDistanceResult planar_distance = 1;\n * @return {?proto.vertexvis.protobuf.core.PlanarDistanceResult}\n */\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.getPlanarDistance = function() {\n return /** @type{?proto.vertexvis.protobuf.core.PlanarDistanceResult} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.PlanarDistanceResult, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.PlanarDistanceResult|undefined} value */\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.setPlanarDistance = function(value) {\n jspb.Message.setOneofWrapperField(this, 1, proto.vertexvis.protobuf.core.MeasurementResult.oneofGroups_[0], value);\n};\n\n\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.clearPlanarDistance = function() {\n this.setPlanarDistance(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.hasPlanarDistance = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional PlanarAngleResult planar_angle = 2;\n * @return {?proto.vertexvis.protobuf.core.PlanarAngleResult}\n */\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.getPlanarAngle = function() {\n return /** @type{?proto.vertexvis.protobuf.core.PlanarAngleResult} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.PlanarAngleResult, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.PlanarAngleResult|undefined} value */\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.setPlanarAngle = function(value) {\n jspb.Message.setOneofWrapperField(this, 2, proto.vertexvis.protobuf.core.MeasurementResult.oneofGroups_[0], value);\n};\n\n\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.clearPlanarAngle = function() {\n this.setPlanarAngle(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.hasPlanarAngle = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n/**\n * optional MinimumDistanceResult minimum_distance = 3;\n * @return {?proto.vertexvis.protobuf.core.MinimumDistanceResult}\n */\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.getMinimumDistance = function() {\n return /** @type{?proto.vertexvis.protobuf.core.MinimumDistanceResult} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.MinimumDistanceResult, 3));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.MinimumDistanceResult|undefined} value */\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.setMinimumDistance = function(value) {\n jspb.Message.setOneofWrapperField(this, 3, proto.vertexvis.protobuf.core.MeasurementResult.oneofGroups_[0], value);\n};\n\n\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.clearMinimumDistance = function() {\n this.setMinimumDistance(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.hasMinimumDistance = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n/**\n * optional SurfaceAreaResult total_surface_area = 4;\n * @return {?proto.vertexvis.protobuf.core.SurfaceAreaResult}\n */\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.getTotalSurfaceArea = function() {\n return /** @type{?proto.vertexvis.protobuf.core.SurfaceAreaResult} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.SurfaceAreaResult, 4));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.SurfaceAreaResult|undefined} value */\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.setTotalSurfaceArea = function(value) {\n jspb.Message.setOneofWrapperField(this, 4, proto.vertexvis.protobuf.core.MeasurementResult.oneofGroups_[0], value);\n};\n\n\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.clearTotalSurfaceArea = function() {\n this.setTotalSurfaceArea(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.hasTotalSurfaceArea = function() {\n return jspb.Message.getField(this, 4) != null;\n};\n\n\n/**\n * optional LengthResult total_length = 5;\n * @return {?proto.vertexvis.protobuf.core.LengthResult}\n */\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.getTotalLength = function() {\n return /** @type{?proto.vertexvis.protobuf.core.LengthResult} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.LengthResult, 5));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.LengthResult|undefined} value */\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.setTotalLength = function(value) {\n jspb.Message.setOneofWrapperField(this, 5, proto.vertexvis.protobuf.core.MeasurementResult.oneofGroups_[0], value);\n};\n\n\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.clearTotalLength = function() {\n this.setTotalLength(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.hasTotalLength = function() {\n return jspb.Message.getField(this, 5) != null;\n};\n\n\n/**\n * optional CircleResult circle = 6;\n * @return {?proto.vertexvis.protobuf.core.CircleResult}\n */\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.getCircle = function() {\n return /** @type{?proto.vertexvis.protobuf.core.CircleResult} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.CircleResult, 6));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.CircleResult|undefined} value */\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.setCircle = function(value) {\n jspb.Message.setOneofWrapperField(this, 6, proto.vertexvis.protobuf.core.MeasurementResult.oneofGroups_[0], value);\n};\n\n\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.clearCircle = function() {\n this.setCircle(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.hasCircle = function() {\n return jspb.Message.getField(this, 6) != null;\n};\n\n\n/**\n * optional EllipseResult ellipse = 7;\n * @return {?proto.vertexvis.protobuf.core.EllipseResult}\n */\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.getEllipse = function() {\n return /** @type{?proto.vertexvis.protobuf.core.EllipseResult} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.EllipseResult, 7));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.EllipseResult|undefined} value */\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.setEllipse = function(value) {\n jspb.Message.setOneofWrapperField(this, 7, proto.vertexvis.protobuf.core.MeasurementResult.oneofGroups_[0], value);\n};\n\n\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.clearEllipse = function() {\n this.setEllipse(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.MeasurementResult.prototype.hasEllipse = function() {\n return jspb.Message.getField(this, 7) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.MeasurementOutcome = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.vertexvis.protobuf.core.MeasurementOutcome.repeatedFields_, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.MeasurementOutcome, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.MeasurementOutcome.displayName = 'proto.vertexvis.protobuf.core.MeasurementOutcome';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array<number>}\n * @const\n */\nproto.vertexvis.protobuf.core.MeasurementOutcome.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.MeasurementOutcome.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.MeasurementOutcome.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.MeasurementOutcome} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.MeasurementOutcome.toObject = function(includeInstance, msg) {\n var f, obj = {\n resultsList: jspb.Message.toObjectList(msg.getResultsList(),\n proto.vertexvis.protobuf.core.MeasurementResult.toObject, includeInstance),\n isApproximate: jspb.Message.getFieldWithDefault(msg, 2, false)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.MeasurementOutcome}\n */\nproto.vertexvis.protobuf.core.MeasurementOutcome.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.MeasurementOutcome;\n return proto.vertexvis.protobuf.core.MeasurementOutcome.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.MeasurementOutcome} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.MeasurementOutcome}\n */\nproto.vertexvis.protobuf.core.MeasurementOutcome.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.vertexvis.protobuf.core.MeasurementResult;\n reader.readMessage(value,proto.vertexvis.protobuf.core.MeasurementResult.deserializeBinaryFromReader);\n msg.addResults(value);\n break;\n case 2:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setIsApproximate(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.MeasurementOutcome.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.MeasurementOutcome.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.MeasurementOutcome} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.MeasurementOutcome.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getResultsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.vertexvis.protobuf.core.MeasurementResult.serializeBinaryToWriter\n );\n }\n f = message.getIsApproximate();\n if (f) {\n writer.writeBool(\n 2,\n f\n );\n }\n};\n\n\n/**\n * repeated MeasurementResult results = 1;\n * @return {!Array<!proto.vertexvis.protobuf.core.MeasurementResult>}\n */\nproto.vertexvis.protobuf.core.MeasurementOutcome.prototype.getResultsList = function() {\n return /** @type{!Array<!proto.vertexvis.protobuf.core.MeasurementResult>} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.vertexvis.protobuf.core.MeasurementResult, 1));\n};\n\n\n/** @param {!Array<!proto.vertexvis.protobuf.core.MeasurementResult>} value */\nproto.vertexvis.protobuf.core.MeasurementOutcome.prototype.setResultsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.vertexvis.protobuf.core.MeasurementResult=} opt_value\n * @param {number=} opt_index\n * @return {!proto.vertexvis.protobuf.core.MeasurementResult}\n */\nproto.vertexvis.protobuf.core.MeasurementOutcome.prototype.addResults = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.vertexvis.protobuf.core.MeasurementResult, opt_index);\n};\n\n\nproto.vertexvis.protobuf.core.MeasurementOutcome.prototype.clearResultsList = function() {\n this.setResultsList([]);\n};\n\n\n/**\n * optional bool is_approximate = 2;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.vertexvis.protobuf.core.MeasurementOutcome.prototype.getIsApproximate = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 2, false));\n};\n\n\n/** @param {boolean} value */\nproto.vertexvis.protobuf.core.MeasurementOutcome.prototype.setIsApproximate = function(value) {\n jspb.Message.setProto3BooleanField(this, 2, value);\n};\n\n\ngoog.object.extend(exports, proto.vertexvis.protobuf.core);\n","/**\n * @fileoverview\n * @enhanceable\n * @suppress {messageConventions} JS Compiler reports an error if a variable or\n * field starts with 'MSG_' and isn't a translatable message.\n * @public\n */\n// GENERATED CODE -- DO NOT EDIT!\n\nvar jspb = require('google-protobuf');\nvar goog = jspb;\nvar global = Function('return this')();\n\ngoog.exportSymbol('proto.vertexvis.protobuf.core.Cursor', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.OffsetCursor', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.OffsetPager', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.Pager', null, global);\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.Pager = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.Pager, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.Pager.displayName = 'proto.vertexvis.protobuf.core.Pager';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.Pager.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.Pager.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.Pager} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Pager.toObject = function(includeInstance, msg) {\n var f, obj = {\n limit: jspb.Message.getFieldWithDefault(msg, 1, 0),\n cursor: jspb.Message.getFieldWithDefault(msg, 2, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.Pager}\n */\nproto.vertexvis.protobuf.core.Pager.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.Pager;\n return proto.vertexvis.protobuf.core.Pager.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.Pager} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.Pager}\n */\nproto.vertexvis.protobuf.core.Pager.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setLimit(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setCursor(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.Pager.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.Pager.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.Pager} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Pager.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getLimit();\n if (f !== 0) {\n writer.writeUint32(\n 1,\n f\n );\n }\n f = message.getCursor();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional uint32 limit = 1;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.Pager.prototype.getLimit = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.Pager.prototype.setLimit = function(value) {\n jspb.Message.setProto3IntField(this, 1, value);\n};\n\n\n/**\n * optional string cursor = 2;\n * @return {string}\n */\nproto.vertexvis.protobuf.core.Pager.prototype.getCursor = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.vertexvis.protobuf.core.Pager.prototype.setCursor = function(value) {\n jspb.Message.setProto3StringField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.OffsetPager = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, proto.vertexvis.protobuf.core.OffsetPager.oneofGroups_);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.OffsetPager, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.OffsetPager.displayName = 'proto.vertexvis.protobuf.core.OffsetPager';\n}\n/**\n * Oneof group definitions for this message. Each group defines the field\n * numbers belonging to that group. When of these fields' value is set, all\n * other fields in the group are cleared. During deserialization, if multiple\n * fields are encountered for a group, only the last value seen will be kept.\n * @private {!Array<!Array<number>>}\n * @const\n */\nproto.vertexvis.protobuf.core.OffsetPager.oneofGroups_ = [[2,3]];\n\n/**\n * @enum {number}\n */\nproto.vertexvis.protobuf.core.OffsetPager.PagerCase = {\n PAGER_NOT_SET: 0,\n CURSOR: 2,\n OFFSET: 3\n};\n\n/**\n * @return {proto.vertexvis.protobuf.core.OffsetPager.PagerCase}\n */\nproto.vertexvis.protobuf.core.OffsetPager.prototype.getPagerCase = function() {\n return /** @type {proto.vertexvis.protobuf.core.OffsetPager.PagerCase} */(jspb.Message.computeOneofCase(this, proto.vertexvis.protobuf.core.OffsetPager.oneofGroups_[0]));\n};\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.OffsetPager.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.OffsetPager.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.OffsetPager} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.OffsetPager.toObject = function(includeInstance, msg) {\n var f, obj = {\n limit: jspb.Message.getFieldWithDefault(msg, 1, 0),\n cursor: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n offset: jspb.Message.getFieldWithDefault(msg, 3, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.OffsetPager}\n */\nproto.vertexvis.protobuf.core.OffsetPager.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.OffsetPager;\n return proto.vertexvis.protobuf.core.OffsetPager.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.OffsetPager} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.OffsetPager}\n */\nproto.vertexvis.protobuf.core.OffsetPager.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setLimit(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setCursor(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setOffset(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.OffsetPager.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.OffsetPager.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.OffsetPager} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.OffsetPager.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getLimit();\n if (f !== 0) {\n writer.writeUint32(\n 1,\n f\n );\n }\n f = /** @type {string} */ (jspb.Message.getField(message, 2));\n if (f != null) {\n writer.writeString(\n 2,\n f\n );\n }\n f = /** @type {number} */ (jspb.Message.getField(message, 3));\n if (f != null) {\n writer.writeUint32(\n 3,\n f\n );\n }\n};\n\n\n/**\n * optional uint32 limit = 1;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.OffsetPager.prototype.getLimit = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.OffsetPager.prototype.setLimit = function(value) {\n jspb.Message.setProto3IntField(this, 1, value);\n};\n\n\n/**\n * optional string cursor = 2;\n * @return {string}\n */\nproto.vertexvis.protobuf.core.OffsetPager.prototype.getCursor = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.vertexvis.protobuf.core.OffsetPager.prototype.setCursor = function(value) {\n jspb.Message.setOneofField(this, 2, proto.vertexvis.protobuf.core.OffsetPager.oneofGroups_[0], value);\n};\n\n\nproto.vertexvis.protobuf.core.OffsetPager.prototype.clearCursor = function() {\n jspb.Message.setOneofField(this, 2, proto.vertexvis.protobuf.core.OffsetPager.oneofGroups_[0], undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.OffsetPager.prototype.hasCursor = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n/**\n * optional uint32 offset = 3;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.OffsetPager.prototype.getOffset = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.OffsetPager.prototype.setOffset = function(value) {\n jspb.Message.setOneofField(this, 3, proto.vertexvis.protobuf.core.OffsetPager.oneofGroups_[0], value);\n};\n\n\nproto.vertexvis.protobuf.core.OffsetPager.prototype.clearOffset = function() {\n jspb.Message.setOneofField(this, 3, proto.vertexvis.protobuf.core.OffsetPager.oneofGroups_[0], undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.OffsetPager.prototype.hasOffset = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.Cursor = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.Cursor, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.Cursor.displayName = 'proto.vertexvis.protobuf.core.Cursor';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.Cursor.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.Cursor.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.Cursor} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Cursor.toObject = function(includeInstance, msg) {\n var f, obj = {\n next: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.Cursor}\n */\nproto.vertexvis.protobuf.core.Cursor.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.Cursor;\n return proto.vertexvis.protobuf.core.Cursor.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.Cursor} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.Cursor}\n */\nproto.vertexvis.protobuf.core.Cursor.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setNext(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.Cursor.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.Cursor.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.Cursor} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.Cursor.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getNext();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string next = 1;\n * @return {string}\n */\nproto.vertexvis.protobuf.core.Cursor.prototype.getNext = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.vertexvis.protobuf.core.Cursor.prototype.setNext = function(value) {\n jspb.Message.setProto3StringField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.OffsetCursor = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.OffsetCursor, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.OffsetCursor.displayName = 'proto.vertexvis.protobuf.core.OffsetCursor';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.OffsetCursor.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.OffsetCursor.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.OffsetCursor} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.OffsetCursor.toObject = function(includeInstance, msg) {\n var f, obj = {\n total: jspb.Message.getFieldWithDefault(msg, 1, 0),\n next: jspb.Message.getFieldWithDefault(msg, 2, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.OffsetCursor}\n */\nproto.vertexvis.protobuf.core.OffsetCursor.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.OffsetCursor;\n return proto.vertexvis.protobuf.core.OffsetCursor.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.OffsetCursor} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.OffsetCursor}\n */\nproto.vertexvis.protobuf.core.OffsetCursor.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setTotal(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setNext(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.OffsetCursor.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.OffsetCursor.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.OffsetCursor} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.OffsetCursor.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTotal();\n if (f !== 0) {\n writer.writeUint32(\n 1,\n f\n );\n }\n f = message.getNext();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional uint32 total = 1;\n * @return {number}\n */\nproto.vertexvis.protobuf.core.OffsetCursor.prototype.getTotal = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.vertexvis.protobuf.core.OffsetCursor.prototype.setTotal = function(value) {\n jspb.Message.setProto3IntField(this, 1, value);\n};\n\n\n/**\n * optional string next = 2;\n * @return {string}\n */\nproto.vertexvis.protobuf.core.OffsetCursor.prototype.getNext = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.vertexvis.protobuf.core.OffsetCursor.prototype.setNext = function(value) {\n jspb.Message.setProto3StringField(this, 2, value);\n};\n\n\ngoog.object.extend(exports, proto.vertexvis.protobuf.core);\n","/**\n * @fileoverview\n * @enhanceable\n * @suppress {messageConventions} JS Compiler reports an error if a variable or\n * field starts with 'MSG_' and isn't a translatable message.\n * @public\n */\n// GENERATED CODE -- DO NOT EDIT!\n\nvar jspb = require('google-protobuf');\nvar goog = jspb;\nvar global = Function('return this')();\n\nvar core_protos_geometry_pb = require('../../core/protos/geometry_pb.js');\nvar core_protos_uuid_pb = require('../../core/protos/uuid_pb.js');\nvar google_protobuf_timestamp_pb = require('google-protobuf/google/protobuf/timestamp_pb.js');\nvar google_protobuf_wrappers_pb = require('google-protobuf/google/protobuf/wrappers_pb.js');\ngoog.exportSymbol('proto.vertexvis.protobuf.core.CalloutAnnotationData', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.CustomAnnotationData', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.SceneAnnotation', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.SceneAnnotationData', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.SceneAnnotationSet', null, global);\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.SceneAnnotationSet = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.SceneAnnotationSet, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.SceneAnnotationSet.displayName = 'proto.vertexvis.protobuf.core.SceneAnnotationSet';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.SceneAnnotationSet.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.SceneAnnotationSet.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.SceneAnnotationSet} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.SceneAnnotationSet.toObject = function(includeInstance, msg) {\n var f, obj = {\n id: (f = msg.getId()) && core_protos_uuid_pb.Uuid2l.toObject(includeInstance, f),\n createdAt: (f = msg.getCreatedAt()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),\n modifiedAt: (f = msg.getModifiedAt()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),\n name: (f = msg.getName()) && google_protobuf_wrappers_pb.StringValue.toObject(includeInstance, f),\n suppliedId: (f = msg.getSuppliedId()) && google_protobuf_wrappers_pb.StringValue.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.SceneAnnotationSet}\n */\nproto.vertexvis.protobuf.core.SceneAnnotationSet.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.SceneAnnotationSet;\n return proto.vertexvis.protobuf.core.SceneAnnotationSet.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.SceneAnnotationSet} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.SceneAnnotationSet}\n */\nproto.vertexvis.protobuf.core.SceneAnnotationSet.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new core_protos_uuid_pb.Uuid2l;\n reader.readMessage(value,core_protos_uuid_pb.Uuid2l.deserializeBinaryFromReader);\n msg.setId(value);\n break;\n case 2:\n var value = new google_protobuf_timestamp_pb.Timestamp;\n reader.readMessage(value,google_protobuf_timestamp_pb.Timestamp.deserializeBinaryFromReader);\n msg.setCreatedAt(value);\n break;\n case 3:\n var value = new google_protobuf_timestamp_pb.Timestamp;\n reader.readMessage(value,google_protobuf_timestamp_pb.Timestamp.deserializeBinaryFromReader);\n msg.setModifiedAt(value);\n break;\n case 4:\n var value = new google_protobuf_wrappers_pb.StringValue;\n reader.readMessage(value,google_protobuf_wrappers_pb.StringValue.deserializeBinaryFromReader);\n msg.setName(value);\n break;\n case 5:\n var value = new google_protobuf_wrappers_pb.StringValue;\n reader.readMessage(value,google_protobuf_wrappers_pb.StringValue.deserializeBinaryFromReader);\n msg.setSuppliedId(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.SceneAnnotationSet.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.SceneAnnotationSet.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.SceneAnnotationSet} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.SceneAnnotationSet.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getId();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n core_protos_uuid_pb.Uuid2l.serializeBinaryToWriter\n );\n }\n f = message.getCreatedAt();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n google_protobuf_timestamp_pb.Timestamp.serializeBinaryToWriter\n );\n }\n f = message.getModifiedAt();\n if (f != null) {\n writer.writeMessage(\n 3,\n f,\n google_protobuf_timestamp_pb.Timestamp.serializeBinaryToWriter\n );\n }\n f = message.getName();\n if (f != null) {\n writer.writeMessage(\n 4,\n f,\n google_protobuf_wrappers_pb.StringValue.serializeBinaryToWriter\n );\n }\n f = message.getSuppliedId();\n if (f != null) {\n writer.writeMessage(\n 5,\n f,\n google_protobuf_wrappers_pb.StringValue.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional Uuid2l id = 1;\n * @return {?proto.vertexvis.protobuf.core.Uuid2l}\n */\nproto.vertexvis.protobuf.core.SceneAnnotationSet.prototype.getId = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Uuid2l} */ (\n jspb.Message.getWrapperField(this, core_protos_uuid_pb.Uuid2l, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Uuid2l|undefined} value */\nproto.vertexvis.protobuf.core.SceneAnnotationSet.prototype.setId = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.core.SceneAnnotationSet.prototype.clearId = function() {\n this.setId(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.SceneAnnotationSet.prototype.hasId = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional google.protobuf.Timestamp created_at = 2;\n * @return {?proto.google.protobuf.Timestamp}\n */\nproto.vertexvis.protobuf.core.SceneAnnotationSet.prototype.getCreatedAt = function() {\n return /** @type{?proto.google.protobuf.Timestamp} */ (\n jspb.Message.getWrapperField(this, google_protobuf_timestamp_pb.Timestamp, 2));\n};\n\n\n/** @param {?proto.google.protobuf.Timestamp|undefined} value */\nproto.vertexvis.protobuf.core.SceneAnnotationSet.prototype.setCreatedAt = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.SceneAnnotationSet.prototype.clearCreatedAt = function() {\n this.setCreatedAt(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.SceneAnnotationSet.prototype.hasCreatedAt = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n/**\n * optional google.protobuf.Timestamp modified_at = 3;\n * @return {?proto.google.protobuf.Timestamp}\n */\nproto.vertexvis.protobuf.core.SceneAnnotationSet.prototype.getModifiedAt = function() {\n return /** @type{?proto.google.protobuf.Timestamp} */ (\n jspb.Message.getWrapperField(this, google_protobuf_timestamp_pb.Timestamp, 3));\n};\n\n\n/** @param {?proto.google.protobuf.Timestamp|undefined} value */\nproto.vertexvis.protobuf.core.SceneAnnotationSet.prototype.setModifiedAt = function(value) {\n jspb.Message.setWrapperField(this, 3, value);\n};\n\n\nproto.vertexvis.protobuf.core.SceneAnnotationSet.prototype.clearModifiedAt = function() {\n this.setModifiedAt(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.SceneAnnotationSet.prototype.hasModifiedAt = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n/**\n * optional google.protobuf.StringValue name = 4;\n * @return {?proto.google.protobuf.StringValue}\n */\nproto.vertexvis.protobuf.core.SceneAnnotationSet.prototype.getName = function() {\n return /** @type{?proto.google.protobuf.StringValue} */ (\n jspb.Message.getWrapperField(this, google_protobuf_wrappers_pb.StringValue, 4));\n};\n\n\n/** @param {?proto.google.protobuf.StringValue|undefined} value */\nproto.vertexvis.protobuf.core.SceneAnnotationSet.prototype.setName = function(value) {\n jspb.Message.setWrapperField(this, 4, value);\n};\n\n\nproto.vertexvis.protobuf.core.SceneAnnotationSet.prototype.clearName = function() {\n this.setName(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.SceneAnnotationSet.prototype.hasName = function() {\n return jspb.Message.getField(this, 4) != null;\n};\n\n\n/**\n * optional google.protobuf.StringValue supplied_id = 5;\n * @return {?proto.google.protobuf.StringValue}\n */\nproto.vertexvis.protobuf.core.SceneAnnotationSet.prototype.getSuppliedId = function() {\n return /** @type{?proto.google.protobuf.StringValue} */ (\n jspb.Message.getWrapperField(this, google_protobuf_wrappers_pb.StringValue, 5));\n};\n\n\n/** @param {?proto.google.protobuf.StringValue|undefined} value */\nproto.vertexvis.protobuf.core.SceneAnnotationSet.prototype.setSuppliedId = function(value) {\n jspb.Message.setWrapperField(this, 5, value);\n};\n\n\nproto.vertexvis.protobuf.core.SceneAnnotationSet.prototype.clearSuppliedId = function() {\n this.setSuppliedId(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.SceneAnnotationSet.prototype.hasSuppliedId = function() {\n return jspb.Message.getField(this, 5) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.SceneAnnotation = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.SceneAnnotation, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.SceneAnnotation.displayName = 'proto.vertexvis.protobuf.core.SceneAnnotation';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.SceneAnnotation.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.SceneAnnotation.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.SceneAnnotation} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.SceneAnnotation.toObject = function(includeInstance, msg) {\n var f, obj = {\n id: (f = msg.getId()) && core_protos_uuid_pb.Uuid2l.toObject(includeInstance, f),\n createdAt: (f = msg.getCreatedAt()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),\n modifiedAt: (f = msg.getModifiedAt()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),\n suppliedId: (f = msg.getSuppliedId()) && google_protobuf_wrappers_pb.StringValue.toObject(includeInstance, f),\n data: (f = msg.getData()) && proto.vertexvis.protobuf.core.SceneAnnotationData.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.SceneAnnotation}\n */\nproto.vertexvis.protobuf.core.SceneAnnotation.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.SceneAnnotation;\n return proto.vertexvis.protobuf.core.SceneAnnotation.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.SceneAnnotation} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.SceneAnnotation}\n */\nproto.vertexvis.protobuf.core.SceneAnnotation.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new core_protos_uuid_pb.Uuid2l;\n reader.readMessage(value,core_protos_uuid_pb.Uuid2l.deserializeBinaryFromReader);\n msg.setId(value);\n break;\n case 2:\n var value = new google_protobuf_timestamp_pb.Timestamp;\n reader.readMessage(value,google_protobuf_timestamp_pb.Timestamp.deserializeBinaryFromReader);\n msg.setCreatedAt(value);\n break;\n case 3:\n var value = new google_protobuf_timestamp_pb.Timestamp;\n reader.readMessage(value,google_protobuf_timestamp_pb.Timestamp.deserializeBinaryFromReader);\n msg.setModifiedAt(value);\n break;\n case 4:\n var value = new google_protobuf_wrappers_pb.StringValue;\n reader.readMessage(value,google_protobuf_wrappers_pb.StringValue.deserializeBinaryFromReader);\n msg.setSuppliedId(value);\n break;\n case 5:\n var value = new proto.vertexvis.protobuf.core.SceneAnnotationData;\n reader.readMessage(value,proto.vertexvis.protobuf.core.SceneAnnotationData.deserializeBinaryFromReader);\n msg.setData(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.SceneAnnotation.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.SceneAnnotation.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.SceneAnnotation} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.SceneAnnotation.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getId();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n core_protos_uuid_pb.Uuid2l.serializeBinaryToWriter\n );\n }\n f = message.getCreatedAt();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n google_protobuf_timestamp_pb.Timestamp.serializeBinaryToWriter\n );\n }\n f = message.getModifiedAt();\n if (f != null) {\n writer.writeMessage(\n 3,\n f,\n google_protobuf_timestamp_pb.Timestamp.serializeBinaryToWriter\n );\n }\n f = message.getSuppliedId();\n if (f != null) {\n writer.writeMessage(\n 4,\n f,\n google_protobuf_wrappers_pb.StringValue.serializeBinaryToWriter\n );\n }\n f = message.getData();\n if (f != null) {\n writer.writeMessage(\n 5,\n f,\n proto.vertexvis.protobuf.core.SceneAnnotationData.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional Uuid2l id = 1;\n * @return {?proto.vertexvis.protobuf.core.Uuid2l}\n */\nproto.vertexvis.protobuf.core.SceneAnnotation.prototype.getId = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Uuid2l} */ (\n jspb.Message.getWrapperField(this, core_protos_uuid_pb.Uuid2l, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Uuid2l|undefined} value */\nproto.vertexvis.protobuf.core.SceneAnnotation.prototype.setId = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.core.SceneAnnotation.prototype.clearId = function() {\n this.setId(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.SceneAnnotation.prototype.hasId = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional google.protobuf.Timestamp created_at = 2;\n * @return {?proto.google.protobuf.Timestamp}\n */\nproto.vertexvis.protobuf.core.SceneAnnotation.prototype.getCreatedAt = function() {\n return /** @type{?proto.google.protobuf.Timestamp} */ (\n jspb.Message.getWrapperField(this, google_protobuf_timestamp_pb.Timestamp, 2));\n};\n\n\n/** @param {?proto.google.protobuf.Timestamp|undefined} value */\nproto.vertexvis.protobuf.core.SceneAnnotation.prototype.setCreatedAt = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.SceneAnnotation.prototype.clearCreatedAt = function() {\n this.setCreatedAt(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.SceneAnnotation.prototype.hasCreatedAt = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n/**\n * optional google.protobuf.Timestamp modified_at = 3;\n * @return {?proto.google.protobuf.Timestamp}\n */\nproto.vertexvis.protobuf.core.SceneAnnotation.prototype.getModifiedAt = function() {\n return /** @type{?proto.google.protobuf.Timestamp} */ (\n jspb.Message.getWrapperField(this, google_protobuf_timestamp_pb.Timestamp, 3));\n};\n\n\n/** @param {?proto.google.protobuf.Timestamp|undefined} value */\nproto.vertexvis.protobuf.core.SceneAnnotation.prototype.setModifiedAt = function(value) {\n jspb.Message.setWrapperField(this, 3, value);\n};\n\n\nproto.vertexvis.protobuf.core.SceneAnnotation.prototype.clearModifiedAt = function() {\n this.setModifiedAt(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.SceneAnnotation.prototype.hasModifiedAt = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n/**\n * optional google.protobuf.StringValue supplied_id = 4;\n * @return {?proto.google.protobuf.StringValue}\n */\nproto.vertexvis.protobuf.core.SceneAnnotation.prototype.getSuppliedId = function() {\n return /** @type{?proto.google.protobuf.StringValue} */ (\n jspb.Message.getWrapperField(this, google_protobuf_wrappers_pb.StringValue, 4));\n};\n\n\n/** @param {?proto.google.protobuf.StringValue|undefined} value */\nproto.vertexvis.protobuf.core.SceneAnnotation.prototype.setSuppliedId = function(value) {\n jspb.Message.setWrapperField(this, 4, value);\n};\n\n\nproto.vertexvis.protobuf.core.SceneAnnotation.prototype.clearSuppliedId = function() {\n this.setSuppliedId(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.SceneAnnotation.prototype.hasSuppliedId = function() {\n return jspb.Message.getField(this, 4) != null;\n};\n\n\n/**\n * optional SceneAnnotationData data = 5;\n * @return {?proto.vertexvis.protobuf.core.SceneAnnotationData}\n */\nproto.vertexvis.protobuf.core.SceneAnnotation.prototype.getData = function() {\n return /** @type{?proto.vertexvis.protobuf.core.SceneAnnotationData} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.SceneAnnotationData, 5));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.SceneAnnotationData|undefined} value */\nproto.vertexvis.protobuf.core.SceneAnnotation.prototype.setData = function(value) {\n jspb.Message.setWrapperField(this, 5, value);\n};\n\n\nproto.vertexvis.protobuf.core.SceneAnnotation.prototype.clearData = function() {\n this.setData(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.SceneAnnotation.prototype.hasData = function() {\n return jspb.Message.getField(this, 5) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.SceneAnnotationData = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, proto.vertexvis.protobuf.core.SceneAnnotationData.oneofGroups_);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.SceneAnnotationData, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.SceneAnnotationData.displayName = 'proto.vertexvis.protobuf.core.SceneAnnotationData';\n}\n/**\n * Oneof group definitions for this message. Each group defines the field\n * numbers belonging to that group. When of these fields' value is set, all\n * other fields in the group are cleared. During deserialization, if multiple\n * fields are encountered for a group, only the last value seen will be kept.\n * @private {!Array<!Array<number>>}\n * @const\n */\nproto.vertexvis.protobuf.core.SceneAnnotationData.oneofGroups_ = [[1,2]];\n\n/**\n * @enum {number}\n */\nproto.vertexvis.protobuf.core.SceneAnnotationData.SealedValueOptionalCase = {\n SEALED_VALUE_OPTIONAL_NOT_SET: 0,\n CALLOUT: 1,\n CUSTOM_JSON: 2\n};\n\n/**\n * @return {proto.vertexvis.protobuf.core.SceneAnnotationData.SealedValueOptionalCase}\n */\nproto.vertexvis.protobuf.core.SceneAnnotationData.prototype.getSealedValueOptionalCase = function() {\n return /** @type {proto.vertexvis.protobuf.core.SceneAnnotationData.SealedValueOptionalCase} */(jspb.Message.computeOneofCase(this, proto.vertexvis.protobuf.core.SceneAnnotationData.oneofGroups_[0]));\n};\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.SceneAnnotationData.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.SceneAnnotationData.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.SceneAnnotationData} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.SceneAnnotationData.toObject = function(includeInstance, msg) {\n var f, obj = {\n callout: (f = msg.getCallout()) && proto.vertexvis.protobuf.core.CalloutAnnotationData.toObject(includeInstance, f),\n customJson: (f = msg.getCustomJson()) && proto.vertexvis.protobuf.core.CustomAnnotationData.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.SceneAnnotationData}\n */\nproto.vertexvis.protobuf.core.SceneAnnotationData.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.SceneAnnotationData;\n return proto.vertexvis.protobuf.core.SceneAnnotationData.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.SceneAnnotationData} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.SceneAnnotationData}\n */\nproto.vertexvis.protobuf.core.SceneAnnotationData.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.vertexvis.protobuf.core.CalloutAnnotationData;\n reader.readMessage(value,proto.vertexvis.protobuf.core.CalloutAnnotationData.deserializeBinaryFromReader);\n msg.setCallout(value);\n break;\n case 2:\n var value = new proto.vertexvis.protobuf.core.CustomAnnotationData;\n reader.readMessage(value,proto.vertexvis.protobuf.core.CustomAnnotationData.deserializeBinaryFromReader);\n msg.setCustomJson(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.SceneAnnotationData.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.SceneAnnotationData.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.SceneAnnotationData} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.SceneAnnotationData.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getCallout();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.vertexvis.protobuf.core.CalloutAnnotationData.serializeBinaryToWriter\n );\n }\n f = message.getCustomJson();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.vertexvis.protobuf.core.CustomAnnotationData.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional CalloutAnnotationData callout = 1;\n * @return {?proto.vertexvis.protobuf.core.CalloutAnnotationData}\n */\nproto.vertexvis.protobuf.core.SceneAnnotationData.prototype.getCallout = function() {\n return /** @type{?proto.vertexvis.protobuf.core.CalloutAnnotationData} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.CalloutAnnotationData, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.CalloutAnnotationData|undefined} value */\nproto.vertexvis.protobuf.core.SceneAnnotationData.prototype.setCallout = function(value) {\n jspb.Message.setOneofWrapperField(this, 1, proto.vertexvis.protobuf.core.SceneAnnotationData.oneofGroups_[0], value);\n};\n\n\nproto.vertexvis.protobuf.core.SceneAnnotationData.prototype.clearCallout = function() {\n this.setCallout(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.SceneAnnotationData.prototype.hasCallout = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional CustomAnnotationData custom_json = 2;\n * @return {?proto.vertexvis.protobuf.core.CustomAnnotationData}\n */\nproto.vertexvis.protobuf.core.SceneAnnotationData.prototype.getCustomJson = function() {\n return /** @type{?proto.vertexvis.protobuf.core.CustomAnnotationData} */ (\n jspb.Message.getWrapperField(this, proto.vertexvis.protobuf.core.CustomAnnotationData, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.CustomAnnotationData|undefined} value */\nproto.vertexvis.protobuf.core.SceneAnnotationData.prototype.setCustomJson = function(value) {\n jspb.Message.setOneofWrapperField(this, 2, proto.vertexvis.protobuf.core.SceneAnnotationData.oneofGroups_[0], value);\n};\n\n\nproto.vertexvis.protobuf.core.SceneAnnotationData.prototype.clearCustomJson = function() {\n this.setCustomJson(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.SceneAnnotationData.prototype.hasCustomJson = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.CalloutAnnotationData = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.CalloutAnnotationData, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.CalloutAnnotationData.displayName = 'proto.vertexvis.protobuf.core.CalloutAnnotationData';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.CalloutAnnotationData.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.CalloutAnnotationData.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.CalloutAnnotationData} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.CalloutAnnotationData.toObject = function(includeInstance, msg) {\n var f, obj = {\n position: (f = msg.getPosition()) && core_protos_geometry_pb.Vector3f.toObject(includeInstance, f),\n icon: (f = msg.getIcon()) && google_protobuf_wrappers_pb.StringValue.toObject(includeInstance, f),\n primaryColor: (f = msg.getPrimaryColor()) && google_protobuf_wrappers_pb.StringValue.toObject(includeInstance, f),\n accentColor: (f = msg.getAccentColor()) && google_protobuf_wrappers_pb.StringValue.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.CalloutAnnotationData}\n */\nproto.vertexvis.protobuf.core.CalloutAnnotationData.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.CalloutAnnotationData;\n return proto.vertexvis.protobuf.core.CalloutAnnotationData.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.CalloutAnnotationData} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.CalloutAnnotationData}\n */\nproto.vertexvis.protobuf.core.CalloutAnnotationData.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new core_protos_geometry_pb.Vector3f;\n reader.readMessage(value,core_protos_geometry_pb.Vector3f.deserializeBinaryFromReader);\n msg.setPosition(value);\n break;\n case 2:\n var value = new google_protobuf_wrappers_pb.StringValue;\n reader.readMessage(value,google_protobuf_wrappers_pb.StringValue.deserializeBinaryFromReader);\n msg.setIcon(value);\n break;\n case 3:\n var value = new google_protobuf_wrappers_pb.StringValue;\n reader.readMessage(value,google_protobuf_wrappers_pb.StringValue.deserializeBinaryFromReader);\n msg.setPrimaryColor(value);\n break;\n case 4:\n var value = new google_protobuf_wrappers_pb.StringValue;\n reader.readMessage(value,google_protobuf_wrappers_pb.StringValue.deserializeBinaryFromReader);\n msg.setAccentColor(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.CalloutAnnotationData.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.CalloutAnnotationData.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.CalloutAnnotationData} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.CalloutAnnotationData.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPosition();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n core_protos_geometry_pb.Vector3f.serializeBinaryToWriter\n );\n }\n f = message.getIcon();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n google_protobuf_wrappers_pb.StringValue.serializeBinaryToWriter\n );\n }\n f = message.getPrimaryColor();\n if (f != null) {\n writer.writeMessage(\n 3,\n f,\n google_protobuf_wrappers_pb.StringValue.serializeBinaryToWriter\n );\n }\n f = message.getAccentColor();\n if (f != null) {\n writer.writeMessage(\n 4,\n f,\n google_protobuf_wrappers_pb.StringValue.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional Vector3f position = 1;\n * @return {?proto.vertexvis.protobuf.core.Vector3f}\n */\nproto.vertexvis.protobuf.core.CalloutAnnotationData.prototype.getPosition = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3f} */ (\n jspb.Message.getWrapperField(this, core_protos_geometry_pb.Vector3f, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3f|undefined} value */\nproto.vertexvis.protobuf.core.CalloutAnnotationData.prototype.setPosition = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.core.CalloutAnnotationData.prototype.clearPosition = function() {\n this.setPosition(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.CalloutAnnotationData.prototype.hasPosition = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional google.protobuf.StringValue icon = 2;\n * @return {?proto.google.protobuf.StringValue}\n */\nproto.vertexvis.protobuf.core.CalloutAnnotationData.prototype.getIcon = function() {\n return /** @type{?proto.google.protobuf.StringValue} */ (\n jspb.Message.getWrapperField(this, google_protobuf_wrappers_pb.StringValue, 2));\n};\n\n\n/** @param {?proto.google.protobuf.StringValue|undefined} value */\nproto.vertexvis.protobuf.core.CalloutAnnotationData.prototype.setIcon = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.core.CalloutAnnotationData.prototype.clearIcon = function() {\n this.setIcon(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.CalloutAnnotationData.prototype.hasIcon = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n/**\n * optional google.protobuf.StringValue primary_color = 3;\n * @return {?proto.google.protobuf.StringValue}\n */\nproto.vertexvis.protobuf.core.CalloutAnnotationData.prototype.getPrimaryColor = function() {\n return /** @type{?proto.google.protobuf.StringValue} */ (\n jspb.Message.getWrapperField(this, google_protobuf_wrappers_pb.StringValue, 3));\n};\n\n\n/** @param {?proto.google.protobuf.StringValue|undefined} value */\nproto.vertexvis.protobuf.core.CalloutAnnotationData.prototype.setPrimaryColor = function(value) {\n jspb.Message.setWrapperField(this, 3, value);\n};\n\n\nproto.vertexvis.protobuf.core.CalloutAnnotationData.prototype.clearPrimaryColor = function() {\n this.setPrimaryColor(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.CalloutAnnotationData.prototype.hasPrimaryColor = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n/**\n * optional google.protobuf.StringValue accent_color = 4;\n * @return {?proto.google.protobuf.StringValue}\n */\nproto.vertexvis.protobuf.core.CalloutAnnotationData.prototype.getAccentColor = function() {\n return /** @type{?proto.google.protobuf.StringValue} */ (\n jspb.Message.getWrapperField(this, google_protobuf_wrappers_pb.StringValue, 4));\n};\n\n\n/** @param {?proto.google.protobuf.StringValue|undefined} value */\nproto.vertexvis.protobuf.core.CalloutAnnotationData.prototype.setAccentColor = function(value) {\n jspb.Message.setWrapperField(this, 4, value);\n};\n\n\nproto.vertexvis.protobuf.core.CalloutAnnotationData.prototype.clearAccentColor = function() {\n this.setAccentColor(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.CalloutAnnotationData.prototype.hasAccentColor = function() {\n return jspb.Message.getField(this, 4) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.CustomAnnotationData = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.CustomAnnotationData, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.CustomAnnotationData.displayName = 'proto.vertexvis.protobuf.core.CustomAnnotationData';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.CustomAnnotationData.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.CustomAnnotationData.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.CustomAnnotationData} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.CustomAnnotationData.toObject = function(includeInstance, msg) {\n var f, obj = {\n type: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n jsonData: jspb.Message.getFieldWithDefault(msg, 2, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.CustomAnnotationData}\n */\nproto.vertexvis.protobuf.core.CustomAnnotationData.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.CustomAnnotationData;\n return proto.vertexvis.protobuf.core.CustomAnnotationData.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.CustomAnnotationData} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.CustomAnnotationData}\n */\nproto.vertexvis.protobuf.core.CustomAnnotationData.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setType(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setJsonData(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.CustomAnnotationData.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.CustomAnnotationData.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.CustomAnnotationData} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.CustomAnnotationData.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getType();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getJsonData();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional string type = 1;\n * @return {string}\n */\nproto.vertexvis.protobuf.core.CustomAnnotationData.prototype.getType = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.vertexvis.protobuf.core.CustomAnnotationData.prototype.setType = function(value) {\n jspb.Message.setProto3StringField(this, 1, value);\n};\n\n\n/**\n * optional string json_data = 2;\n * @return {string}\n */\nproto.vertexvis.protobuf.core.CustomAnnotationData.prototype.getJsonData = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.vertexvis.protobuf.core.CustomAnnotationData.prototype.setJsonData = function(value) {\n jspb.Message.setProto3StringField(this, 2, value);\n};\n\n\ngoog.object.extend(exports, proto.vertexvis.protobuf.core);\n","/**\n * @fileoverview\n * @enhanceable\n * @suppress {messageConventions} JS Compiler reports an error if a variable or\n * field starts with 'MSG_' and isn't a translatable message.\n * @public\n */\n// GENERATED CODE -- DO NOT EDIT!\n\nvar jspb = require('google-protobuf');\nvar goog = jspb;\nvar global = Function('return this')();\n\nvar core_protos_uuid_pb = require('../../core/protos/uuid_pb.js');\nvar google_protobuf_any_pb = require('google-protobuf/google/protobuf/any_pb.js');\ngoog.exportSymbol('proto.vertexvis.protobuf.core.RepresentationId', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.core.RepresentationPredefinedId', null, global);\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.core.RepresentationId = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, proto.vertexvis.protobuf.core.RepresentationId.oneofGroups_);\n};\ngoog.inherits(proto.vertexvis.protobuf.core.RepresentationId, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.core.RepresentationId.displayName = 'proto.vertexvis.protobuf.core.RepresentationId';\n}\n/**\n * Oneof group definitions for this message. Each group defines the field\n * numbers belonging to that group. When of these fields' value is set, all\n * other fields in the group are cleared. During deserialization, if multiple\n * fields are encountered for a group, only the last value seen will be kept.\n * @private {!Array<!Array<number>>}\n * @const\n */\nproto.vertexvis.protobuf.core.RepresentationId.oneofGroups_ = [[1,2,3]];\n\n/**\n * @enum {number}\n */\nproto.vertexvis.protobuf.core.RepresentationId.IdCase = {\n ID_NOT_SET: 0,\n SYSTEM_ID: 1,\n SUPPLIED_ID: 2,\n PREDEFINED_ID: 3\n};\n\n/**\n * @return {proto.vertexvis.protobuf.core.RepresentationId.IdCase}\n */\nproto.vertexvis.protobuf.core.RepresentationId.prototype.getIdCase = function() {\n return /** @type {proto.vertexvis.protobuf.core.RepresentationId.IdCase} */(jspb.Message.computeOneofCase(this, proto.vertexvis.protobuf.core.RepresentationId.oneofGroups_[0]));\n};\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.core.RepresentationId.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.core.RepresentationId.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.core.RepresentationId} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.RepresentationId.toObject = function(includeInstance, msg) {\n var f, obj = {\n systemId: (f = msg.getSystemId()) && core_protos_uuid_pb.Uuid2l.toObject(includeInstance, f),\n suppliedId: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n predefinedId: jspb.Message.getFieldWithDefault(msg, 3, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.core.RepresentationId}\n */\nproto.vertexvis.protobuf.core.RepresentationId.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.core.RepresentationId;\n return proto.vertexvis.protobuf.core.RepresentationId.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.core.RepresentationId} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.core.RepresentationId}\n */\nproto.vertexvis.protobuf.core.RepresentationId.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new core_protos_uuid_pb.Uuid2l;\n reader.readMessage(value,core_protos_uuid_pb.Uuid2l.deserializeBinaryFromReader);\n msg.setSystemId(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setSuppliedId(value);\n break;\n case 3:\n var value = /** @type {!proto.vertexvis.protobuf.core.RepresentationPredefinedId} */ (reader.readEnum());\n msg.setPredefinedId(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.core.RepresentationId.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.core.RepresentationId.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.core.RepresentationId} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.core.RepresentationId.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSystemId();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n core_protos_uuid_pb.Uuid2l.serializeBinaryToWriter\n );\n }\n f = /** @type {string} */ (jspb.Message.getField(message, 2));\n if (f != null) {\n writer.writeString(\n 2,\n f\n );\n }\n f = /** @type {!proto.vertexvis.protobuf.core.RepresentationPredefinedId} */ (jspb.Message.getField(message, 3));\n if (f != null) {\n writer.writeEnum(\n 3,\n f\n );\n }\n};\n\n\n/**\n * optional Uuid2l system_id = 1;\n * @return {?proto.vertexvis.protobuf.core.Uuid2l}\n */\nproto.vertexvis.protobuf.core.RepresentationId.prototype.getSystemId = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Uuid2l} */ (\n jspb.Message.getWrapperField(this, core_protos_uuid_pb.Uuid2l, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Uuid2l|undefined} value */\nproto.vertexvis.protobuf.core.RepresentationId.prototype.setSystemId = function(value) {\n jspb.Message.setOneofWrapperField(this, 1, proto.vertexvis.protobuf.core.RepresentationId.oneofGroups_[0], value);\n};\n\n\nproto.vertexvis.protobuf.core.RepresentationId.prototype.clearSystemId = function() {\n this.setSystemId(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.RepresentationId.prototype.hasSystemId = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional string supplied_id = 2;\n * @return {string}\n */\nproto.vertexvis.protobuf.core.RepresentationId.prototype.getSuppliedId = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.vertexvis.protobuf.core.RepresentationId.prototype.setSuppliedId = function(value) {\n jspb.Message.setOneofField(this, 2, proto.vertexvis.protobuf.core.RepresentationId.oneofGroups_[0], value);\n};\n\n\nproto.vertexvis.protobuf.core.RepresentationId.prototype.clearSuppliedId = function() {\n jspb.Message.setOneofField(this, 2, proto.vertexvis.protobuf.core.RepresentationId.oneofGroups_[0], undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.RepresentationId.prototype.hasSuppliedId = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n/**\n * optional RepresentationPredefinedId predefined_id = 3;\n * @return {!proto.vertexvis.protobuf.core.RepresentationPredefinedId}\n */\nproto.vertexvis.protobuf.core.RepresentationId.prototype.getPredefinedId = function() {\n return /** @type {!proto.vertexvis.protobuf.core.RepresentationPredefinedId} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {!proto.vertexvis.protobuf.core.RepresentationPredefinedId} value */\nproto.vertexvis.protobuf.core.RepresentationId.prototype.setPredefinedId = function(value) {\n jspb.Message.setOneofField(this, 3, proto.vertexvis.protobuf.core.RepresentationId.oneofGroups_[0], value);\n};\n\n\nproto.vertexvis.protobuf.core.RepresentationId.prototype.clearPredefinedId = function() {\n jspb.Message.setOneofField(this, 3, proto.vertexvis.protobuf.core.RepresentationId.oneofGroups_[0], undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.core.RepresentationId.prototype.hasPredefinedId = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n/**\n * @enum {number}\n */\nproto.vertexvis.protobuf.core.RepresentationPredefinedId = {\n REPRESENTATION_PREDEFINED_ID_INVALID: 0,\n REPRESENTATION_PREDEFINED_ID_EMPTY: 1,\n REPRESENTATION_PREDEFINED_ID_ENTIRE_PART: 2\n};\n\ngoog.object.extend(exports, proto.vertexvis.protobuf.core);\n","/**\n * @fileoverview\n * @enhanceable\n * @suppress {messageConventions} JS Compiler reports an error if a variable or\n * field starts with 'MSG_' and isn't a translatable message.\n * @public\n */\n// GENERATED CODE -- DO NOT EDIT!\n\nvar jspb = require('google-protobuf');\nvar goog = jspb;\nvar global = Function('return this')();\n\nvar core_protos_representation_pb = require('../../core/protos/representation_pb.js');\ngoog.exportSymbol('proto.vertexvis.protobuf.sceneview.v1.ItemRepresentation', null, global);\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.sceneview.v1.ItemRepresentation = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.sceneview.v1.ItemRepresentation, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.sceneview.v1.ItemRepresentation.displayName = 'proto.vertexvis.protobuf.sceneview.v1.ItemRepresentation';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.sceneview.v1.ItemRepresentation.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.sceneview.v1.ItemRepresentation.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ItemRepresentation} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.ItemRepresentation.toObject = function(includeInstance, msg) {\n var f, obj = {\n id: (f = msg.getId()) && core_protos_representation_pb.RepresentationId.toObject(includeInstance, f),\n displayName: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n isApplied: jspb.Message.getFieldWithDefault(msg, 3, false)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.ItemRepresentation}\n */\nproto.vertexvis.protobuf.sceneview.v1.ItemRepresentation.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.sceneview.v1.ItemRepresentation;\n return proto.vertexvis.protobuf.sceneview.v1.ItemRepresentation.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ItemRepresentation} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.ItemRepresentation}\n */\nproto.vertexvis.protobuf.sceneview.v1.ItemRepresentation.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new core_protos_representation_pb.RepresentationId;\n reader.readMessage(value,core_protos_representation_pb.RepresentationId.deserializeBinaryFromReader);\n msg.setId(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setDisplayName(value);\n break;\n case 3:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setIsApplied(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.sceneview.v1.ItemRepresentation.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.sceneview.v1.ItemRepresentation.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ItemRepresentation} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.ItemRepresentation.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getId();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n core_protos_representation_pb.RepresentationId.serializeBinaryToWriter\n );\n }\n f = message.getDisplayName();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n f = message.getIsApplied();\n if (f) {\n writer.writeBool(\n 3,\n f\n );\n }\n};\n\n\n/**\n * optional vertexvis.protobuf.core.RepresentationId id = 1;\n * @return {?proto.vertexvis.protobuf.core.RepresentationId}\n */\nproto.vertexvis.protobuf.sceneview.v1.ItemRepresentation.prototype.getId = function() {\n return /** @type{?proto.vertexvis.protobuf.core.RepresentationId} */ (\n jspb.Message.getWrapperField(this, core_protos_representation_pb.RepresentationId, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.RepresentationId|undefined} value */\nproto.vertexvis.protobuf.sceneview.v1.ItemRepresentation.prototype.setId = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.ItemRepresentation.prototype.clearId = function() {\n this.setId(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.sceneview.v1.ItemRepresentation.prototype.hasId = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional string display_name = 2;\n * @return {string}\n */\nproto.vertexvis.protobuf.sceneview.v1.ItemRepresentation.prototype.getDisplayName = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.vertexvis.protobuf.sceneview.v1.ItemRepresentation.prototype.setDisplayName = function(value) {\n jspb.Message.setProto3StringField(this, 2, value);\n};\n\n\n/**\n * optional bool is_applied = 3;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.vertexvis.protobuf.sceneview.v1.ItemRepresentation.prototype.getIsApplied = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 3, false));\n};\n\n\n/** @param {boolean} value */\nproto.vertexvis.protobuf.sceneview.v1.ItemRepresentation.prototype.setIsApplied = function(value) {\n jspb.Message.setProto3BooleanField(this, 3, value);\n};\n\n\ngoog.object.extend(exports, proto.vertexvis.protobuf.sceneview.v1);\n","/**\n * @fileoverview\n * @enhanceable\n * @suppress {messageConventions} JS Compiler reports an error if a variable or\n * field starts with 'MSG_' and isn't a translatable message.\n * @public\n */\n// GENERATED CODE -- DO NOT EDIT!\n\nvar jspb = require('google-protobuf');\nvar goog = jspb;\nvar global = Function('return this')();\n\nvar core_protos_geometry_pb = require('../../core/protos/geometry_pb.js');\nvar core_protos_model_entity_pb = require('../../core/protos/model_entity_pb.js');\nvar core_protos_model_views_pb = require('../../core/protos/model_views_pb.js');\nvar core_protos_measurement_pb = require('../../core/protos/measurement_pb.js');\nvar core_protos_paging_pb = require('../../core/protos/paging_pb.js');\nvar core_protos_scene_annotations_pb = require('../../core/protos/scene_annotations_pb.js');\nvar core_protos_uuid_pb = require('../../core/protos/uuid_pb.js');\nvar google_protobuf_wrappers_pb = require('google-protobuf/google/protobuf/wrappers_pb.js');\nvar sceneview_protos_domain_pb = require('../../sceneview/protos/domain_pb.js');\ngoog.exportSymbol('proto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetRequest', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetResponse', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetRequest', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetResponse', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsRequest', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.sceneview.v1.MeasureEntity', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.sceneview.v1.MeasureRequest', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.sceneview.v1.MeasureResponse', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesRequest', null, global);\ngoog.exportSymbol('proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesResponse', null, global);\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetRequest.displayName = 'proto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n sceneAnnotationSetId: (f = msg.getSceneAnnotationSetId()) && core_protos_uuid_pb.Uuid.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetRequest}\n */\nproto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetRequest;\n return proto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetRequest}\n */\nproto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new core_protos_uuid_pb.Uuid;\n reader.readMessage(value,core_protos_uuid_pb.Uuid.deserializeBinaryFromReader);\n msg.setSceneAnnotationSetId(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSceneAnnotationSetId();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n core_protos_uuid_pb.Uuid.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional vertexvis.protobuf.core.Uuid scene_annotation_set_id = 1;\n * @return {?proto.vertexvis.protobuf.core.Uuid}\n */\nproto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetRequest.prototype.getSceneAnnotationSetId = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Uuid} */ (\n jspb.Message.getWrapperField(this, core_protos_uuid_pb.Uuid, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Uuid|undefined} value */\nproto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetRequest.prototype.setSceneAnnotationSetId = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetRequest.prototype.clearSceneAnnotationSetId = function() {\n this.setSceneAnnotationSetId(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetRequest.prototype.hasSceneAnnotationSetId = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetResponse.displayName = 'proto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetResponse}\n */\nproto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetResponse;\n return proto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetResponse}\n */\nproto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.CreateSceneViewAnnotationSetResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetRequest.displayName = 'proto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n sceneAnnotationSetId: (f = msg.getSceneAnnotationSetId()) && core_protos_uuid_pb.Uuid.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetRequest}\n */\nproto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetRequest;\n return proto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetRequest}\n */\nproto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new core_protos_uuid_pb.Uuid;\n reader.readMessage(value,core_protos_uuid_pb.Uuid.deserializeBinaryFromReader);\n msg.setSceneAnnotationSetId(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSceneAnnotationSetId();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n core_protos_uuid_pb.Uuid.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional vertexvis.protobuf.core.Uuid scene_annotation_set_id = 1;\n * @return {?proto.vertexvis.protobuf.core.Uuid}\n */\nproto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetRequest.prototype.getSceneAnnotationSetId = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Uuid} */ (\n jspb.Message.getWrapperField(this, core_protos_uuid_pb.Uuid, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Uuid|undefined} value */\nproto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetRequest.prototype.setSceneAnnotationSetId = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetRequest.prototype.clearSceneAnnotationSetId = function() {\n this.setSceneAnnotationSetId(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetRequest.prototype.hasSceneAnnotationSetId = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetResponse.displayName = 'proto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetResponse}\n */\nproto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetResponse;\n return proto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetResponse}\n */\nproto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.DeleteSceneViewAnnotationSetResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest.displayName = 'proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n itemId: (f = msg.getItemId()) && core_protos_uuid_pb.Uuid.toObject(includeInstance, f),\n page: (f = msg.getPage()) && core_protos_paging_pb.Pager.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest;\n return proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new core_protos_uuid_pb.Uuid;\n reader.readMessage(value,core_protos_uuid_pb.Uuid.deserializeBinaryFromReader);\n msg.setItemId(value);\n break;\n case 2:\n var value = new core_protos_paging_pb.Pager;\n reader.readMessage(value,core_protos_paging_pb.Pager.deserializeBinaryFromReader);\n msg.setPage(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getItemId();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n core_protos_uuid_pb.Uuid.serializeBinaryToWriter\n );\n }\n f = message.getPage();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n core_protos_paging_pb.Pager.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional vertexvis.protobuf.core.Uuid item_id = 1;\n * @return {?proto.vertexvis.protobuf.core.Uuid}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest.prototype.getItemId = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Uuid} */ (\n jspb.Message.getWrapperField(this, core_protos_uuid_pb.Uuid, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Uuid|undefined} value */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest.prototype.setItemId = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest.prototype.clearItemId = function() {\n this.setItemId(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest.prototype.hasItemId = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional vertexvis.protobuf.core.Pager page = 2;\n * @return {?proto.vertexvis.protobuf.core.Pager}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest.prototype.getPage = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Pager} */ (\n jspb.Message.getWrapperField(this, core_protos_paging_pb.Pager, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Pager|undefined} value */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest.prototype.setPage = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest.prototype.clearPage = function() {\n this.setPage(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsRequest.prototype.hasPage = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse.repeatedFields_, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse.displayName = 'proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array<number>}\n * @const\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse.repeatedFields_ = [1,2];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n representationsList: jspb.Message.toObjectList(msg.getRepresentationsList(),\n sceneview_protos_domain_pb.ItemRepresentation.toObject, includeInstance),\n systemRepresentationsList: jspb.Message.toObjectList(msg.getSystemRepresentationsList(),\n sceneview_protos_domain_pb.ItemRepresentation.toObject, includeInstance),\n nextPageCursor: (f = msg.getNextPageCursor()) && core_protos_paging_pb.Cursor.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse;\n return proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new sceneview_protos_domain_pb.ItemRepresentation;\n reader.readMessage(value,sceneview_protos_domain_pb.ItemRepresentation.deserializeBinaryFromReader);\n msg.addRepresentations(value);\n break;\n case 2:\n var value = new sceneview_protos_domain_pb.ItemRepresentation;\n reader.readMessage(value,sceneview_protos_domain_pb.ItemRepresentation.deserializeBinaryFromReader);\n msg.addSystemRepresentations(value);\n break;\n case 3:\n var value = new core_protos_paging_pb.Cursor;\n reader.readMessage(value,core_protos_paging_pb.Cursor.deserializeBinaryFromReader);\n msg.setNextPageCursor(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getRepresentationsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n sceneview_protos_domain_pb.ItemRepresentation.serializeBinaryToWriter\n );\n }\n f = message.getSystemRepresentationsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 2,\n f,\n sceneview_protos_domain_pb.ItemRepresentation.serializeBinaryToWriter\n );\n }\n f = message.getNextPageCursor();\n if (f != null) {\n writer.writeMessage(\n 3,\n f,\n core_protos_paging_pb.Cursor.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated ItemRepresentation representations = 1;\n * @return {!Array<!proto.vertexvis.protobuf.sceneview.v1.ItemRepresentation>}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse.prototype.getRepresentationsList = function() {\n return /** @type{!Array<!proto.vertexvis.protobuf.sceneview.v1.ItemRepresentation>} */ (\n jspb.Message.getRepeatedWrapperField(this, sceneview_protos_domain_pb.ItemRepresentation, 1));\n};\n\n\n/** @param {!Array<!proto.vertexvis.protobuf.sceneview.v1.ItemRepresentation>} value */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse.prototype.setRepresentationsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ItemRepresentation=} opt_value\n * @param {number=} opt_index\n * @return {!proto.vertexvis.protobuf.sceneview.v1.ItemRepresentation}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse.prototype.addRepresentations = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.vertexvis.protobuf.sceneview.v1.ItemRepresentation, opt_index);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse.prototype.clearRepresentationsList = function() {\n this.setRepresentationsList([]);\n};\n\n\n/**\n * repeated ItemRepresentation system_representations = 2;\n * @return {!Array<!proto.vertexvis.protobuf.sceneview.v1.ItemRepresentation>}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse.prototype.getSystemRepresentationsList = function() {\n return /** @type{!Array<!proto.vertexvis.protobuf.sceneview.v1.ItemRepresentation>} */ (\n jspb.Message.getRepeatedWrapperField(this, sceneview_protos_domain_pb.ItemRepresentation, 2));\n};\n\n\n/** @param {!Array<!proto.vertexvis.protobuf.sceneview.v1.ItemRepresentation>} value */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse.prototype.setSystemRepresentationsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 2, value);\n};\n\n\n/**\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ItemRepresentation=} opt_value\n * @param {number=} opt_index\n * @return {!proto.vertexvis.protobuf.sceneview.v1.ItemRepresentation}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse.prototype.addSystemRepresentations = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 2, opt_value, proto.vertexvis.protobuf.sceneview.v1.ItemRepresentation, opt_index);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse.prototype.clearSystemRepresentationsList = function() {\n this.setSystemRepresentationsList([]);\n};\n\n\n/**\n * optional vertexvis.protobuf.core.Cursor next_page_cursor = 3;\n * @return {?proto.vertexvis.protobuf.core.Cursor}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse.prototype.getNextPageCursor = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Cursor} */ (\n jspb.Message.getWrapperField(this, core_protos_paging_pb.Cursor, 3));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Cursor|undefined} value */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse.prototype.setNextPageCursor = function(value) {\n jspb.Message.setWrapperField(this, 3, value);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse.prototype.clearNextPageCursor = function() {\n this.setNextPageCursor(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemRepresentationsResponse.prototype.hasNextPageCursor = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest.displayName = 'proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n itemId: (f = msg.getItemId()) && core_protos_uuid_pb.Uuid2l.toObject(includeInstance, f),\n page: (f = msg.getPage()) && core_protos_paging_pb.Pager.toObject(includeInstance, f),\n hasAnnotations: (f = msg.getHasAnnotations()) && google_protobuf_wrappers_pb.BoolValue.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest;\n return proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new core_protos_uuid_pb.Uuid2l;\n reader.readMessage(value,core_protos_uuid_pb.Uuid2l.deserializeBinaryFromReader);\n msg.setItemId(value);\n break;\n case 2:\n var value = new core_protos_paging_pb.Pager;\n reader.readMessage(value,core_protos_paging_pb.Pager.deserializeBinaryFromReader);\n msg.setPage(value);\n break;\n case 3:\n var value = new google_protobuf_wrappers_pb.BoolValue;\n reader.readMessage(value,google_protobuf_wrappers_pb.BoolValue.deserializeBinaryFromReader);\n msg.setHasAnnotations(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getItemId();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n core_protos_uuid_pb.Uuid2l.serializeBinaryToWriter\n );\n }\n f = message.getPage();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n core_protos_paging_pb.Pager.serializeBinaryToWriter\n );\n }\n f = message.getHasAnnotations();\n if (f != null) {\n writer.writeMessage(\n 3,\n f,\n google_protobuf_wrappers_pb.BoolValue.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional vertexvis.protobuf.core.Uuid2l item_id = 1;\n * @return {?proto.vertexvis.protobuf.core.Uuid2l}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest.prototype.getItemId = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Uuid2l} */ (\n jspb.Message.getWrapperField(this, core_protos_uuid_pb.Uuid2l, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Uuid2l|undefined} value */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest.prototype.setItemId = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest.prototype.clearItemId = function() {\n this.setItemId(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest.prototype.hasItemId = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional vertexvis.protobuf.core.Pager page = 2;\n * @return {?proto.vertexvis.protobuf.core.Pager}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest.prototype.getPage = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Pager} */ (\n jspb.Message.getWrapperField(this, core_protos_paging_pb.Pager, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Pager|undefined} value */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest.prototype.setPage = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest.prototype.clearPage = function() {\n this.setPage(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest.prototype.hasPage = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n/**\n * optional google.protobuf.BoolValue has_annotations = 3;\n * @return {?proto.google.protobuf.BoolValue}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest.prototype.getHasAnnotations = function() {\n return /** @type{?proto.google.protobuf.BoolValue} */ (\n jspb.Message.getWrapperField(this, google_protobuf_wrappers_pb.BoolValue, 3));\n};\n\n\n/** @param {?proto.google.protobuf.BoolValue|undefined} value */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest.prototype.setHasAnnotations = function(value) {\n jspb.Message.setWrapperField(this, 3, value);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest.prototype.clearHasAnnotations = function() {\n this.setHasAnnotations(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsRequest.prototype.hasHasAnnotations = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse.repeatedFields_, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse.displayName = 'proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array<number>}\n * @const\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n modelViewsList: jspb.Message.toObjectList(msg.getModelViewsList(),\n core_protos_model_views_pb.ModelView.toObject, includeInstance),\n nextPageCursor: (f = msg.getNextPageCursor()) && core_protos_paging_pb.Cursor.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse;\n return proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new core_protos_model_views_pb.ModelView;\n reader.readMessage(value,core_protos_model_views_pb.ModelView.deserializeBinaryFromReader);\n msg.addModelViews(value);\n break;\n case 2:\n var value = new core_protos_paging_pb.Cursor;\n reader.readMessage(value,core_protos_paging_pb.Cursor.deserializeBinaryFromReader);\n msg.setNextPageCursor(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getModelViewsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n core_protos_model_views_pb.ModelView.serializeBinaryToWriter\n );\n }\n f = message.getNextPageCursor();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n core_protos_paging_pb.Cursor.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated vertexvis.protobuf.core.ModelView model_views = 1;\n * @return {!Array<!proto.vertexvis.protobuf.core.ModelView>}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse.prototype.getModelViewsList = function() {\n return /** @type{!Array<!proto.vertexvis.protobuf.core.ModelView>} */ (\n jspb.Message.getRepeatedWrapperField(this, core_protos_model_views_pb.ModelView, 1));\n};\n\n\n/** @param {!Array<!proto.vertexvis.protobuf.core.ModelView>} value */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse.prototype.setModelViewsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.vertexvis.protobuf.core.ModelView=} opt_value\n * @param {number=} opt_index\n * @return {!proto.vertexvis.protobuf.core.ModelView}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse.prototype.addModelViews = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.vertexvis.protobuf.core.ModelView, opt_index);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse.prototype.clearModelViewsList = function() {\n this.setModelViewsList([]);\n};\n\n\n/**\n * optional vertexvis.protobuf.core.Cursor next_page_cursor = 2;\n * @return {?proto.vertexvis.protobuf.core.Cursor}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse.prototype.getNextPageCursor = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Cursor} */ (\n jspb.Message.getWrapperField(this, core_protos_paging_pb.Cursor, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Cursor|undefined} value */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse.prototype.setNextPageCursor = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse.prototype.clearNextPageCursor = function() {\n this.setNextPageCursor(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListItemModelViewsResponse.prototype.hasNextPageCursor = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsRequest.displayName = 'proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n page: (f = msg.getPage()) && core_protos_paging_pb.Pager.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsRequest}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsRequest;\n return proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsRequest}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new core_protos_paging_pb.Pager;\n reader.readMessage(value,core_protos_paging_pb.Pager.deserializeBinaryFromReader);\n msg.setPage(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPage();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n core_protos_paging_pb.Pager.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional vertexvis.protobuf.core.Pager page = 1;\n * @return {?proto.vertexvis.protobuf.core.Pager}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsRequest.prototype.getPage = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Pager} */ (\n jspb.Message.getWrapperField(this, core_protos_paging_pb.Pager, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Pager|undefined} value */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsRequest.prototype.setPage = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsRequest.prototype.clearPage = function() {\n this.setPage(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsRequest.prototype.hasPage = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse.repeatedFields_, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse.displayName = 'proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array<number>}\n * @const\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n sceneAnnotationSetsList: jspb.Message.toObjectList(msg.getSceneAnnotationSetsList(),\n core_protos_scene_annotations_pb.SceneAnnotationSet.toObject, includeInstance),\n nextCursor: (f = msg.getNextCursor()) && core_protos_paging_pb.Cursor.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse;\n return proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new core_protos_scene_annotations_pb.SceneAnnotationSet;\n reader.readMessage(value,core_protos_scene_annotations_pb.SceneAnnotationSet.deserializeBinaryFromReader);\n msg.addSceneAnnotationSets(value);\n break;\n case 2:\n var value = new core_protos_paging_pb.Cursor;\n reader.readMessage(value,core_protos_paging_pb.Cursor.deserializeBinaryFromReader);\n msg.setNextCursor(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSceneAnnotationSetsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n core_protos_scene_annotations_pb.SceneAnnotationSet.serializeBinaryToWriter\n );\n }\n f = message.getNextCursor();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n core_protos_paging_pb.Cursor.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated vertexvis.protobuf.core.SceneAnnotationSet scene_annotation_sets = 1;\n * @return {!Array<!proto.vertexvis.protobuf.core.SceneAnnotationSet>}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse.prototype.getSceneAnnotationSetsList = function() {\n return /** @type{!Array<!proto.vertexvis.protobuf.core.SceneAnnotationSet>} */ (\n jspb.Message.getRepeatedWrapperField(this, core_protos_scene_annotations_pb.SceneAnnotationSet, 1));\n};\n\n\n/** @param {!Array<!proto.vertexvis.protobuf.core.SceneAnnotationSet>} value */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse.prototype.setSceneAnnotationSetsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.vertexvis.protobuf.core.SceneAnnotationSet=} opt_value\n * @param {number=} opt_index\n * @return {!proto.vertexvis.protobuf.core.SceneAnnotationSet}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse.prototype.addSceneAnnotationSets = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.vertexvis.protobuf.core.SceneAnnotationSet, opt_index);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse.prototype.clearSceneAnnotationSetsList = function() {\n this.setSceneAnnotationSetsList([]);\n};\n\n\n/**\n * optional vertexvis.protobuf.core.Cursor next_cursor = 2;\n * @return {?proto.vertexvis.protobuf.core.Cursor}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse.prototype.getNextCursor = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Cursor} */ (\n jspb.Message.getWrapperField(this, core_protos_paging_pb.Cursor, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Cursor|undefined} value */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse.prototype.setNextCursor = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse.prototype.clearNextCursor = function() {\n this.setNextCursor(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneViewAnnotationSetsResponse.prototype.hasNextCursor = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest.displayName = 'proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n sceneAnnotationSetId: (f = msg.getSceneAnnotationSetId()) && core_protos_uuid_pb.Uuid2l.toObject(includeInstance, f),\n page: (f = msg.getPage()) && core_protos_paging_pb.Pager.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest;\n return proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new core_protos_uuid_pb.Uuid2l;\n reader.readMessage(value,core_protos_uuid_pb.Uuid2l.deserializeBinaryFromReader);\n msg.setSceneAnnotationSetId(value);\n break;\n case 2:\n var value = new core_protos_paging_pb.Pager;\n reader.readMessage(value,core_protos_paging_pb.Pager.deserializeBinaryFromReader);\n msg.setPage(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSceneAnnotationSetId();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n core_protos_uuid_pb.Uuid2l.serializeBinaryToWriter\n );\n }\n f = message.getPage();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n core_protos_paging_pb.Pager.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional vertexvis.protobuf.core.Uuid2l scene_annotation_set_id = 1;\n * @return {?proto.vertexvis.protobuf.core.Uuid2l}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest.prototype.getSceneAnnotationSetId = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Uuid2l} */ (\n jspb.Message.getWrapperField(this, core_protos_uuid_pb.Uuid2l, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Uuid2l|undefined} value */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest.prototype.setSceneAnnotationSetId = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest.prototype.clearSceneAnnotationSetId = function() {\n this.setSceneAnnotationSetId(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest.prototype.hasSceneAnnotationSetId = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional vertexvis.protobuf.core.Pager page = 2;\n * @return {?proto.vertexvis.protobuf.core.Pager}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest.prototype.getPage = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Pager} */ (\n jspb.Message.getWrapperField(this, core_protos_paging_pb.Pager, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Pager|undefined} value */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest.prototype.setPage = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest.prototype.clearPage = function() {\n this.setPage(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsRequest.prototype.hasPage = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse.repeatedFields_, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse.displayName = 'proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array<number>}\n * @const\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n sceneAnnotationsList: jspb.Message.toObjectList(msg.getSceneAnnotationsList(),\n core_protos_scene_annotations_pb.SceneAnnotation.toObject, includeInstance),\n nextCursor: (f = msg.getNextCursor()) && core_protos_paging_pb.Cursor.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse;\n return proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new core_protos_scene_annotations_pb.SceneAnnotation;\n reader.readMessage(value,core_protos_scene_annotations_pb.SceneAnnotation.deserializeBinaryFromReader);\n msg.addSceneAnnotations(value);\n break;\n case 2:\n var value = new core_protos_paging_pb.Cursor;\n reader.readMessage(value,core_protos_paging_pb.Cursor.deserializeBinaryFromReader);\n msg.setNextCursor(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSceneAnnotationsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n core_protos_scene_annotations_pb.SceneAnnotation.serializeBinaryToWriter\n );\n }\n f = message.getNextCursor();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n core_protos_paging_pb.Cursor.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated vertexvis.protobuf.core.SceneAnnotation scene_annotations = 1;\n * @return {!Array<!proto.vertexvis.protobuf.core.SceneAnnotation>}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse.prototype.getSceneAnnotationsList = function() {\n return /** @type{!Array<!proto.vertexvis.protobuf.core.SceneAnnotation>} */ (\n jspb.Message.getRepeatedWrapperField(this, core_protos_scene_annotations_pb.SceneAnnotation, 1));\n};\n\n\n/** @param {!Array<!proto.vertexvis.protobuf.core.SceneAnnotation>} value */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse.prototype.setSceneAnnotationsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.vertexvis.protobuf.core.SceneAnnotation=} opt_value\n * @param {number=} opt_index\n * @return {!proto.vertexvis.protobuf.core.SceneAnnotation}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse.prototype.addSceneAnnotations = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.vertexvis.protobuf.core.SceneAnnotation, opt_index);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse.prototype.clearSceneAnnotationsList = function() {\n this.setSceneAnnotationsList([]);\n};\n\n\n/**\n * optional vertexvis.protobuf.core.Cursor next_cursor = 2;\n * @return {?proto.vertexvis.protobuf.core.Cursor}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse.prototype.getNextCursor = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Cursor} */ (\n jspb.Message.getWrapperField(this, core_protos_paging_pb.Cursor, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Cursor|undefined} value */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse.prototype.setNextCursor = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse.prototype.clearNextCursor = function() {\n this.setNextCursor(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.sceneview.v1.ListSceneAnnotationsResponse.prototype.hasNextCursor = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.vertexvis.protobuf.sceneview.v1.MeasureRequest.repeatedFields_, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.sceneview.v1.MeasureRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.sceneview.v1.MeasureRequest.displayName = 'proto.vertexvis.protobuf.sceneview.v1.MeasureRequest';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array<number>}\n * @const\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureRequest.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.sceneview.v1.MeasureRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.sceneview.v1.MeasureRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n entitiesList: jspb.Message.toObjectList(msg.getEntitiesList(),\n proto.vertexvis.protobuf.sceneview.v1.MeasureEntity.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.MeasureRequest}\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.sceneview.v1.MeasureRequest;\n return proto.vertexvis.protobuf.sceneview.v1.MeasureRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.MeasureRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.MeasureRequest}\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.vertexvis.protobuf.sceneview.v1.MeasureEntity;\n reader.readMessage(value,proto.vertexvis.protobuf.sceneview.v1.MeasureEntity.deserializeBinaryFromReader);\n msg.addEntities(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.sceneview.v1.MeasureRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.MeasureRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getEntitiesList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.vertexvis.protobuf.sceneview.v1.MeasureEntity.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated MeasureEntity entities = 1;\n * @return {!Array<!proto.vertexvis.protobuf.sceneview.v1.MeasureEntity>}\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureRequest.prototype.getEntitiesList = function() {\n return /** @type{!Array<!proto.vertexvis.protobuf.sceneview.v1.MeasureEntity>} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.vertexvis.protobuf.sceneview.v1.MeasureEntity, 1));\n};\n\n\n/** @param {!Array<!proto.vertexvis.protobuf.sceneview.v1.MeasureEntity>} value */\nproto.vertexvis.protobuf.sceneview.v1.MeasureRequest.prototype.setEntitiesList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.vertexvis.protobuf.sceneview.v1.MeasureEntity=} opt_value\n * @param {number=} opt_index\n * @return {!proto.vertexvis.protobuf.sceneview.v1.MeasureEntity}\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureRequest.prototype.addEntities = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.vertexvis.protobuf.sceneview.v1.MeasureEntity, opt_index);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.MeasureRequest.prototype.clearEntitiesList = function() {\n this.setEntitiesList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureEntity = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.sceneview.v1.MeasureEntity, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.sceneview.v1.MeasureEntity.displayName = 'proto.vertexvis.protobuf.sceneview.v1.MeasureEntity';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureEntity.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.sceneview.v1.MeasureEntity.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.sceneview.v1.MeasureEntity} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureEntity.toObject = function(includeInstance, msg) {\n var f, obj = {\n modelEntity: (f = msg.getModelEntity()) && core_protos_model_entity_pb.ModelEntity.toObject(includeInstance, f),\n point: (f = msg.getPoint()) && core_protos_geometry_pb.Vector3f.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.MeasureEntity}\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureEntity.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.sceneview.v1.MeasureEntity;\n return proto.vertexvis.protobuf.sceneview.v1.MeasureEntity.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.MeasureEntity} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.MeasureEntity}\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureEntity.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new core_protos_model_entity_pb.ModelEntity;\n reader.readMessage(value,core_protos_model_entity_pb.ModelEntity.deserializeBinaryFromReader);\n msg.setModelEntity(value);\n break;\n case 2:\n var value = new core_protos_geometry_pb.Vector3f;\n reader.readMessage(value,core_protos_geometry_pb.Vector3f.deserializeBinaryFromReader);\n msg.setPoint(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureEntity.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.sceneview.v1.MeasureEntity.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.MeasureEntity} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureEntity.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getModelEntity();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n core_protos_model_entity_pb.ModelEntity.serializeBinaryToWriter\n );\n }\n f = message.getPoint();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n core_protos_geometry_pb.Vector3f.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional vertexvis.protobuf.core.ModelEntity model_entity = 1;\n * @return {?proto.vertexvis.protobuf.core.ModelEntity}\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureEntity.prototype.getModelEntity = function() {\n return /** @type{?proto.vertexvis.protobuf.core.ModelEntity} */ (\n jspb.Message.getWrapperField(this, core_protos_model_entity_pb.ModelEntity, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.ModelEntity|undefined} value */\nproto.vertexvis.protobuf.sceneview.v1.MeasureEntity.prototype.setModelEntity = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.MeasureEntity.prototype.clearModelEntity = function() {\n this.setModelEntity(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureEntity.prototype.hasModelEntity = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional vertexvis.protobuf.core.Vector3f point = 2;\n * @return {?proto.vertexvis.protobuf.core.Vector3f}\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureEntity.prototype.getPoint = function() {\n return /** @type{?proto.vertexvis.protobuf.core.Vector3f} */ (\n jspb.Message.getWrapperField(this, core_protos_geometry_pb.Vector3f, 2));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.Vector3f|undefined} value */\nproto.vertexvis.protobuf.sceneview.v1.MeasureEntity.prototype.setPoint = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.MeasureEntity.prototype.clearPoint = function() {\n this.setPoint(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureEntity.prototype.hasPoint = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.sceneview.v1.MeasureResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.sceneview.v1.MeasureResponse.displayName = 'proto.vertexvis.protobuf.sceneview.v1.MeasureResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.sceneview.v1.MeasureResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.sceneview.v1.MeasureResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n outcome: (f = msg.getOutcome()) && core_protos_measurement_pb.MeasurementOutcome.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.MeasureResponse}\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.sceneview.v1.MeasureResponse;\n return proto.vertexvis.protobuf.sceneview.v1.MeasureResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.MeasureResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.MeasureResponse}\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new core_protos_measurement_pb.MeasurementOutcome;\n reader.readMessage(value,core_protos_measurement_pb.MeasurementOutcome.deserializeBinaryFromReader);\n msg.setOutcome(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.sceneview.v1.MeasureResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.MeasureResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getOutcome();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n core_protos_measurement_pb.MeasurementOutcome.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional vertexvis.protobuf.core.MeasurementOutcome outcome = 1;\n * @return {?proto.vertexvis.protobuf.core.MeasurementOutcome}\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureResponse.prototype.getOutcome = function() {\n return /** @type{?proto.vertexvis.protobuf.core.MeasurementOutcome} */ (\n jspb.Message.getWrapperField(this, core_protos_measurement_pb.MeasurementOutcome, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.MeasurementOutcome|undefined} value */\nproto.vertexvis.protobuf.sceneview.v1.MeasureResponse.prototype.setOutcome = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.MeasureResponse.prototype.clearOutcome = function() {\n this.setOutcome(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.sceneview.v1.MeasureResponse.prototype.hasOutcome = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesRequest.repeatedFields_, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesRequest.displayName = 'proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesRequest';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array<number>}\n * @const\n */\nproto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesRequest.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n updatesList: jspb.Message.toObjectList(msg.getUpdatesList(),\n proto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesRequest}\n */\nproto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesRequest;\n return proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesRequest}\n */\nproto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate;\n reader.readMessage(value,proto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate.deserializeBinaryFromReader);\n msg.addUpdates(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getUpdatesList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated ModelEntityUpdate updates = 1;\n * @return {!Array<!proto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate>}\n */\nproto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesRequest.prototype.getUpdatesList = function() {\n return /** @type{!Array<!proto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate>} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate, 1));\n};\n\n\n/** @param {!Array<!proto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate>} value */\nproto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesRequest.prototype.setUpdatesList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate=} opt_value\n * @param {number=} opt_index\n * @return {!proto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate}\n */\nproto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesRequest.prototype.addUpdates = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate, opt_index);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesRequest.prototype.clearUpdatesList = function() {\n this.setUpdatesList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate.displayName = 'proto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate.toObject = function(includeInstance, msg) {\n var f, obj = {\n modelEntity: (f = msg.getModelEntity()) && core_protos_model_entity_pb.ModelEntity.toObject(includeInstance, f),\n highlight: (f = msg.getHighlight()) && google_protobuf_wrappers_pb.BoolValue.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate}\n */\nproto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate;\n return proto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate}\n */\nproto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new core_protos_model_entity_pb.ModelEntity;\n reader.readMessage(value,core_protos_model_entity_pb.ModelEntity.deserializeBinaryFromReader);\n msg.setModelEntity(value);\n break;\n case 2:\n var value = new google_protobuf_wrappers_pb.BoolValue;\n reader.readMessage(value,google_protobuf_wrappers_pb.BoolValue.deserializeBinaryFromReader);\n msg.setHighlight(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getModelEntity();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n core_protos_model_entity_pb.ModelEntity.serializeBinaryToWriter\n );\n }\n f = message.getHighlight();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n google_protobuf_wrappers_pb.BoolValue.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional vertexvis.protobuf.core.ModelEntity model_entity = 1;\n * @return {?proto.vertexvis.protobuf.core.ModelEntity}\n */\nproto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate.prototype.getModelEntity = function() {\n return /** @type{?proto.vertexvis.protobuf.core.ModelEntity} */ (\n jspb.Message.getWrapperField(this, core_protos_model_entity_pb.ModelEntity, 1));\n};\n\n\n/** @param {?proto.vertexvis.protobuf.core.ModelEntity|undefined} value */\nproto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate.prototype.setModelEntity = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate.prototype.clearModelEntity = function() {\n this.setModelEntity(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate.prototype.hasModelEntity = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional google.protobuf.BoolValue highlight = 2;\n * @return {?proto.google.protobuf.BoolValue}\n */\nproto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate.prototype.getHighlight = function() {\n return /** @type{?proto.google.protobuf.BoolValue} */ (\n jspb.Message.getWrapperField(this, google_protobuf_wrappers_pb.BoolValue, 2));\n};\n\n\n/** @param {?proto.google.protobuf.BoolValue|undefined} value */\nproto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate.prototype.setHighlight = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate.prototype.clearHighlight = function() {\n this.setHighlight(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.vertexvis.protobuf.sceneview.v1.ModelEntityUpdate.prototype.hasHighlight = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesResponse.displayName = 'proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesResponse}\n */\nproto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesResponse;\n return proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesResponse}\n */\nproto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.vertexvis.protobuf.sceneview.v1.UpdateModelEntitiesResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\ngoog.object.extend(exports, proto.vertexvis.protobuf.sceneview.v1);\n"],"version":3}
|