scanoss 0.9.3 → 0.10.0

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.
Files changed (119) hide show
  1. package/README.md +23 -15
  2. package/assets/ReportHTMLTemplate/index.html +74 -59
  3. package/build/main/cli/commands/scan.js +29 -18
  4. package/build/main/index.d.ts +10 -6
  5. package/build/main/index.js +11 -8
  6. package/build/main/sdk/Constants.d.ts +4 -0
  7. package/build/main/sdk/Constants.js +7 -0
  8. package/build/main/sdk/Dependencies/DependencyScanner.d.ts +2 -2
  9. package/build/main/sdk/Dependencies/DependencyScanner.js +6 -6
  10. package/build/main/sdk/Errors.d.ts +1 -0
  11. package/build/main/sdk/Errors.js +4 -0
  12. package/build/main/sdk/FileCount/FileCount.d.ts +1 -1
  13. package/build/main/sdk/FileCount/FileCount.js +10 -3
  14. package/build/main/sdk/{DataLayer → Report/DataLayer}/DataLayerTypes.d.ts +11 -4
  15. package/build/main/sdk/{DataLayer → Report/DataLayer}/DataLayerTypes.js +1 -4
  16. package/build/main/sdk/{DataLayer → Report/DataLayer}/DataProviderManager.d.ts +1 -1
  17. package/build/main/sdk/Report/DataLayer/DataProviderManager.js +25 -0
  18. package/build/main/sdk/{DataLayer → Report/DataLayer}/DataProviders/ComponentDataProvider.d.ts +3 -3
  19. package/build/main/sdk/Report/DataLayer/DataProviders/ComponentDataProvider.js +175 -0
  20. package/build/main/sdk/{DataLayer → Report/DataLayer}/DataProviders/DependencyDataProvider.d.ts +2 -2
  21. package/build/main/sdk/Report/DataLayer/DataProviders/DependencyDataProvider.js +42 -0
  22. package/build/main/sdk/{DataLayer → Report/DataLayer}/DataProviders/LicenseDataProvider.d.ts +3 -5
  23. package/build/main/sdk/Report/DataLayer/DataProviders/LicenseDataProvider.js +118 -0
  24. package/build/main/sdk/Report/DataLayer/DataProviders/LicenseObligationDataProvider.d.ts +13 -0
  25. package/build/main/sdk/Report/DataLayer/DataProviders/LicenseObligationDataProvider.js +65 -0
  26. package/build/{module/sdk → main/sdk/Report}/DataLayer/DataProviders/SummaryDataProvider.d.ts +4 -2
  27. package/build/main/sdk/Report/DataLayer/DataProviders/SummaryDataProvider.js +38 -0
  28. package/build/main/sdk/Report/Report.d.ts +7 -1
  29. package/build/main/sdk/Report/Report.js +19 -6
  30. package/build/main/sdk/Services/Grpc/BaseService.d.ts +18 -0
  31. package/build/main/sdk/Services/Grpc/BaseService.js +94 -0
  32. package/build/main/sdk/Services/Grpc/CryptographyService.d.ts +9 -0
  33. package/build/main/sdk/Services/Grpc/CryptographyService.js +35 -0
  34. package/build/{module/sdk/grpc/GrpcDependencyService.d.ts → main/sdk/Services/Grpc/DependencyService.d.ts} +1 -1
  35. package/build/main/sdk/{grpc/GrpcDependencyService.js → Services/Grpc/DependencyService.js} +4 -4
  36. package/build/main/sdk/Services/Grpc/scanoss/api/common/v2/scanoss-common_grpc_pb.js +2 -0
  37. package/build/main/sdk/Services/Grpc/scanoss/api/common/v2/scanoss-common_pb.js +746 -0
  38. package/build/main/sdk/Services/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_grpc_pb.d.ts +39 -0
  39. package/build/main/sdk/Services/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_grpc_pb.js +98 -0
  40. package/build/main/sdk/Services/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_pb.js +562 -0
  41. package/build/{module/sdk/grpc → main/sdk/Services/Grpc}/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.js +2 -2
  42. package/build/main/sdk/Services/Grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.js +1397 -0
  43. package/build/main/tsconfig.tsbuildinfo +295 -213
  44. package/build/module/cli/commands/scan.js +31 -20
  45. package/build/module/index.d.ts +10 -6
  46. package/build/module/index.js +11 -8
  47. package/build/module/sdk/Constants.d.ts +4 -0
  48. package/build/module/sdk/Constants.js +5 -0
  49. package/build/module/sdk/Dependencies/DependencyScanner.d.ts +2 -2
  50. package/build/module/sdk/Dependencies/DependencyScanner.js +9 -9
  51. package/build/module/sdk/Errors.d.ts +1 -0
  52. package/build/module/sdk/Errors.js +2 -0
  53. package/build/module/sdk/FileCount/FileCount.d.ts +1 -1
  54. package/build/module/sdk/FileCount/FileCount.js +13 -6
  55. package/build/module/sdk/{DataLayer → Report/DataLayer}/DataLayerTypes.d.ts +11 -4
  56. package/build/module/sdk/Report/DataLayer/DataLayerTypes.js +2 -0
  57. package/build/module/sdk/{DataLayer → Report/DataLayer}/DataProviderManager.d.ts +1 -1
  58. package/build/module/sdk/Report/DataLayer/DataProviderManager.js +22 -0
  59. package/build/module/sdk/{DataLayer → Report/DataLayer}/DataProviders/ComponentDataProvider.d.ts +3 -3
  60. package/build/module/sdk/Report/DataLayer/DataProviders/ComponentDataProvider.js +170 -0
  61. package/build/module/sdk/{DataLayer → Report/DataLayer}/DataProviders/DependencyDataProvider.d.ts +2 -2
  62. package/build/module/sdk/Report/DataLayer/DataProviders/DependencyDataProvider.js +39 -0
  63. package/build/module/sdk/{DataLayer → Report/DataLayer}/DataProviders/LicenseDataProvider.d.ts +3 -5
  64. package/build/module/sdk/Report/DataLayer/DataProviders/LicenseDataProvider.js +115 -0
  65. package/build/module/sdk/Report/DataLayer/DataProviders/LicenseObligationDataProvider.d.ts +13 -0
  66. package/build/module/sdk/Report/DataLayer/DataProviders/LicenseObligationDataProvider.js +60 -0
  67. package/build/{main/sdk → module/sdk/Report}/DataLayer/DataProviders/SummaryDataProvider.d.ts +4 -2
  68. package/build/module/sdk/Report/DataLayer/DataProviders/SummaryDataProvider.js +35 -0
  69. package/build/module/sdk/Report/Report.d.ts +7 -1
  70. package/build/module/sdk/Report/Report.js +19 -6
  71. package/build/module/sdk/Services/Grpc/BaseService.d.ts +18 -0
  72. package/build/module/sdk/Services/Grpc/BaseService.js +61 -0
  73. package/build/module/sdk/Services/Grpc/CryptographyService.d.ts +9 -0
  74. package/build/module/sdk/Services/Grpc/CryptographyService.js +32 -0
  75. package/build/{main/sdk/grpc/GrpcDependencyService.d.ts → module/sdk/Services/Grpc/DependencyService.d.ts} +1 -1
  76. package/build/module/sdk/Services/Grpc/DependencyService.js +62 -0
  77. package/build/module/sdk/Services/Grpc/scanoss/api/common/v2/scanoss-common_grpc_pb.js +2 -0
  78. package/build/module/sdk/Services/Grpc/scanoss/api/common/v2/scanoss-common_pb.js +746 -0
  79. package/build/module/sdk/Services/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_grpc_pb.d.ts +39 -0
  80. package/build/module/sdk/Services/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_grpc_pb.js +98 -0
  81. package/build/module/sdk/Services/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_pb.js +562 -0
  82. package/build/{main/sdk/grpc → module/sdk/Services/Grpc}/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.js +2 -2
  83. package/build/module/sdk/Services/Grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.js +1397 -0
  84. package/build/module/tsconfig.module.tsbuildinfo +295 -213
  85. package/package.json +2 -2
  86. package/build/main/sdk/DataLayer/DataProviderManager.js +0 -24
  87. package/build/main/sdk/DataLayer/DataProviders/ComponentDataProvider.js +0 -164
  88. package/build/main/sdk/DataLayer/DataProviders/DependencyDataProvider.js +0 -37
  89. package/build/main/sdk/DataLayer/DataProviders/LicenseDataProvider.js +0 -148
  90. package/build/main/sdk/DataLayer/DataProviders/SummaryDataProvider.js +0 -33
  91. package/build/main/sdk/grpc/scanoss/api/common/v2/scanoss-common_grpc_pb.js +0 -2
  92. package/build/main/sdk/grpc/scanoss/api/common/v2/scanoss-common_pb.js +0 -404
  93. package/build/main/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.js +0 -1197
  94. package/build/main/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_grpc_pb.d.ts +0 -19
  95. package/build/main/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_grpc_pb.js +0 -66
  96. package/build/main/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_pb.js +0 -14
  97. package/build/module/sdk/DataLayer/DataLayerTypes.js +0 -5
  98. package/build/module/sdk/DataLayer/DataProviderManager.js +0 -21
  99. package/build/module/sdk/DataLayer/DataProviders/ComponentDataProvider.js +0 -159
  100. package/build/module/sdk/DataLayer/DataProviders/DependencyDataProvider.js +0 -34
  101. package/build/module/sdk/DataLayer/DataProviders/LicenseDataProvider.js +0 -145
  102. package/build/module/sdk/DataLayer/DataProviders/SummaryDataProvider.js +0 -30
  103. package/build/module/sdk/grpc/GrpcDependencyService.js +0 -62
  104. package/build/module/sdk/grpc/scanoss/api/common/v2/scanoss-common_grpc_pb.js +0 -2
  105. package/build/module/sdk/grpc/scanoss/api/common/v2/scanoss-common_pb.js +0 -404
  106. package/build/module/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.js +0 -1197
  107. package/build/module/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_grpc_pb.d.ts +0 -19
  108. package/build/module/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_grpc_pb.js +0 -66
  109. package/build/module/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_pb.js +0 -14
  110. /package/build/main/sdk/{grpc → Services/Grpc}/scanoss/api/common/v2/scanoss-common_grpc_pb.d.ts +0 -0
  111. /package/build/main/sdk/{grpc → Services/Grpc}/scanoss/api/common/v2/scanoss-common_pb.d.ts +0 -0
  112. /package/build/main/sdk/{grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.d.ts → Services/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_pb.d.ts} +0 -0
  113. /package/build/main/sdk/{grpc → Services/Grpc}/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.d.ts +0 -0
  114. /package/build/{module/sdk/grpc → main/sdk/Services/Grpc}/scanoss/api/dependencies/v2/scanoss-dependencies_pb.d.ts +0 -0
  115. /package/build/module/sdk/{grpc → Services/Grpc}/scanoss/api/common/v2/scanoss-common_grpc_pb.d.ts +0 -0
  116. /package/build/module/sdk/{grpc → Services/Grpc}/scanoss/api/common/v2/scanoss-common_pb.d.ts +0 -0
  117. /package/build/{main/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_pb.d.ts → module/sdk/Services/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_pb.d.ts} +0 -0
  118. /package/build/module/sdk/{grpc → Services/Grpc}/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.d.ts +0 -0
  119. /package/build/module/sdk/{grpc/scanoss/api/scanning/v2/scanoss-scanning_pb.d.ts → Services/Grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.d.ts} +0 -0
@@ -0,0 +1,746 @@
1
+ // source: scanoss/api/common/v2/scanoss-common.proto
2
+ /**
3
+ * @fileoverview
4
+ * @enhanceable
5
+ * @suppress {missingRequire} reports error on implicit type usages.
6
+ * @suppress {messageConventions} JS Compiler reports an error if a variable or
7
+ * field starts with 'MSG_' and isn't a translatable message.
8
+ * @public
9
+ */
10
+ // GENERATED CODE -- DO NOT EDIT!
11
+ /* eslint-disable */
12
+ // @ts-nocheck
13
+ var jspb = require('google-protobuf');
14
+ var goog = jspb;
15
+ var global = (typeof globalThis !== 'undefined' && globalThis) ||
16
+ (typeof window !== 'undefined' && window) ||
17
+ (typeof global !== 'undefined' && global) ||
18
+ (typeof self !== 'undefined' && self) ||
19
+ (function () { return this; }).call(null) ||
20
+ Function('return this')();
21
+ goog.exportSymbol('proto.scanoss.api.common.v2.EchoRequest', null, global);
22
+ goog.exportSymbol('proto.scanoss.api.common.v2.EchoResponse', null, global);
23
+ goog.exportSymbol('proto.scanoss.api.common.v2.PurlRequest', null, global);
24
+ goog.exportSymbol('proto.scanoss.api.common.v2.PurlRequest.Purls', null, global);
25
+ goog.exportSymbol('proto.scanoss.api.common.v2.StatusCode', null, global);
26
+ goog.exportSymbol('proto.scanoss.api.common.v2.StatusResponse', null, global);
27
+ /**
28
+ * Generated by JsPbCodeGenerator.
29
+ * @param {Array=} opt_data Optional initial data array, typically from a
30
+ * server response, or constructed directly in Javascript. The array is used
31
+ * in place and becomes part of the constructed object. It is not cloned.
32
+ * If no data is provided, the constructed object will be empty, but still
33
+ * valid.
34
+ * @extends {jspb.Message}
35
+ * @constructor
36
+ */
37
+ proto.scanoss.api.common.v2.StatusResponse = function (opt_data) {
38
+ jspb.Message.initialize(this, opt_data, 0, -1, null, null);
39
+ };
40
+ goog.inherits(proto.scanoss.api.common.v2.StatusResponse, jspb.Message);
41
+ if (goog.DEBUG && !COMPILED) {
42
+ /**
43
+ * @public
44
+ * @override
45
+ */
46
+ proto.scanoss.api.common.v2.StatusResponse.displayName = 'proto.scanoss.api.common.v2.StatusResponse';
47
+ }
48
+ /**
49
+ * Generated by JsPbCodeGenerator.
50
+ * @param {Array=} opt_data Optional initial data array, typically from a
51
+ * server response, or constructed directly in Javascript. The array is used
52
+ * in place and becomes part of the constructed object. It is not cloned.
53
+ * If no data is provided, the constructed object will be empty, but still
54
+ * valid.
55
+ * @extends {jspb.Message}
56
+ * @constructor
57
+ */
58
+ proto.scanoss.api.common.v2.EchoRequest = function (opt_data) {
59
+ jspb.Message.initialize(this, opt_data, 0, -1, null, null);
60
+ };
61
+ goog.inherits(proto.scanoss.api.common.v2.EchoRequest, jspb.Message);
62
+ if (goog.DEBUG && !COMPILED) {
63
+ /**
64
+ * @public
65
+ * @override
66
+ */
67
+ proto.scanoss.api.common.v2.EchoRequest.displayName = 'proto.scanoss.api.common.v2.EchoRequest';
68
+ }
69
+ /**
70
+ * Generated by JsPbCodeGenerator.
71
+ * @param {Array=} opt_data Optional initial data array, typically from a
72
+ * server response, or constructed directly in Javascript. The array is used
73
+ * in place and becomes part of the constructed object. It is not cloned.
74
+ * If no data is provided, the constructed object will be empty, but still
75
+ * valid.
76
+ * @extends {jspb.Message}
77
+ * @constructor
78
+ */
79
+ proto.scanoss.api.common.v2.EchoResponse = function (opt_data) {
80
+ jspb.Message.initialize(this, opt_data, 0, -1, null, null);
81
+ };
82
+ goog.inherits(proto.scanoss.api.common.v2.EchoResponse, jspb.Message);
83
+ if (goog.DEBUG && !COMPILED) {
84
+ /**
85
+ * @public
86
+ * @override
87
+ */
88
+ proto.scanoss.api.common.v2.EchoResponse.displayName = 'proto.scanoss.api.common.v2.EchoResponse';
89
+ }
90
+ /**
91
+ * Generated by JsPbCodeGenerator.
92
+ * @param {Array=} opt_data Optional initial data array, typically from a
93
+ * server response, or constructed directly in Javascript. The array is used
94
+ * in place and becomes part of the constructed object. It is not cloned.
95
+ * If no data is provided, the constructed object will be empty, but still
96
+ * valid.
97
+ * @extends {jspb.Message}
98
+ * @constructor
99
+ */
100
+ proto.scanoss.api.common.v2.PurlRequest = function (opt_data) {
101
+ jspb.Message.initialize(this, opt_data, 0, -1, proto.scanoss.api.common.v2.PurlRequest.repeatedFields_, null);
102
+ };
103
+ goog.inherits(proto.scanoss.api.common.v2.PurlRequest, jspb.Message);
104
+ if (goog.DEBUG && !COMPILED) {
105
+ /**
106
+ * @public
107
+ * @override
108
+ */
109
+ proto.scanoss.api.common.v2.PurlRequest.displayName = 'proto.scanoss.api.common.v2.PurlRequest';
110
+ }
111
+ /**
112
+ * Generated by JsPbCodeGenerator.
113
+ * @param {Array=} opt_data Optional initial data array, typically from a
114
+ * server response, or constructed directly in Javascript. The array is used
115
+ * in place and becomes part of the constructed object. It is not cloned.
116
+ * If no data is provided, the constructed object will be empty, but still
117
+ * valid.
118
+ * @extends {jspb.Message}
119
+ * @constructor
120
+ */
121
+ proto.scanoss.api.common.v2.PurlRequest.Purls = function (opt_data) {
122
+ jspb.Message.initialize(this, opt_data, 0, -1, null, null);
123
+ };
124
+ goog.inherits(proto.scanoss.api.common.v2.PurlRequest.Purls, jspb.Message);
125
+ if (goog.DEBUG && !COMPILED) {
126
+ /**
127
+ * @public
128
+ * @override
129
+ */
130
+ proto.scanoss.api.common.v2.PurlRequest.Purls.displayName = 'proto.scanoss.api.common.v2.PurlRequest.Purls';
131
+ }
132
+ if (jspb.Message.GENERATE_TO_OBJECT) {
133
+ /**
134
+ * Creates an object representation of this proto.
135
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
136
+ * Optional fields that are not set will be set to undefined.
137
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
138
+ * For the list of reserved names please see:
139
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
140
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
141
+ * JSPB instance for transitional soy proto support:
142
+ * http://goto/soy-param-migration
143
+ * @return {!Object}
144
+ */
145
+ proto.scanoss.api.common.v2.StatusResponse.prototype.toObject = function (opt_includeInstance) {
146
+ return proto.scanoss.api.common.v2.StatusResponse.toObject(opt_includeInstance, this);
147
+ };
148
+ /**
149
+ * Static version of the {@see toObject} method.
150
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
151
+ * the JSPB instance for transitional soy proto support:
152
+ * http://goto/soy-param-migration
153
+ * @param {!proto.scanoss.api.common.v2.StatusResponse} msg The msg instance to transform.
154
+ * @return {!Object}
155
+ * @suppress {unusedLocalVariables} f is only used for nested messages
156
+ */
157
+ proto.scanoss.api.common.v2.StatusResponse.toObject = function (includeInstance, msg) {
158
+ var f, obj = {
159
+ status: jspb.Message.getFieldWithDefault(msg, 1, 0),
160
+ message: jspb.Message.getFieldWithDefault(msg, 2, "")
161
+ };
162
+ if (includeInstance) {
163
+ obj.$jspbMessageInstance = msg;
164
+ }
165
+ return obj;
166
+ };
167
+ }
168
+ /**
169
+ * Deserializes binary data (in protobuf wire format).
170
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
171
+ * @return {!proto.scanoss.api.common.v2.StatusResponse}
172
+ */
173
+ proto.scanoss.api.common.v2.StatusResponse.deserializeBinary = function (bytes) {
174
+ var reader = new jspb.BinaryReader(bytes);
175
+ var msg = new proto.scanoss.api.common.v2.StatusResponse;
176
+ return proto.scanoss.api.common.v2.StatusResponse.deserializeBinaryFromReader(msg, reader);
177
+ };
178
+ /**
179
+ * Deserializes binary data (in protobuf wire format) from the
180
+ * given reader into the given message object.
181
+ * @param {!proto.scanoss.api.common.v2.StatusResponse} msg The message object to deserialize into.
182
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
183
+ * @return {!proto.scanoss.api.common.v2.StatusResponse}
184
+ */
185
+ proto.scanoss.api.common.v2.StatusResponse.deserializeBinaryFromReader = function (msg, reader) {
186
+ while (reader.nextField()) {
187
+ if (reader.isEndGroup()) {
188
+ break;
189
+ }
190
+ var field = reader.getFieldNumber();
191
+ switch (field) {
192
+ case 1:
193
+ var value = /** @type {!proto.scanoss.api.common.v2.StatusCode} */ (reader.readEnum());
194
+ msg.setStatus(value);
195
+ break;
196
+ case 2:
197
+ var value = /** @type {string} */ (reader.readString());
198
+ msg.setMessage(value);
199
+ break;
200
+ default:
201
+ reader.skipField();
202
+ break;
203
+ }
204
+ }
205
+ return msg;
206
+ };
207
+ /**
208
+ * Serializes the message to binary data (in protobuf wire format).
209
+ * @return {!Uint8Array}
210
+ */
211
+ proto.scanoss.api.common.v2.StatusResponse.prototype.serializeBinary = function () {
212
+ var writer = new jspb.BinaryWriter();
213
+ proto.scanoss.api.common.v2.StatusResponse.serializeBinaryToWriter(this, writer);
214
+ return writer.getResultBuffer();
215
+ };
216
+ /**
217
+ * Serializes the given message to binary data (in protobuf wire
218
+ * format), writing to the given BinaryWriter.
219
+ * @param {!proto.scanoss.api.common.v2.StatusResponse} message
220
+ * @param {!jspb.BinaryWriter} writer
221
+ * @suppress {unusedLocalVariables} f is only used for nested messages
222
+ */
223
+ proto.scanoss.api.common.v2.StatusResponse.serializeBinaryToWriter = function (message, writer) {
224
+ var f = undefined;
225
+ f = message.getStatus();
226
+ if (f !== 0.0) {
227
+ writer.writeEnum(1, f);
228
+ }
229
+ f = message.getMessage();
230
+ if (f.length > 0) {
231
+ writer.writeString(2, f);
232
+ }
233
+ };
234
+ /**
235
+ * optional StatusCode status = 1;
236
+ * @return {!proto.scanoss.api.common.v2.StatusCode}
237
+ */
238
+ proto.scanoss.api.common.v2.StatusResponse.prototype.getStatus = function () {
239
+ return /** @type {!proto.scanoss.api.common.v2.StatusCode} */ (jspb.Message.getFieldWithDefault(this, 1, 0));
240
+ };
241
+ /**
242
+ * @param {!proto.scanoss.api.common.v2.StatusCode} value
243
+ * @return {!proto.scanoss.api.common.v2.StatusResponse} returns this
244
+ */
245
+ proto.scanoss.api.common.v2.StatusResponse.prototype.setStatus = function (value) {
246
+ return jspb.Message.setProto3EnumField(this, 1, value);
247
+ };
248
+ /**
249
+ * optional string message = 2;
250
+ * @return {string}
251
+ */
252
+ proto.scanoss.api.common.v2.StatusResponse.prototype.getMessage = function () {
253
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
254
+ };
255
+ /**
256
+ * @param {string} value
257
+ * @return {!proto.scanoss.api.common.v2.StatusResponse} returns this
258
+ */
259
+ proto.scanoss.api.common.v2.StatusResponse.prototype.setMessage = function (value) {
260
+ return jspb.Message.setProto3StringField(this, 2, value);
261
+ };
262
+ if (jspb.Message.GENERATE_TO_OBJECT) {
263
+ /**
264
+ * Creates an object representation of this proto.
265
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
266
+ * Optional fields that are not set will be set to undefined.
267
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
268
+ * For the list of reserved names please see:
269
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
270
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
271
+ * JSPB instance for transitional soy proto support:
272
+ * http://goto/soy-param-migration
273
+ * @return {!Object}
274
+ */
275
+ proto.scanoss.api.common.v2.EchoRequest.prototype.toObject = function (opt_includeInstance) {
276
+ return proto.scanoss.api.common.v2.EchoRequest.toObject(opt_includeInstance, this);
277
+ };
278
+ /**
279
+ * Static version of the {@see toObject} method.
280
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
281
+ * the JSPB instance for transitional soy proto support:
282
+ * http://goto/soy-param-migration
283
+ * @param {!proto.scanoss.api.common.v2.EchoRequest} msg The msg instance to transform.
284
+ * @return {!Object}
285
+ * @suppress {unusedLocalVariables} f is only used for nested messages
286
+ */
287
+ proto.scanoss.api.common.v2.EchoRequest.toObject = function (includeInstance, msg) {
288
+ var f, obj = {
289
+ message: jspb.Message.getFieldWithDefault(msg, 1, "")
290
+ };
291
+ if (includeInstance) {
292
+ obj.$jspbMessageInstance = msg;
293
+ }
294
+ return obj;
295
+ };
296
+ }
297
+ /**
298
+ * Deserializes binary data (in protobuf wire format).
299
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
300
+ * @return {!proto.scanoss.api.common.v2.EchoRequest}
301
+ */
302
+ proto.scanoss.api.common.v2.EchoRequest.deserializeBinary = function (bytes) {
303
+ var reader = new jspb.BinaryReader(bytes);
304
+ var msg = new proto.scanoss.api.common.v2.EchoRequest;
305
+ return proto.scanoss.api.common.v2.EchoRequest.deserializeBinaryFromReader(msg, reader);
306
+ };
307
+ /**
308
+ * Deserializes binary data (in protobuf wire format) from the
309
+ * given reader into the given message object.
310
+ * @param {!proto.scanoss.api.common.v2.EchoRequest} msg The message object to deserialize into.
311
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
312
+ * @return {!proto.scanoss.api.common.v2.EchoRequest}
313
+ */
314
+ proto.scanoss.api.common.v2.EchoRequest.deserializeBinaryFromReader = function (msg, reader) {
315
+ while (reader.nextField()) {
316
+ if (reader.isEndGroup()) {
317
+ break;
318
+ }
319
+ var field = reader.getFieldNumber();
320
+ switch (field) {
321
+ case 1:
322
+ var value = /** @type {string} */ (reader.readString());
323
+ msg.setMessage(value);
324
+ break;
325
+ default:
326
+ reader.skipField();
327
+ break;
328
+ }
329
+ }
330
+ return msg;
331
+ };
332
+ /**
333
+ * Serializes the message to binary data (in protobuf wire format).
334
+ * @return {!Uint8Array}
335
+ */
336
+ proto.scanoss.api.common.v2.EchoRequest.prototype.serializeBinary = function () {
337
+ var writer = new jspb.BinaryWriter();
338
+ proto.scanoss.api.common.v2.EchoRequest.serializeBinaryToWriter(this, writer);
339
+ return writer.getResultBuffer();
340
+ };
341
+ /**
342
+ * Serializes the given message to binary data (in protobuf wire
343
+ * format), writing to the given BinaryWriter.
344
+ * @param {!proto.scanoss.api.common.v2.EchoRequest} message
345
+ * @param {!jspb.BinaryWriter} writer
346
+ * @suppress {unusedLocalVariables} f is only used for nested messages
347
+ */
348
+ proto.scanoss.api.common.v2.EchoRequest.serializeBinaryToWriter = function (message, writer) {
349
+ var f = undefined;
350
+ f = message.getMessage();
351
+ if (f.length > 0) {
352
+ writer.writeString(1, f);
353
+ }
354
+ };
355
+ /**
356
+ * optional string message = 1;
357
+ * @return {string}
358
+ */
359
+ proto.scanoss.api.common.v2.EchoRequest.prototype.getMessage = function () {
360
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
361
+ };
362
+ /**
363
+ * @param {string} value
364
+ * @return {!proto.scanoss.api.common.v2.EchoRequest} returns this
365
+ */
366
+ proto.scanoss.api.common.v2.EchoRequest.prototype.setMessage = function (value) {
367
+ return jspb.Message.setProto3StringField(this, 1, value);
368
+ };
369
+ if (jspb.Message.GENERATE_TO_OBJECT) {
370
+ /**
371
+ * Creates an object representation of this proto.
372
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
373
+ * Optional fields that are not set will be set to undefined.
374
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
375
+ * For the list of reserved names please see:
376
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
377
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
378
+ * JSPB instance for transitional soy proto support:
379
+ * http://goto/soy-param-migration
380
+ * @return {!Object}
381
+ */
382
+ proto.scanoss.api.common.v2.EchoResponse.prototype.toObject = function (opt_includeInstance) {
383
+ return proto.scanoss.api.common.v2.EchoResponse.toObject(opt_includeInstance, this);
384
+ };
385
+ /**
386
+ * Static version of the {@see toObject} method.
387
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
388
+ * the JSPB instance for transitional soy proto support:
389
+ * http://goto/soy-param-migration
390
+ * @param {!proto.scanoss.api.common.v2.EchoResponse} msg The msg instance to transform.
391
+ * @return {!Object}
392
+ * @suppress {unusedLocalVariables} f is only used for nested messages
393
+ */
394
+ proto.scanoss.api.common.v2.EchoResponse.toObject = function (includeInstance, msg) {
395
+ var f, obj = {
396
+ message: jspb.Message.getFieldWithDefault(msg, 1, "")
397
+ };
398
+ if (includeInstance) {
399
+ obj.$jspbMessageInstance = msg;
400
+ }
401
+ return obj;
402
+ };
403
+ }
404
+ /**
405
+ * Deserializes binary data (in protobuf wire format).
406
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
407
+ * @return {!proto.scanoss.api.common.v2.EchoResponse}
408
+ */
409
+ proto.scanoss.api.common.v2.EchoResponse.deserializeBinary = function (bytes) {
410
+ var reader = new jspb.BinaryReader(bytes);
411
+ var msg = new proto.scanoss.api.common.v2.EchoResponse;
412
+ return proto.scanoss.api.common.v2.EchoResponse.deserializeBinaryFromReader(msg, reader);
413
+ };
414
+ /**
415
+ * Deserializes binary data (in protobuf wire format) from the
416
+ * given reader into the given message object.
417
+ * @param {!proto.scanoss.api.common.v2.EchoResponse} msg The message object to deserialize into.
418
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
419
+ * @return {!proto.scanoss.api.common.v2.EchoResponse}
420
+ */
421
+ proto.scanoss.api.common.v2.EchoResponse.deserializeBinaryFromReader = function (msg, reader) {
422
+ while (reader.nextField()) {
423
+ if (reader.isEndGroup()) {
424
+ break;
425
+ }
426
+ var field = reader.getFieldNumber();
427
+ switch (field) {
428
+ case 1:
429
+ var value = /** @type {string} */ (reader.readString());
430
+ msg.setMessage(value);
431
+ break;
432
+ default:
433
+ reader.skipField();
434
+ break;
435
+ }
436
+ }
437
+ return msg;
438
+ };
439
+ /**
440
+ * Serializes the message to binary data (in protobuf wire format).
441
+ * @return {!Uint8Array}
442
+ */
443
+ proto.scanoss.api.common.v2.EchoResponse.prototype.serializeBinary = function () {
444
+ var writer = new jspb.BinaryWriter();
445
+ proto.scanoss.api.common.v2.EchoResponse.serializeBinaryToWriter(this, writer);
446
+ return writer.getResultBuffer();
447
+ };
448
+ /**
449
+ * Serializes the given message to binary data (in protobuf wire
450
+ * format), writing to the given BinaryWriter.
451
+ * @param {!proto.scanoss.api.common.v2.EchoResponse} message
452
+ * @param {!jspb.BinaryWriter} writer
453
+ * @suppress {unusedLocalVariables} f is only used for nested messages
454
+ */
455
+ proto.scanoss.api.common.v2.EchoResponse.serializeBinaryToWriter = function (message, writer) {
456
+ var f = undefined;
457
+ f = message.getMessage();
458
+ if (f.length > 0) {
459
+ writer.writeString(1, f);
460
+ }
461
+ };
462
+ /**
463
+ * optional string message = 1;
464
+ * @return {string}
465
+ */
466
+ proto.scanoss.api.common.v2.EchoResponse.prototype.getMessage = function () {
467
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
468
+ };
469
+ /**
470
+ * @param {string} value
471
+ * @return {!proto.scanoss.api.common.v2.EchoResponse} returns this
472
+ */
473
+ proto.scanoss.api.common.v2.EchoResponse.prototype.setMessage = function (value) {
474
+ return jspb.Message.setProto3StringField(this, 1, value);
475
+ };
476
+ /**
477
+ * List of repeated fields within this message type.
478
+ * @private {!Array<number>}
479
+ * @const
480
+ */
481
+ proto.scanoss.api.common.v2.PurlRequest.repeatedFields_ = [1];
482
+ if (jspb.Message.GENERATE_TO_OBJECT) {
483
+ /**
484
+ * Creates an object representation of this proto.
485
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
486
+ * Optional fields that are not set will be set to undefined.
487
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
488
+ * For the list of reserved names please see:
489
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
490
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
491
+ * JSPB instance for transitional soy proto support:
492
+ * http://goto/soy-param-migration
493
+ * @return {!Object}
494
+ */
495
+ proto.scanoss.api.common.v2.PurlRequest.prototype.toObject = function (opt_includeInstance) {
496
+ return proto.scanoss.api.common.v2.PurlRequest.toObject(opt_includeInstance, this);
497
+ };
498
+ /**
499
+ * Static version of the {@see toObject} method.
500
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
501
+ * the JSPB instance for transitional soy proto support:
502
+ * http://goto/soy-param-migration
503
+ * @param {!proto.scanoss.api.common.v2.PurlRequest} msg The msg instance to transform.
504
+ * @return {!Object}
505
+ * @suppress {unusedLocalVariables} f is only used for nested messages
506
+ */
507
+ proto.scanoss.api.common.v2.PurlRequest.toObject = function (includeInstance, msg) {
508
+ var f, obj = {
509
+ purlsList: jspb.Message.toObjectList(msg.getPurlsList(), proto.scanoss.api.common.v2.PurlRequest.Purls.toObject, includeInstance)
510
+ };
511
+ if (includeInstance) {
512
+ obj.$jspbMessageInstance = msg;
513
+ }
514
+ return obj;
515
+ };
516
+ }
517
+ /**
518
+ * Deserializes binary data (in protobuf wire format).
519
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
520
+ * @return {!proto.scanoss.api.common.v2.PurlRequest}
521
+ */
522
+ proto.scanoss.api.common.v2.PurlRequest.deserializeBinary = function (bytes) {
523
+ var reader = new jspb.BinaryReader(bytes);
524
+ var msg = new proto.scanoss.api.common.v2.PurlRequest;
525
+ return proto.scanoss.api.common.v2.PurlRequest.deserializeBinaryFromReader(msg, reader);
526
+ };
527
+ /**
528
+ * Deserializes binary data (in protobuf wire format) from the
529
+ * given reader into the given message object.
530
+ * @param {!proto.scanoss.api.common.v2.PurlRequest} msg The message object to deserialize into.
531
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
532
+ * @return {!proto.scanoss.api.common.v2.PurlRequest}
533
+ */
534
+ proto.scanoss.api.common.v2.PurlRequest.deserializeBinaryFromReader = function (msg, reader) {
535
+ while (reader.nextField()) {
536
+ if (reader.isEndGroup()) {
537
+ break;
538
+ }
539
+ var field = reader.getFieldNumber();
540
+ switch (field) {
541
+ case 1:
542
+ var value = new proto.scanoss.api.common.v2.PurlRequest.Purls;
543
+ reader.readMessage(value, proto.scanoss.api.common.v2.PurlRequest.Purls.deserializeBinaryFromReader);
544
+ msg.addPurls(value);
545
+ break;
546
+ default:
547
+ reader.skipField();
548
+ break;
549
+ }
550
+ }
551
+ return msg;
552
+ };
553
+ /**
554
+ * Serializes the message to binary data (in protobuf wire format).
555
+ * @return {!Uint8Array}
556
+ */
557
+ proto.scanoss.api.common.v2.PurlRequest.prototype.serializeBinary = function () {
558
+ var writer = new jspb.BinaryWriter();
559
+ proto.scanoss.api.common.v2.PurlRequest.serializeBinaryToWriter(this, writer);
560
+ return writer.getResultBuffer();
561
+ };
562
+ /**
563
+ * Serializes the given message to binary data (in protobuf wire
564
+ * format), writing to the given BinaryWriter.
565
+ * @param {!proto.scanoss.api.common.v2.PurlRequest} message
566
+ * @param {!jspb.BinaryWriter} writer
567
+ * @suppress {unusedLocalVariables} f is only used for nested messages
568
+ */
569
+ proto.scanoss.api.common.v2.PurlRequest.serializeBinaryToWriter = function (message, writer) {
570
+ var f = undefined;
571
+ f = message.getPurlsList();
572
+ if (f.length > 0) {
573
+ writer.writeRepeatedMessage(1, f, proto.scanoss.api.common.v2.PurlRequest.Purls.serializeBinaryToWriter);
574
+ }
575
+ };
576
+ if (jspb.Message.GENERATE_TO_OBJECT) {
577
+ /**
578
+ * Creates an object representation of this proto.
579
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
580
+ * Optional fields that are not set will be set to undefined.
581
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
582
+ * For the list of reserved names please see:
583
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
584
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
585
+ * JSPB instance for transitional soy proto support:
586
+ * http://goto/soy-param-migration
587
+ * @return {!Object}
588
+ */
589
+ proto.scanoss.api.common.v2.PurlRequest.Purls.prototype.toObject = function (opt_includeInstance) {
590
+ return proto.scanoss.api.common.v2.PurlRequest.Purls.toObject(opt_includeInstance, this);
591
+ };
592
+ /**
593
+ * Static version of the {@see toObject} method.
594
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
595
+ * the JSPB instance for transitional soy proto support:
596
+ * http://goto/soy-param-migration
597
+ * @param {!proto.scanoss.api.common.v2.PurlRequest.Purls} msg The msg instance to transform.
598
+ * @return {!Object}
599
+ * @suppress {unusedLocalVariables} f is only used for nested messages
600
+ */
601
+ proto.scanoss.api.common.v2.PurlRequest.Purls.toObject = function (includeInstance, msg) {
602
+ var f, obj = {
603
+ purl: jspb.Message.getFieldWithDefault(msg, 1, ""),
604
+ requirement: jspb.Message.getFieldWithDefault(msg, 2, "")
605
+ };
606
+ if (includeInstance) {
607
+ obj.$jspbMessageInstance = msg;
608
+ }
609
+ return obj;
610
+ };
611
+ }
612
+ /**
613
+ * Deserializes binary data (in protobuf wire format).
614
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
615
+ * @return {!proto.scanoss.api.common.v2.PurlRequest.Purls}
616
+ */
617
+ proto.scanoss.api.common.v2.PurlRequest.Purls.deserializeBinary = function (bytes) {
618
+ var reader = new jspb.BinaryReader(bytes);
619
+ var msg = new proto.scanoss.api.common.v2.PurlRequest.Purls;
620
+ return proto.scanoss.api.common.v2.PurlRequest.Purls.deserializeBinaryFromReader(msg, reader);
621
+ };
622
+ /**
623
+ * Deserializes binary data (in protobuf wire format) from the
624
+ * given reader into the given message object.
625
+ * @param {!proto.scanoss.api.common.v2.PurlRequest.Purls} msg The message object to deserialize into.
626
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
627
+ * @return {!proto.scanoss.api.common.v2.PurlRequest.Purls}
628
+ */
629
+ proto.scanoss.api.common.v2.PurlRequest.Purls.deserializeBinaryFromReader = function (msg, reader) {
630
+ while (reader.nextField()) {
631
+ if (reader.isEndGroup()) {
632
+ break;
633
+ }
634
+ var field = reader.getFieldNumber();
635
+ switch (field) {
636
+ case 1:
637
+ var value = /** @type {string} */ (reader.readString());
638
+ msg.setPurl(value);
639
+ break;
640
+ case 2:
641
+ var value = /** @type {string} */ (reader.readString());
642
+ msg.setRequirement(value);
643
+ break;
644
+ default:
645
+ reader.skipField();
646
+ break;
647
+ }
648
+ }
649
+ return msg;
650
+ };
651
+ /**
652
+ * Serializes the message to binary data (in protobuf wire format).
653
+ * @return {!Uint8Array}
654
+ */
655
+ proto.scanoss.api.common.v2.PurlRequest.Purls.prototype.serializeBinary = function () {
656
+ var writer = new jspb.BinaryWriter();
657
+ proto.scanoss.api.common.v2.PurlRequest.Purls.serializeBinaryToWriter(this, writer);
658
+ return writer.getResultBuffer();
659
+ };
660
+ /**
661
+ * Serializes the given message to binary data (in protobuf wire
662
+ * format), writing to the given BinaryWriter.
663
+ * @param {!proto.scanoss.api.common.v2.PurlRequest.Purls} message
664
+ * @param {!jspb.BinaryWriter} writer
665
+ * @suppress {unusedLocalVariables} f is only used for nested messages
666
+ */
667
+ proto.scanoss.api.common.v2.PurlRequest.Purls.serializeBinaryToWriter = function (message, writer) {
668
+ var f = undefined;
669
+ f = message.getPurl();
670
+ if (f.length > 0) {
671
+ writer.writeString(1, f);
672
+ }
673
+ f = message.getRequirement();
674
+ if (f.length > 0) {
675
+ writer.writeString(2, f);
676
+ }
677
+ };
678
+ /**
679
+ * optional string purl = 1;
680
+ * @return {string}
681
+ */
682
+ proto.scanoss.api.common.v2.PurlRequest.Purls.prototype.getPurl = function () {
683
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
684
+ };
685
+ /**
686
+ * @param {string} value
687
+ * @return {!proto.scanoss.api.common.v2.PurlRequest.Purls} returns this
688
+ */
689
+ proto.scanoss.api.common.v2.PurlRequest.Purls.prototype.setPurl = function (value) {
690
+ return jspb.Message.setProto3StringField(this, 1, value);
691
+ };
692
+ /**
693
+ * optional string requirement = 2;
694
+ * @return {string}
695
+ */
696
+ proto.scanoss.api.common.v2.PurlRequest.Purls.prototype.getRequirement = function () {
697
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
698
+ };
699
+ /**
700
+ * @param {string} value
701
+ * @return {!proto.scanoss.api.common.v2.PurlRequest.Purls} returns this
702
+ */
703
+ proto.scanoss.api.common.v2.PurlRequest.Purls.prototype.setRequirement = function (value) {
704
+ return jspb.Message.setProto3StringField(this, 2, value);
705
+ };
706
+ /**
707
+ * repeated Purls purls = 1;
708
+ * @return {!Array<!proto.scanoss.api.common.v2.PurlRequest.Purls>}
709
+ */
710
+ proto.scanoss.api.common.v2.PurlRequest.prototype.getPurlsList = function () {
711
+ return /** @type{!Array<!proto.scanoss.api.common.v2.PurlRequest.Purls>} */ (jspb.Message.getRepeatedWrapperField(this, proto.scanoss.api.common.v2.PurlRequest.Purls, 1));
712
+ };
713
+ /**
714
+ * @param {!Array<!proto.scanoss.api.common.v2.PurlRequest.Purls>} value
715
+ * @return {!proto.scanoss.api.common.v2.PurlRequest} returns this
716
+ */
717
+ proto.scanoss.api.common.v2.PurlRequest.prototype.setPurlsList = function (value) {
718
+ return jspb.Message.setRepeatedWrapperField(this, 1, value);
719
+ };
720
+ /**
721
+ * @param {!proto.scanoss.api.common.v2.PurlRequest.Purls=} opt_value
722
+ * @param {number=} opt_index
723
+ * @return {!proto.scanoss.api.common.v2.PurlRequest.Purls}
724
+ */
725
+ proto.scanoss.api.common.v2.PurlRequest.prototype.addPurls = function (opt_value, opt_index) {
726
+ return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.scanoss.api.common.v2.PurlRequest.Purls, opt_index);
727
+ };
728
+ /**
729
+ * Clears the list making it empty but non-null.
730
+ * @return {!proto.scanoss.api.common.v2.PurlRequest} returns this
731
+ */
732
+ proto.scanoss.api.common.v2.PurlRequest.prototype.clearPurlsList = function () {
733
+ return this.setPurlsList([]);
734
+ };
735
+ /**
736
+ * @enum {number}
737
+ */
738
+ proto.scanoss.api.common.v2.StatusCode = {
739
+ UNSPECIFIED: 0,
740
+ SUCCESS: 1,
741
+ SUCCEEDED_WITH_WARNINGS: 2,
742
+ WARNING: 3,
743
+ FAILED: 4
744
+ };
745
+ goog.object.extend(exports, proto.scanoss.api.common.v2);
746
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nhbm9zcy1jb21tb25fcGIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvc2RrL1NlcnZpY2VzL0dycGMvc2Nhbm9zcy9hcGkvY29tbW9uL3YyL3NjYW5vc3MtY29tbW9uX3BiLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRDtBQUNyRDs7Ozs7OztHQU9HO0FBQ0gsaUNBQWlDO0FBQ2pDLG9CQUFvQjtBQUNwQixjQUFjO0FBRWQsSUFBSSxJQUFJLEdBQUcsT0FBTyxDQUFDLGlCQUFpQixDQUFDLENBQUM7QUFDdEMsSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDO0FBQ2hCLElBQUksTUFBTSxHQUNOLENBQUMsT0FBTyxVQUFVLEtBQUssV0FBVyxJQUFJLFVBQVUsQ0FBQztJQUNqRCxDQUFDLE9BQU8sTUFBTSxLQUFLLFdBQVcsSUFBSSxNQUFNLENBQUM7SUFDekMsQ0FBQyxPQUFPLE1BQU0sS0FBSyxXQUFXLElBQUksTUFBTSxDQUFDO0lBQ3pDLENBQUMsT0FBTyxJQUFJLEtBQUssV0FBVyxJQUFJLElBQUksQ0FBQztJQUNyQyxDQUFDLGNBQWMsT0FBTyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ3pDLFFBQVEsQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDO0FBRTlCLElBQUksQ0FBQyxZQUFZLENBQUMseUNBQXlDLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQzNFLElBQUksQ0FBQyxZQUFZLENBQUMsMENBQTBDLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQzVFLElBQUksQ0FBQyxZQUFZLENBQUMseUNBQXlDLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQzNFLElBQUksQ0FBQyxZQUFZLENBQUMsK0NBQStDLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQ2pGLElBQUksQ0FBQyxZQUFZLENBQUMsd0NBQXdDLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQzFFLElBQUksQ0FBQyxZQUFZLENBQUMsNENBQTRDLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQzlFOzs7Ozs7Ozs7R0FTRztBQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsY0FBYyxHQUFHLFVBQVMsUUFBUTtJQUM1RCxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsUUFBUSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDN0QsQ0FBQyxDQUFDO0FBQ0YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7QUFDeEUsSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsUUFBUSxFQUFFO0lBQzNCOzs7T0FHRztJQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsY0FBYyxDQUFDLFdBQVcsR0FBRyw0Q0FBNEMsQ0FBQztDQUN2RztBQUNEOzs7Ozs7Ozs7R0FTRztBQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsV0FBVyxHQUFHLFVBQVMsUUFBUTtJQUN6RCxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsUUFBUSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDN0QsQ0FBQyxDQUFDO0FBQ0YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7QUFDckUsSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsUUFBUSxFQUFFO0lBQzNCOzs7T0FHRztJQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLFdBQVcsR0FBRyx5Q0FBeUMsQ0FBQztDQUNqRztBQUNEOzs7Ozs7Ozs7R0FTRztBQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsWUFBWSxHQUFHLFVBQVMsUUFBUTtJQUMxRCxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsUUFBUSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDN0QsQ0FBQyxDQUFDO0FBQ0YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7QUFDdEUsSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsUUFBUSxFQUFFO0lBQzNCOzs7T0FHRztJQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLFdBQVcsR0FBRywwQ0FBMEMsQ0FBQztDQUNuRztBQUNEOzs7Ozs7Ozs7R0FTRztBQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsV0FBVyxHQUFHLFVBQVMsUUFBUTtJQUN6RCxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsUUFBUSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDaEgsQ0FBQyxDQUFDO0FBQ0YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7QUFDckUsSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsUUFBUSxFQUFFO0lBQzNCOzs7T0FHRztJQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLFdBQVcsR0FBRyx5Q0FBeUMsQ0FBQztDQUNqRztBQUNEOzs7Ozs7Ozs7R0FTRztBQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLEtBQUssR0FBRyxVQUFTLFFBQVE7SUFDL0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0FBQzdELENBQUMsQ0FBQztBQUNGLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUMzRSxJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxRQUFRLEVBQUU7SUFDM0I7OztPQUdHO0lBQ0gsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLFdBQVcsR0FBRywrQ0FBK0MsQ0FBQztDQUM3RztBQUlELElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsRUFBRTtJQUNyQzs7Ozs7Ozs7Ozs7T0FXRztJQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxRQUFRLEdBQUcsVUFBUyxtQkFBbUI7UUFDMUYsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDeEYsQ0FBQyxDQUFDO0lBR0Y7Ozs7Ozs7O09BUUc7SUFDSCxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEdBQUcsVUFBUyxlQUFlLEVBQUUsR0FBRztRQUNqRixJQUFJLENBQUMsRUFBRSxHQUFHLEdBQUc7WUFDWCxNQUFNLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNuRCxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztTQUN0RCxDQUFDO1FBRUYsSUFBSSxlQUFlLEVBQUU7WUFDbkIsR0FBRyxDQUFDLG9CQUFvQixHQUFHLEdBQUcsQ0FBQztTQUNoQztRQUNELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQyxDQUFDO0NBQ0Q7QUFHRDs7OztHQUlHO0FBQ0gsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxjQUFjLENBQUMsaUJBQWlCLEdBQUcsVUFBUyxLQUFLO0lBQzNFLElBQUksTUFBTSxHQUFHLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxQyxJQUFJLEdBQUcsR0FBRyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsY0FBYyxDQUFDO0lBQ3pELE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxjQUFjLENBQUMsMkJBQTJCLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQzdGLENBQUMsQ0FBQztBQUdGOzs7Ozs7R0FNRztBQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsY0FBYyxDQUFDLDJCQUEyQixHQUFHLFVBQVMsR0FBRyxFQUFFLE1BQU07SUFDM0YsT0FBTyxNQUFNLENBQUMsU0FBUyxFQUFFLEVBQUU7UUFDekIsSUFBSSxNQUFNLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDdkIsTUFBTTtTQUNQO1FBQ0QsSUFBSSxLQUFLLEdBQUcsTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3BDLFFBQVEsS0FBSyxFQUFFO1lBQ2YsS0FBSyxDQUFDO2dCQUNKLElBQUksS0FBSyxHQUFHLHNEQUFzRCxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7Z0JBQ3ZGLEdBQUcsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3JCLE1BQU07WUFDUixLQUFLLENBQUM7Z0JBQ0osSUFBSSxLQUFLLEdBQUcscUJBQXFCLENBQUMsQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztnQkFDeEQsR0FBRyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDdEIsTUFBTTtZQUNSO2dCQUNFLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQztnQkFDbkIsTUFBTTtTQUNQO0tBQ0Y7SUFDRCxPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUMsQ0FBQztBQUdGOzs7R0FHRztBQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxlQUFlLEdBQUc7SUFDckUsSUFBSSxNQUFNLEdBQUcsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDckMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxjQUFjLENBQUMsdUJBQXVCLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2pGLE9BQU8sTUFBTSxDQUFDLGVBQWUsRUFBRSxDQUFDO0FBQ2xDLENBQUMsQ0FBQztBQUdGOzs7Ozs7R0FNRztBQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsY0FBYyxDQUFDLHVCQUF1QixHQUFHLFVBQVMsT0FBTyxFQUFFLE1BQU07SUFDM0YsSUFBSSxDQUFDLEdBQUcsU0FBUyxDQUFDO0lBQ2xCLENBQUMsR0FBRyxPQUFPLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDeEIsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFO1FBQ2IsTUFBTSxDQUFDLFNBQVMsQ0FDZCxDQUFDLEVBQ0QsQ0FBQyxDQUNGLENBQUM7S0FDSDtJQUNELENBQUMsR0FBRyxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDekIsSUFBSSxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtRQUNoQixNQUFNLENBQUMsV0FBVyxDQUNoQixDQUFDLEVBQ0QsQ0FBQyxDQUNGLENBQUM7S0FDSDtBQUNILENBQUMsQ0FBQztBQUdGOzs7R0FHRztBQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxTQUFTLEdBQUc7SUFDL0QsT0FBTyxzREFBc0QsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQy9HLENBQUMsQ0FBQztBQUdGOzs7R0FHRztBQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxTQUFTLEdBQUcsVUFBUyxLQUFLO0lBQzdFLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO0FBQ3pELENBQUMsQ0FBQztBQUdGOzs7R0FHRztBQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxVQUFVLEdBQUc7SUFDaEUsT0FBTyxxQkFBcUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQy9FLENBQUMsQ0FBQztBQUdGOzs7R0FHRztBQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxVQUFVLEdBQUcsVUFBUyxLQUFLO0lBQzlFLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO0FBQzNELENBQUMsQ0FBQztBQU1GLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsRUFBRTtJQUNyQzs7Ozs7Ozs7Ozs7T0FXRztJQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxRQUFRLEdBQUcsVUFBUyxtQkFBbUI7UUFDdkYsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDckYsQ0FBQyxDQUFDO0lBR0Y7Ozs7Ozs7O09BUUc7SUFDSCxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEdBQUcsVUFBUyxlQUFlLEVBQUUsR0FBRztRQUM5RSxJQUFJLENBQUMsRUFBRSxHQUFHLEdBQUc7WUFDWCxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztTQUN0RCxDQUFDO1FBRUYsSUFBSSxlQUFlLEVBQUU7WUFDbkIsR0FBRyxDQUFDLG9CQUFvQixHQUFHLEdBQUcsQ0FBQztTQUNoQztRQUNELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQyxDQUFDO0NBQ0Q7QUFHRDs7OztHQUlHO0FBQ0gsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsaUJBQWlCLEdBQUcsVUFBUyxLQUFLO0lBQ3hFLElBQUksTUFBTSxHQUFHLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxQyxJQUFJLEdBQUcsR0FBRyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDO0lBQ3RELE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsMkJBQTJCLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQzFGLENBQUMsQ0FBQztBQUdGOzs7Ozs7R0FNRztBQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLDJCQUEyQixHQUFHLFVBQVMsR0FBRyxFQUFFLE1BQU07SUFDeEYsT0FBTyxNQUFNLENBQUMsU0FBUyxFQUFFLEVBQUU7UUFDekIsSUFBSSxNQUFNLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDdkIsTUFBTTtTQUNQO1FBQ0QsSUFBSSxLQUFLLEdBQUcsTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3BDLFFBQVEsS0FBSyxFQUFFO1lBQ2YsS0FBSyxDQUFDO2dCQUNKLElBQUksS0FBSyxHQUFHLHFCQUFxQixDQUFDLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7Z0JBQ3hELEdBQUcsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3RCLE1BQU07WUFDUjtnQkFDRSxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUM7Z0JBQ25CLE1BQU07U0FDUDtLQUNGO0lBQ0QsT0FBTyxHQUFHLENBQUM7QUFDYixDQUFDLENBQUM7QUFHRjs7O0dBR0c7QUFDSCxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsZUFBZSxHQUFHO0lBQ2xFLElBQUksTUFBTSxHQUFHLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3JDLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLHVCQUF1QixDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUM5RSxPQUFPLE1BQU0sQ0FBQyxlQUFlLEVBQUUsQ0FBQztBQUNsQyxDQUFDLENBQUM7QUFHRjs7Ozs7O0dBTUc7QUFDSCxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyx1QkFBdUIsR0FBRyxVQUFTLE9BQU8sRUFBRSxNQUFNO0lBQ3hGLElBQUksQ0FBQyxHQUFHLFNBQVMsQ0FBQztJQUNsQixDQUFDLEdBQUcsT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3pCLElBQUksQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7UUFDaEIsTUFBTSxDQUFDLFdBQVcsQ0FDaEIsQ0FBQyxFQUNELENBQUMsQ0FDRixDQUFDO0tBQ0g7QUFDSCxDQUFDLENBQUM7QUFHRjs7O0dBR0c7QUFDSCxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsVUFBVSxHQUFHO0lBQzdELE9BQU8scUJBQXFCLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUMvRSxDQUFDLENBQUM7QUFHRjs7O0dBR0c7QUFDSCxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsVUFBVSxHQUFHLFVBQVMsS0FBSztJQUMzRSxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsb0JBQW9CLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztBQUMzRCxDQUFDLENBQUM7QUFNRixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsa0JBQWtCLEVBQUU7SUFDckM7Ozs7Ozs7Ozs7O09BV0c7SUFDSCxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsUUFBUSxHQUFHLFVBQVMsbUJBQW1CO1FBQ3hGLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLG1CQUFtQixFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3RGLENBQUMsQ0FBQztJQUdGOzs7Ozs7OztPQVFHO0lBQ0gsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxHQUFHLFVBQVMsZUFBZSxFQUFFLEdBQUc7UUFDL0UsSUFBSSxDQUFDLEVBQUUsR0FBRyxHQUFHO1lBQ1gsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7U0FDdEQsQ0FBQztRQUVGLElBQUksZUFBZSxFQUFFO1lBQ25CLEdBQUcsQ0FBQyxvQkFBb0IsR0FBRyxHQUFHLENBQUM7U0FDaEM7UUFDRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUMsQ0FBQztDQUNEO0FBR0Q7Ozs7R0FJRztBQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLGlCQUFpQixHQUFHLFVBQVMsS0FBSztJQUN6RSxJQUFJLE1BQU0sR0FBRyxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUMsSUFBSSxHQUFHLEdBQUcsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQztJQUN2RCxPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLDJCQUEyQixDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztBQUMzRixDQUFDLENBQUM7QUFHRjs7Ozs7O0dBTUc7QUFDSCxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQywyQkFBMkIsR0FBRyxVQUFTLEdBQUcsRUFBRSxNQUFNO0lBQ3pGLE9BQU8sTUFBTSxDQUFDLFNBQVMsRUFBRSxFQUFFO1FBQ3pCLElBQUksTUFBTSxDQUFDLFVBQVUsRUFBRSxFQUFFO1lBQ3ZCLE1BQU07U0FDUDtRQUNELElBQUksS0FBSyxHQUFHLE1BQU0sQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUNwQyxRQUFRLEtBQUssRUFBRTtZQUNmLEtBQUssQ0FBQztnQkFDSixJQUFJLEtBQUssR0FBRyxxQkFBcUIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO2dCQUN4RCxHQUFHLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUN0QixNQUFNO1lBQ1I7Z0JBQ0UsTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUNuQixNQUFNO1NBQ1A7S0FDRjtJQUNELE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQyxDQUFDO0FBR0Y7OztHQUdHO0FBQ0gsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLGVBQWUsR0FBRztJQUNuRSxJQUFJLE1BQU0sR0FBRyxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNyQyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDL0UsT0FBTyxNQUFNLENBQUMsZUFBZSxFQUFFLENBQUM7QUFDbEMsQ0FBQyxDQUFDO0FBR0Y7Ozs7OztHQU1HO0FBQ0gsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsdUJBQXVCLEdBQUcsVUFBUyxPQUFPLEVBQUUsTUFBTTtJQUN6RixJQUFJLENBQUMsR0FBRyxTQUFTLENBQUM7SUFDbEIsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN6QixJQUFJLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1FBQ2hCLE1BQU0sQ0FBQyxXQUFXLENBQ2hCLENBQUMsRUFDRCxDQUFDLENBQ0YsQ0FBQztLQUNIO0FBQ0gsQ0FBQyxDQUFDO0FBR0Y7OztHQUdHO0FBQ0gsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLFVBQVUsR0FBRztJQUM5RCxPQUFPLHFCQUFxQixDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFDL0UsQ0FBQyxDQUFDO0FBR0Y7OztHQUdHO0FBQ0gsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLFVBQVUsR0FBRyxVQUFTLEtBQUs7SUFDNUUsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLG9CQUFvQixDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7QUFDM0QsQ0FBQyxDQUFDO0FBSUY7Ozs7R0FJRztBQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLGVBQWUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBSTlELElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsRUFBRTtJQUNyQzs7Ozs7Ozs7Ozs7T0FXRztJQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxRQUFRLEdBQUcsVUFBUyxtQkFBbUI7UUFDdkYsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDckYsQ0FBQyxDQUFDO0lBR0Y7Ozs7Ozs7O09BUUc7SUFDSCxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEdBQUcsVUFBUyxlQUFlLEVBQUUsR0FBRztRQUM5RSxJQUFJLENBQUMsRUFBRSxHQUFHLEdBQUc7WUFDWCxTQUFTLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxFQUN2RCxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLGVBQWUsQ0FBQztTQUN6RSxDQUFDO1FBRUYsSUFBSSxlQUFlLEVBQUU7WUFDbkIsR0FBRyxDQUFDLG9CQUFvQixHQUFHLEdBQUcsQ0FBQztTQUNoQztRQUNELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQyxDQUFDO0NBQ0Q7QUFHRDs7OztHQUlHO0FBQ0gsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsaUJBQWlCLEdBQUcsVUFBUyxLQUFLO0lBQ3hFLElBQUksTUFBTSxHQUFHLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxQyxJQUFJLEdBQUcsR0FBRyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDO0lBQ3RELE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsMkJBQTJCLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQzFGLENBQUMsQ0FBQztBQUdGOzs7Ozs7R0FNRztBQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLDJCQUEyQixHQUFHLFVBQVMsR0FBRyxFQUFFLE1BQU07SUFDeEYsT0FBTyxNQUFNLENBQUMsU0FBUyxFQUFFLEVBQUU7UUFDekIsSUFBSSxNQUFNLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDdkIsTUFBTTtTQUNQO1FBQ0QsSUFBSSxLQUFLLEdBQUcsTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3BDLFFBQVEsS0FBSyxFQUFFO1lBQ2YsS0FBSyxDQUFDO2dCQUNKLElBQUksS0FBSyxHQUFHLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDO2dCQUM5RCxNQUFNLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsMkJBQTJCLENBQUMsQ0FBQztnQkFDcEcsR0FBRyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDcEIsTUFBTTtZQUNSO2dCQUNFLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQztnQkFDbkIsTUFBTTtTQUNQO0tBQ0Y7SUFDRCxPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUMsQ0FBQztBQUdGOzs7R0FHRztBQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxlQUFlLEdBQUc7SUFDbEUsSUFBSSxNQUFNLEdBQUcsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDckMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsdUJBQXVCLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQzlFLE9BQU8sTUFBTSxDQUFDLGVBQWUsRUFBRSxDQUFDO0FBQ2xDLENBQUMsQ0FBQztBQUdGOzs7Ozs7R0FNRztBQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLHVCQUF1QixHQUFHLFVBQVMsT0FBTyxFQUFFLE1BQU07SUFDeEYsSUFBSSxDQUFDLEdBQUcsU0FBUyxDQUFDO0lBQ2xCLENBQUMsR0FBRyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDM0IsSUFBSSxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtRQUNoQixNQUFNLENBQUMsb0JBQW9CLENBQ3pCLENBQUMsRUFDRCxDQUFDLEVBQ0QsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLHVCQUF1QixDQUN0RSxDQUFDO0tBQ0g7QUFDSCxDQUFDLENBQUM7QUFNRixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsa0JBQWtCLEVBQUU7SUFDckM7Ozs7Ozs7Ozs7O09BV0c7SUFDSCxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLFFBQVEsR0FBRyxVQUFTLG1CQUFtQjtRQUM3RixPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDM0YsQ0FBQyxDQUFDO0lBR0Y7Ozs7Ozs7O09BUUc7SUFDSCxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLFVBQVMsZUFBZSxFQUFFLEdBQUc7UUFDcEYsSUFBSSxDQUFDLEVBQUUsR0FBRyxHQUFHO1lBQ1gsSUFBSSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDbEQsV0FBVyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7U0FDMUQsQ0FBQztRQUVGLElBQUksZUFBZSxFQUFFO1lBQ25CLEdBQUcsQ0FBQyxvQkFBb0IsR0FBRyxHQUFHLENBQUM7U0FDaEM7UUFDRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUMsQ0FBQztDQUNEO0FBR0Q7Ozs7R0FJRztBQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsR0FBRyxVQUFTLEtBQUs7SUFDOUUsSUFBSSxNQUFNLEdBQUcsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFDLElBQUksR0FBRyxHQUFHLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDO0lBQzVELE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLDJCQUEyQixDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztBQUNoRyxDQUFDLENBQUM7QUFHRjs7Ozs7O0dBTUc7QUFDSCxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsMkJBQTJCLEdBQUcsVUFBUyxHQUFHLEVBQUUsTUFBTTtJQUM5RixPQUFPLE1BQU0sQ0FBQyxTQUFTLEVBQUUsRUFBRTtRQUN6QixJQUFJLE1BQU0sQ0FBQyxVQUFVLEVBQUUsRUFBRTtZQUN2QixNQUFNO1NBQ1A7UUFDRCxJQUFJLEtBQUssR0FBRyxNQUFNLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDcEMsUUFBUSxLQUFLLEVBQUU7WUFDZixLQUFLLENBQUM7Z0JBQ0osSUFBSSxLQUFLLEdBQUcscUJBQXFCLENBQUMsQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztnQkFDeEQsR0FBRyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDbkIsTUFBTTtZQUNSLEtBQUssQ0FBQztnQkFDSixJQUFJLEtBQUssR0FBRyxxQkFBcUIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO2dCQUN4RCxHQUFHLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUMxQixNQUFNO1lBQ1I7Z0JBQ0UsTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUNuQixNQUFNO1NBQ1A7S0FDRjtJQUNELE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQyxDQUFDO0FBR0Y7OztHQUdHO0FBQ0gsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxlQUFlLEdBQUc7SUFDeEUsSUFBSSxNQUFNLEdBQUcsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDckMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLHVCQUF1QixDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNwRixPQUFPLE1BQU0sQ0FBQyxlQUFlLEVBQUUsQ0FBQztBQUNsQyxDQUFDLENBQUM7QUFHRjs7Ozs7O0dBTUc7QUFDSCxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsdUJBQXVCLEdBQUcsVUFBUyxPQUFPLEVBQUUsTUFBTTtJQUM5RixJQUFJLENBQUMsR0FBRyxTQUFTLENBQUM7SUFDbEIsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN0QixJQUFJLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1FBQ2hCLE1BQU0sQ0FBQyxXQUFXLENBQ2hCLENBQUMsRUFDRCxDQUFDLENBQ0YsQ0FBQztLQUNIO0lBQ0QsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUM3QixJQUFJLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1FBQ2hCLE1BQU0sQ0FBQyxXQUFXLENBQ2hCLENBQUMsRUFDRCxDQUFDLENBQ0YsQ0FBQztLQUNIO0FBQ0gsQ0FBQyxDQUFDO0FBR0Y7OztHQUdHO0FBQ0gsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxPQUFPLEdBQUc7SUFDaEUsT0FBTyxxQkFBcUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQy9FLENBQUMsQ0FBQztBQUdGOzs7R0FHRztBQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsT0FBTyxHQUFHLFVBQVMsS0FBSztJQUM5RSxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsb0JBQW9CLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztBQUMzRCxDQUFDLENBQUM7QUFHRjs7O0dBR0c7QUFDSCxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLGNBQWMsR0FBRztJQUN2RSxPQUFPLHFCQUFxQixDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFDL0UsQ0FBQyxDQUFDO0FBR0Y7OztHQUdHO0FBQ0gsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxjQUFjLEdBQUcsVUFBUyxLQUFLO0lBQ3JGLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO0FBQzNELENBQUMsQ0FBQztBQUdGOzs7R0FHRztBQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxZQUFZLEdBQUc7SUFDL0QsT0FBTyxvRUFBb0UsQ0FBQyxDQUMxRSxJQUFJLENBQUMsT0FBTyxDQUFDLHVCQUF1QixDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNsRyxDQUFDLENBQUM7QUFHRjs7O0VBR0U7QUFDRixLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsWUFBWSxHQUFHLFVBQVMsS0FBSztJQUM3RSxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsdUJBQXVCLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztBQUM5RCxDQUFDLENBQUM7QUFHRjs7OztHQUlHO0FBQ0gsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLFFBQVEsR0FBRyxVQUFTLFNBQVMsRUFBRSxTQUFTO0lBQ3hGLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7QUFDOUgsQ0FBQyxDQUFDO0FBR0Y7OztHQUdHO0FBQ0gsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLGNBQWMsR0FBRztJQUNqRSxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDL0IsQ0FBQyxDQUFDO0FBR0Y7O0dBRUc7QUFDSCxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFVBQVUsR0FBRztJQUN2QyxXQUFXLEVBQUUsQ0FBQztJQUNkLE9BQU8sRUFBRSxDQUFDO0lBQ1YsdUJBQXVCLEVBQUUsQ0FBQztJQUMxQixPQUFPLEVBQUUsQ0FBQztJQUNWLE1BQU0sRUFBRSxDQUFDO0NBQ1YsQ0FBQztBQUVGLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMifQ==