@projectqai/proto 0.0.36 → 0.0.37
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/device.ts +30 -22
- package/dist/world_pb.d.ts +139 -0
- package/dist/world_pb.js +52 -31
- package/package.json +1 -1
package/device.ts
CHANGED
|
@@ -321,33 +321,41 @@ export async function attach<S extends SchemaProperties>(opts: AttachOptions<S>)
|
|
|
321
321
|
})();
|
|
322
322
|
};
|
|
323
323
|
|
|
324
|
-
// Watch for config changes
|
|
325
|
-
|
|
326
|
-
const stream = client.watchEntities(
|
|
327
|
-
create(ListEntitiesRequestSchema, { filter: create(EntityFilterSchema, { id: entityID }) }),
|
|
328
|
-
...(opts.signal ? [{ signal: opts.signal }] : []),
|
|
329
|
-
);
|
|
324
|
+
// Watch for config changes — retry on transient stream errors
|
|
330
325
|
|
|
331
326
|
try {
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
327
|
+
while (!outerAbort.signal.aborted) {
|
|
328
|
+
const stream = client.watchEntities(
|
|
329
|
+
create(ListEntitiesRequestSchema, { filter: create(EntityFilterSchema, { id: entityID }) }),
|
|
330
|
+
...(opts.signal ? [{ signal: opts.signal }] : []),
|
|
331
|
+
);
|
|
332
|
+
|
|
333
|
+
try {
|
|
334
|
+
for await (const event of stream) {
|
|
335
|
+
if (!event.entity) continue;
|
|
336
|
+
|
|
337
|
+
if (event.t === EntityChange.EntityChangeExpired || event.t === EntityChange.EntityChangeUnobserved) {
|
|
338
|
+
stop();
|
|
339
|
+
continue;
|
|
340
|
+
}
|
|
341
|
+
if (event.t !== EntityChange.EntityChangeUpdated) continue;
|
|
342
|
+
|
|
343
|
+
const e = event.entity;
|
|
344
|
+
if (!e.config) { stop(); continue; }
|
|
345
|
+
if (e.config.version === currentConfigVersion && runningAbort) continue;
|
|
346
|
+
|
|
347
|
+
stop();
|
|
348
|
+
currentConfigVersion = e.config.version;
|
|
349
|
+
start(e);
|
|
350
|
+
}
|
|
351
|
+
break; // clean end of stream
|
|
352
|
+
} catch (err) {
|
|
353
|
+
if (isCanceled(err) || opts.signal?.aborted) break;
|
|
354
|
+
console.error(`watch stream error, reconnecting entity=${entityID}`, err);
|
|
336
355
|
stop();
|
|
337
|
-
|
|
356
|
+
await sleep(5_000, outerAbort.signal);
|
|
338
357
|
}
|
|
339
|
-
if (event.t !== EntityChange.EntityChangeUpdated) continue;
|
|
340
|
-
|
|
341
|
-
const e = event.entity;
|
|
342
|
-
if (!e.config) { stop(); continue; }
|
|
343
|
-
if (e.config.version === currentConfigVersion && runningAbort) continue;
|
|
344
|
-
|
|
345
|
-
stop();
|
|
346
|
-
currentConfigVersion = e.config.version;
|
|
347
|
-
start(e);
|
|
348
358
|
}
|
|
349
|
-
} catch (err) {
|
|
350
|
-
if (!isCanceled(err)) throw err;
|
|
351
359
|
} finally {
|
|
352
360
|
stop();
|
|
353
361
|
outerAbort.abort();
|
package/dist/world_pb.d.ts
CHANGED
|
@@ -1793,6 +1793,11 @@ export declare type DeviceComponent = Message<"world.DeviceComponent"> & {
|
|
|
1793
1793
|
* @generated from field: optional world.MeshtasticDevice meshtastic = 26;
|
|
1794
1794
|
*/
|
|
1795
1795
|
meshtastic?: MeshtasticDevice;
|
|
1796
|
+
|
|
1797
|
+
/**
|
|
1798
|
+
* @generated from field: optional world.BleDevice ble = 27;
|
|
1799
|
+
*/
|
|
1800
|
+
ble?: BleDevice;
|
|
1796
1801
|
};
|
|
1797
1802
|
|
|
1798
1803
|
/**
|
|
@@ -2026,6 +2031,38 @@ export declare type LPWANDevice = Message<"world.LPWANDevice"> & {
|
|
|
2026
2031
|
*/
|
|
2027
2032
|
export declare const LPWANDeviceSchema: GenMessage<LPWANDevice>;
|
|
2028
2033
|
|
|
2034
|
+
/**
|
|
2035
|
+
* @generated from message world.BleDevice
|
|
2036
|
+
*/
|
|
2037
|
+
export declare type BleDevice = Message<"world.BleDevice"> & {
|
|
2038
|
+
/**
|
|
2039
|
+
* MAC address or platform-specific identifier
|
|
2040
|
+
*
|
|
2041
|
+
* @generated from field: optional string address = 1;
|
|
2042
|
+
*/
|
|
2043
|
+
address?: string;
|
|
2044
|
+
|
|
2045
|
+
/**
|
|
2046
|
+
* advertised device name
|
|
2047
|
+
*
|
|
2048
|
+
* @generated from field: optional string name = 2;
|
|
2049
|
+
*/
|
|
2050
|
+
name?: string;
|
|
2051
|
+
|
|
2052
|
+
/**
|
|
2053
|
+
* advertised GATT service UUIDs
|
|
2054
|
+
*
|
|
2055
|
+
* @generated from field: repeated string service_uuids = 4;
|
|
2056
|
+
*/
|
|
2057
|
+
serviceUuids: string[];
|
|
2058
|
+
};
|
|
2059
|
+
|
|
2060
|
+
/**
|
|
2061
|
+
* Describes the message world.BleDevice.
|
|
2062
|
+
* Use `create(BleDeviceSchema)` to create a new message.
|
|
2063
|
+
*/
|
|
2064
|
+
export declare const BleDeviceSchema: GenMessage<BleDevice>;
|
|
2065
|
+
|
|
2029
2066
|
/**
|
|
2030
2067
|
* Configuration pushed onto an entity. The engine delivers entities with
|
|
2031
2068
|
* Config to the matching controller via Reconcile.
|
|
@@ -2315,6 +2352,27 @@ export declare type DeviceFilter = Message<"world.DeviceFilter"> & {
|
|
|
2315
2352
|
* @generated from field: optional string unique_hardware_id = 4;
|
|
2316
2353
|
*/
|
|
2317
2354
|
uniqueHardwareId?: string;
|
|
2355
|
+
|
|
2356
|
+
/**
|
|
2357
|
+
* match device class string (e.g. "usb_serial", "radio")
|
|
2358
|
+
*
|
|
2359
|
+
* @generated from field: optional string device_class = 5;
|
|
2360
|
+
*/
|
|
2361
|
+
deviceClass?: string;
|
|
2362
|
+
|
|
2363
|
+
/**
|
|
2364
|
+
* match BLE device properties
|
|
2365
|
+
*
|
|
2366
|
+
* @generated from field: optional world.BleDeviceFilter ble = 6;
|
|
2367
|
+
*/
|
|
2368
|
+
ble?: BleDeviceFilter;
|
|
2369
|
+
|
|
2370
|
+
/**
|
|
2371
|
+
* match USB device properties
|
|
2372
|
+
*
|
|
2373
|
+
* @generated from field: optional world.UsbDeviceFilter usb = 7;
|
|
2374
|
+
*/
|
|
2375
|
+
usb?: UsbDeviceFilter;
|
|
2318
2376
|
};
|
|
2319
2377
|
|
|
2320
2378
|
/**
|
|
@@ -2323,6 +2381,87 @@ export declare type DeviceFilter = Message<"world.DeviceFilter"> & {
|
|
|
2323
2381
|
*/
|
|
2324
2382
|
export declare const DeviceFilterSchema: GenMessage<DeviceFilter>;
|
|
2325
2383
|
|
|
2384
|
+
/**
|
|
2385
|
+
* Matches against BleDevice fields. All set fields must match.
|
|
2386
|
+
*
|
|
2387
|
+
* @generated from message world.BleDeviceFilter
|
|
2388
|
+
*/
|
|
2389
|
+
export declare type BleDeviceFilter = Message<"world.BleDeviceFilter"> & {
|
|
2390
|
+
/**
|
|
2391
|
+
* @generated from field: optional string address = 1;
|
|
2392
|
+
*/
|
|
2393
|
+
address?: string;
|
|
2394
|
+
|
|
2395
|
+
/**
|
|
2396
|
+
* @generated from field: optional string name = 2;
|
|
2397
|
+
*/
|
|
2398
|
+
name?: string;
|
|
2399
|
+
|
|
2400
|
+
/**
|
|
2401
|
+
* @generated from field: repeated string service_uuids = 4;
|
|
2402
|
+
*/
|
|
2403
|
+
serviceUuids: string[];
|
|
2404
|
+
};
|
|
2405
|
+
|
|
2406
|
+
/**
|
|
2407
|
+
* Describes the message world.BleDeviceFilter.
|
|
2408
|
+
* Use `create(BleDeviceFilterSchema)` to create a new message.
|
|
2409
|
+
*/
|
|
2410
|
+
export declare const BleDeviceFilterSchema: GenMessage<BleDeviceFilter>;
|
|
2411
|
+
|
|
2412
|
+
/**
|
|
2413
|
+
* Matches against UsbDevice fields. All set fields must match.
|
|
2414
|
+
*
|
|
2415
|
+
* @generated from message world.UsbDeviceFilter
|
|
2416
|
+
*/
|
|
2417
|
+
export declare type UsbDeviceFilter = Message<"world.UsbDeviceFilter"> & {
|
|
2418
|
+
/**
|
|
2419
|
+
* @generated from field: optional uint32 vendor_id = 1;
|
|
2420
|
+
*/
|
|
2421
|
+
vendorId?: number;
|
|
2422
|
+
|
|
2423
|
+
/**
|
|
2424
|
+
* @generated from field: optional uint32 product_id = 2;
|
|
2425
|
+
*/
|
|
2426
|
+
productId?: number;
|
|
2427
|
+
|
|
2428
|
+
/**
|
|
2429
|
+
* @generated from field: optional uint32 device_class = 3;
|
|
2430
|
+
*/
|
|
2431
|
+
deviceClass?: number;
|
|
2432
|
+
|
|
2433
|
+
/**
|
|
2434
|
+
* @generated from field: optional uint32 device_subclass = 4;
|
|
2435
|
+
*/
|
|
2436
|
+
deviceSubclass?: number;
|
|
2437
|
+
|
|
2438
|
+
/**
|
|
2439
|
+
* @generated from field: optional uint32 device_protocol = 5;
|
|
2440
|
+
*/
|
|
2441
|
+
deviceProtocol?: number;
|
|
2442
|
+
|
|
2443
|
+
/**
|
|
2444
|
+
* @generated from field: optional string manufacturer_name = 6;
|
|
2445
|
+
*/
|
|
2446
|
+
manufacturerName?: string;
|
|
2447
|
+
|
|
2448
|
+
/**
|
|
2449
|
+
* @generated from field: optional string product_name = 7;
|
|
2450
|
+
*/
|
|
2451
|
+
productName?: string;
|
|
2452
|
+
|
|
2453
|
+
/**
|
|
2454
|
+
* @generated from field: optional string serial_number = 8;
|
|
2455
|
+
*/
|
|
2456
|
+
serialNumber?: string;
|
|
2457
|
+
};
|
|
2458
|
+
|
|
2459
|
+
/**
|
|
2460
|
+
* Describes the message world.UsbDeviceFilter.
|
|
2461
|
+
* Use `create(UsbDeviceFilterSchema)` to create a new message.
|
|
2462
|
+
*/
|
|
2463
|
+
export declare const UsbDeviceFilterSchema: GenMessage<UsbDeviceFilter>;
|
|
2464
|
+
|
|
2326
2465
|
/**
|
|
2327
2466
|
* @generated from message world.ConfigurationFilter
|
|
2328
2467
|
*/
|
package/dist/world_pb.js
CHANGED
|
@@ -11,7 +11,7 @@ import { file_metrics } from "./metrics_pb.js";
|
|
|
11
11
|
* Describes the file world.proto.
|
|
12
12
|
*/
|
|
13
13
|
export const file_world = /*@__PURE__*/
|
|
14
|
-
fileDesc("Cgt3b3JsZC5wcm90bxIFd29ybGQinxEKBkVudGl0eRIKCgJpZBgBIAEoCRISCgVsYWJlbBgCIAEoCUgAiAEBEioKCmNvbnRyb2xsZXIYAyABKAsyES53b3JsZC5Db250cm9sbGVySAGIAQESJgoIbGlmZXRpbWUYBCABKAsyDy53b3JsZC5MaWZldGltZUgCiAEBEiYKCHByaW9yaXR5GAUgASgOMg8ud29ybGQuUHJpb3JpdHlIA4gBARIgCgVsZWFzZRgGIAEoCzIMLndvcmxkLkxlYXNlSASIAQESJAoHcm91dGluZxgHIAEoCzIOLndvcmxkLlJvdXRpbmdIBYgBARIsCgNnZW8YCyABKAsyGi53b3JsZC5HZW9TcGF0aWFsQ29tcG9uZW50SAaIAQESKwoGc3ltYm9sGAwgASgLMhYud29ybGQuU3ltYm9sQ29tcG9uZW50SAeIAQESKwoGY2FtZXJhGA8gASgLMhYud29ybGQuQ2FtZXJhQ29tcG9uZW50SAiIAQESMQoJZGV0ZWN0aW9uGBAgASgLMhkud29ybGQuRGV0ZWN0aW9uQ29tcG9uZW50SAmIAQESLQoHYmVhcmluZxgRIAEoCzIXLndvcmxkLkJlYXJpbmdDb21wb25lbnRICogBARIpCgV0cmFjaxgVIAEoCzIVLndvcmxkLlRyYWNrQ29tcG9uZW50SAuIAQESLQoHbG9jYXRvchgWIAEoCzIXLndvcmxkLkxvY2F0b3JDb21wb25lbnRIDIgBARIzCgpraW5lbWF0aWNzGBggASgLMhoud29ybGQuS2luZW1hdGljc0NvbXBvbmVudEgNiAEBEiwKBXNoYXBlGBkgASgLMhgud29ybGQuR2VvU2hhcGVDb21wb25lbnRIDogBARI7Cg5jbGFzc2lmaWNhdGlvbhgaIAEoCzIeLndvcmxkLkNsYXNzaWZpY2F0aW9uQ29tcG9uZW50SA+IAQESNQoLdHJhbnNwb25kZXIYGyABKAsyGy53b3JsZC5UcmFuc3BvbmRlckNvbXBvbmVudEgQiAEBEjsKDmFkbWluaXN0cmF0aXZlGBwgASgLMh4ud29ybGQuQWRtaW5pc3RyYXRpdmVDb21wb25lbnRIEYgBARI1CgtvcmllbnRhdGlvbhgeIAEoCzIbLndvcmxkLk9yaWVudGF0aW9uQ29tcG9uZW50SBKIAQESMwoKbmF2aWdhdGlvbhgiIAEoCzIaLndvcmxkLk5hdmlnYXRpb25Db21wb25lbnRIE4gBARIpCgVwb3dlchghIAEoCzIVLndvcmxkLlBvd2VyQ29tcG9uZW50SBSIAQESLQoHY2FwdHVyZRgjIAEoCzIXLndvcmxkLkNhcHR1cmVDb21wb25lbnRIFYgBARIvCgh0YXNrYWJsZRgXIAEoCzIYLndvcmxkLlRhc2thYmxlQ29tcG9uZW50SBaIAQESKwoGZGV2aWNlGDIgASgLMhYud29ybGQuRGV2aWNlQ29tcG9uZW50SBeIAQESMgoGY29uZmlnGDMgASgLMh0ud29ybGQuQ29uZmlndXJhdGlvbkNvbXBvbmVudEgYiAEBEjcKDGNvbmZpZ3VyYWJsZRg0IAEoCzIcLndvcmxkLkNvbmZpZ3VyYWJsZUNvbXBvbmVudEgZiAEBEi0KB21pc3Npb24YHyABKAsyFy53b3JsZC5NaXNzaW9uQ29tcG9uZW50SBqIAQESJwoEbGluaxggIAEoCzIULndvcmxkLkxpbmtDb21wb25lbnRIG4gBARIrCgZtZXRyaWMYJCABKAsyFi53b3JsZC5NZXRyaWNDb21wb25lbnRIHIgBARIrCgZzZW5zb3IYJSABKAsyFi53b3JsZC5TZW5zb3JDb21wb25lbnRIHYgBARI0Cgtsb2NhbF9zaGFwZRgdIAEoCzIaLndvcmxkLkxvY2FsU2hhcGVDb21wb25lbnRIHogBARInCgRwb3NlGCYgASgLMhQud29ybGQuUG9zZUNvbXBvbmVudEgfiAEBEjoKDnRhc2tfZXhlY3V0aW9uGCkgASgLMh0ud29ybGQuVGFza0V4ZWN1dGlvbkNvbXBvbmVudEggiAEBEjkKDWludGVyYWN0aXZpdHkYPCABKAsyHS53b3JsZC5JbnRlcmFjdGl2aXR5Q29tcG9uZW50SCGIAQESNAoLdGFyZ2V0X3Bvc2UYPiABKAsyGi53b3JsZC5UYXJnZXRQb3NlQ29tcG9uZW50SCKIAQESJwoEY2hhdBgnIAEoCzIULndvcmxkLkNoYXRDb21wb25lbnRII4gBAUIICgZfbGFiZWxCDQoLX2NvbnRyb2xsZXJCCwoJX2xpZmV0aW1lQgsKCV9wcmlvcml0eUIICgZfbGVhc2VCCgoIX3JvdXRpbmdCBgoEX2dlb0IJCgdfc3ltYm9sQgkKB19jYW1lcmFCDAoKX2RldGVjdGlvbkIKCghfYmVhcmluZ0IICgZfdHJhY2tCCgoIX2xvY2F0b3JCDQoLX2tpbmVtYXRpY3NCCAoGX3NoYXBlQhEKD19jbGFzc2lmaWNhdGlvbkIOCgxfdHJhbnNwb25kZXJCEQoPX2FkbWluaXN0cmF0aXZlQg4KDF9vcmllbnRhdGlvbkINCgtfbmF2aWdhdGlvbkIICgZfcG93ZXJCCgoIX2NhcHR1cmVCCwoJX3Rhc2thYmxlQgkKB19kZXZpY2VCCQoHX2NvbmZpZ0IPCg1fY29uZmlndXJhYmxlQgoKCF9taXNzaW9uQgcKBV9saW5rQgkKB19tZXRyaWNCCQoHX3NlbnNvckIOCgxfbG9jYWxfc2hhcGVCBwoFX3Bvc2VCEQoPX3Rhc2tfZXhlY3V0aW9uQhAKDl9pbnRlcmFjdGl2aXR5Qg4KDF90YXJnZXRfcG9zZUIHCgVfY2hhdEoECAgQCUoECAkQCkoECAoQCyJgCgpDb250cm9sbGVyEg8KAmlkGAEgASgJSACIAQESEQoEbm9kZRgCIAEoCUgBiAEBEhMKBm9yaWdpbhgDIAEoCUgCiAEBQgUKA19pZEIHCgVfbm9kZUIJCgdfb3JpZ2luIlkKBUxlYXNlEhIKCmNvbnRyb2xsZXIYASABKAkSMAoHZXhwaXJlcxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBAUIKCghfZXhwaXJlcyKvAgoITGlmZXRpbWUSLQoEZnJvbRgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBARIuCgV1bnRpbBgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAYgBARIuCgVmcmVzaBgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAogBARIzCgpjb21wb25lbnRzGAQgAygLMh8ud29ybGQuTGlmZXRpbWUuQ29tcG9uZW50c0VudHJ5GkIKD0NvbXBvbmVudHNFbnRyeRILCgNrZXkYASABKAUSHgoFdmFsdWUYAiABKAsyDy53b3JsZC5MaWZldGltZToCOAFCBwoFX2Zyb21CCAoGX3VudGlsQggKBl9mcmVzaCIXCgdDaGFubmVsEgwKBG5hbWUYASABKAkiKwoHUm91dGluZxIgCghjaGFubmVscxgBIAMoCzIOLndvcmxkLkNoYW5uZWwinwEKE0dlb1NwYXRpYWxDb21wb25lbnQSEQoJbG9uZ2l0dWRlGAEgASgBEhAKCGxhdGl0dWRlGAIgASgBEhUKCGFsdGl0dWRlGAMgASgBSACIAQESMAoKY292YXJpYW5jZRgEIAEoCzIXLndvcmxkLkNvdmFyaWFuY2VNYXRyaXhIAYgBAUILCglfYWx0aXR1ZGVCDQoLX2NvdmFyaWFuY2UiJgoPU3ltYm9sQ29tcG9uZW50EhMKC21pbFN0ZDI1MjVDGAEgASgJImIKFkludGVyYWN0aXZpdHlDb21wb25lbnQSEQoEaWNvbhgBIAEoCUgAiAEBEhoKDXJlZmVyZW5jZV91cmwYAyABKAlIAYgBAUIHCgVfaWNvbkIQCg5fcmVmZXJlbmNlX3VybCLKAQoLTWVkaWFTdHJlYW0SDQoFbGFiZWwYASABKAkSCwoDdXJsGAIgASgJEiwKCHByb3RvY29sGAMgASgOMhoud29ybGQuTWVkaWFTdHJlYW1Qcm90b2NvbBIkCgRyb2xlGAkgASgOMhYud29ybGQuTWVkaWFTdHJlYW1Sb2xlEg0KBWNvZGVjGAogASgJEhIKBXdpZHRoGAsgASgFSACIAQESEwoGaGVpZ2h0GAwgASgFSAGIAQFCCAoGX3dpZHRoQgkKB19oZWlnaHQijgIKD0NhbWVyYUNvbXBvbmVudBIjCgdzdHJlYW1zGAEgAygLMhIud29ybGQuTWVkaWFTdHJlYW0SGAoLZm9jYWxfcG9pbnQYAiABKAlIAIgBARIQCgNmb3YYAyABKAFIAYgBARIWCglyYW5nZV9taW4YBCABKAFIAogBARIWCglyYW5nZV9tYXgYBSABKAFIA4gBARIVCghmb3Zfd2lkZRgGIAEoAUgEiAEBEhUKCGZvdl90ZWxlGAcgASgBSAWIAQFCDgoMX2ZvY2FsX3BvaW50QgYKBF9mb3ZCDAoKX3JhbmdlX21pbkIMCgpfcmFuZ2VfbWF4QgsKCV9mb3Zfd2lkZUILCglfZm92X3RlbGUiwAEKEkRldGVjdGlvbkNvbXBvbmVudBIdChBkZXRlY3RvckVudGl0eUlkGAEgASgJSACIAQESGwoOY2xhc3NpZmljYXRpb24YAiABKAlIAYgBARI1CgxsYXN0TWVhc3VyZWQYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAKIAQFCEwoRX2RldGVjdG9yRW50aXR5SWRCEQoPX2NsYXNzaWZpY2F0aW9uQg8KDV9sYXN0TWVhc3VyZWQiWgoQQmVhcmluZ0NvbXBvbmVudBIUCgdhemltdXRoGAEgASgBSACIAQESFgoJZWxldmF0aW9uGAIgASgBSAGIAQFCCgoIX2F6aW11dGhCDAoKX2VsZXZhdGlvbiIjCg9TZW5zb3JDb21wb25lbnQSEAoIY292ZXJhZ2UYAiADKAkiOAoKUXVhdGVybmlvbhIJCgF4GAEgASgBEgkKAXkYAiABKAESCQoBehgDIAEoARIJCgF3GAQgASgBIq4BChBDb3ZhcmlhbmNlTWF0cml4EhAKA214eBgBIAEoAUgAiAEBEhAKA214eRgCIAEoAUgBiAEBEhAKA214ehgDIAEoAUgCiAEBEhAKA215eRgEIAEoAUgDiAEBEhAKA215ehgFIAEoAUgEiAEBEhAKA216ehgGIAEoAUgFiAEBQgYKBF9teHhCBgoEX214eUIGCgRfbXh6QgYKBF9teXlCBgoEX215ekIGCgRfbXp6IswBCg9DYXJ0ZXNpYW5PZmZzZXQSDgoGZWFzdF9tGAEgASgBEg8KB25vcnRoX20YAiABKAESEQoEdXBfbRgDIAEoAUgAiAEBEjAKCmNvdmFyaWFuY2UYBCABKAsyFy53b3JsZC5Db3ZhcmlhbmNlTWF0cml4SAGIAQESKwoLb3JpZW50YXRpb24YBSABKAsyES53b3JsZC5RdWF0ZXJuaW9uSAKIAQFCBwoFX3VwX21CDQoLX2NvdmFyaWFuY2VCDgoMX29yaWVudGF0aW9uIoIDCgtQb2xhck9mZnNldBIPCgdhemltdXRoGAEgASgBEhYKCWVsZXZhdGlvbhgCIAEoAUgAiAEBEhIKBXJhbmdlGAMgASgBSAGIAQESNAoKY292YXJpYW5jZRgEIAEoCzIXLndvcmxkLkNvdmFyaWFuY2VNYXRyaXhCAhgBSAKIAQESHgoRYXppbXV0aF9lcnJvcl9kZWcYCiABKAFIA4gBARIgChNlbGV2YXRpb25fZXJyb3JfZGVnGAsgASgBSASIAQESGgoNcmFuZ2VfZXJyb3JfbRgMIAEoAUgFiAEBEisKC29yaWVudGF0aW9uGAUgASgLMhEud29ybGQuUXVhdGVybmlvbkgGiAEBQgwKCl9lbGV2YXRpb25CCAoGX3JhbmdlQg0KC19jb3ZhcmlhbmNlQhQKEl9hemltdXRoX2Vycm9yX2RlZ0IWChRfZWxldmF0aW9uX2Vycm9yX2RlZ0IQCg5fcmFuZ2VfZXJyb3JfbUIOCgxfb3JpZW50YXRpb24iewoNUG9zZUNvbXBvbmVudBIOCgZwYXJlbnQYASABKAkSKwoJY2FydGVzaWFuGAIgASgLMhYud29ybGQuQ2FydGVzaWFuT2Zmc2V0SAASIwoFcG9sYXIYAyABKAsyEi53b3JsZC5Qb2xhck9mZnNldEgAQggKBm9mZnNldCJxChNUYXJnZXRQb3NlQ29tcG9uZW50EisKCWNhcnRlc2lhbhgBIAEoCzIWLndvcmxkLkNhcnRlc2lhbk9mZnNldEgAEiMKBXBvbGFyGAIgASgLMhIud29ybGQuUG9sYXJPZmZzZXRIAEIICgZvZmZzZXQiSgoPQW5ndWxhclZlbG9jaXR5EhEKCXJvbGxfcmF0ZRgBIAEoARISCgpwaXRjaF9yYXRlGAIgASgBEhAKCHlhd19yYXRlGAMgASgBIn8KFE9yaWVudGF0aW9uQ29tcG9uZW50EiYKC29yaWVudGF0aW9uGAEgASgLMhEud29ybGQuUXVhdGVybmlvbhIwCgpjb3ZhcmlhbmNlGAIgASgLMhcud29ybGQuQ292YXJpYW5jZU1hdHJpeEgAiAEBQg0KC19jb3ZhcmlhbmNlIpABCg5UcmFja0NvbXBvbmVudBIUCgd0cmFja2VyGAEgASgJSACIAQESFAoHaGlzdG9yeRgCIAEoCUgBiAEBEhcKCnByZWRpY3Rpb24YAyABKAlIAogBARISCgpkZXRlY3Rpb25zGAQgAygJQgoKCF90cmFja2VyQgoKCF9oaXN0b3J5Qg0KC19wcmVkaWN0aW9uIisKEExvY2F0b3JDb21wb25lbnQSFwoPbG9jYXRlZEVudGl0eUlkGAEgASgJIjUKD1Rhc2thYmxlQ29udGV4dBIVCghlbnRpdHlJZBgBIAEoCUgAiAEBQgsKCV9lbnRpdHlJZCI2ChBUYXNrYWJsZUFzc2lnbmVlEhUKCGVudGl0eUlkGAEgASgJSACIAQFCCwoJX2VudGl0eUlkIvUBChFUYXNrYWJsZUNvbXBvbmVudBIVCghyZXNlcnZlZBgBIAEoCUgAiAEBEhIKBWxhYmVsGAIgASgJSAGIAQESJwoHY29udGV4dBgDIAMoCzIWLndvcmxkLlRhc2thYmxlQ29udGV4dBIpCghhc3NpZ25lZRgEIAMoCzIXLndvcmxkLlRhc2thYmxlQXNzaWduZWUSJwoGc2NoZW1hGAUgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIhCgRtb2RlGAYgASgOMhMud29ybGQuVGFza2FibGVNb2RlQgsKCV9yZXNlcnZlZEIICgZfbGFiZWwi1QEKFlRhc2tFeGVjdXRpb25Db21wb25lbnQSDAoEdGFzaxgBIAEoCRIwCgpwYXJhbWV0ZXJzGAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAiAEBEigKBXN0YXRlGAMgASgOMhkud29ybGQuVGFza0V4ZWN1dGlvblN0YXRlEhMKBnJlYXNvbhgEIAEoCUgBiAEBEhUKCHByaW9yaXR5GAUgASgNSAKIAQFCDQoLX3BhcmFtZXRlcnNCCQoHX3JlYXNvbkILCglfcHJpb3JpdHkiogEKDUtpbmVtYXRpY3NFbnUSEQoEZWFzdBgBIAEoAUgAiAEBEhIKBW5vcnRoGAIgASgBSAGIAQESDwoCdXAYAyABKAFIAogBARIwCgpjb3ZhcmlhbmNlGAQgASgLMhcud29ybGQuQ292YXJpYW5jZU1hdHJpeEgDiAEBQgcKBV9lYXN0QggKBl9ub3J0aEIFCgNfdXBCDQoLX2NvdmFyaWFuY2Ui7wEKE0tpbmVtYXRpY3NDb21wb25lbnQSLgoLdmVsb2NpdHlFbnUYASABKAsyFC53b3JsZC5LaW5lbWF0aWNzRW51SACIAQESMgoPYWNjZWxlcmF0aW9uRW51GAIgASgLMhQud29ybGQuS2luZW1hdGljc0VudUgBiAEBEjgKE2FuZ3VsYXJWZWxvY2l0eUJvZHkYAyABKAsyFi53b3JsZC5Bbmd1bGFyVmVsb2NpdHlIAogBAUIOCgxfdmVsb2NpdHlFbnVCEgoQX2FjY2VsZXJhdGlvbkVudUIWChRfYW5ndWxhclZlbG9jaXR5Qm9keSJCCghHZW9tZXRyeRIPCgN3a2IYASABKAxCAhgBEiUKBnBsYW5hchgCIAEoCzIVLndvcmxkLlBsYW5hckdlb21ldHJ5IkgKEUdlb1NoYXBlQ29tcG9uZW50EiYKCGdlb21ldHJ5GAEgASgLMg8ud29ybGQuR2VvbWV0cnlIAIgBAUILCglfZ2VvbWV0cnkiZAoTTG9jYWxTaGFwZUNvbXBvbmVudBITCgtyZWxhdGl2ZV90bxgCIAEoCRIrCghnZW9tZXRyeRgBIAEoCzIULndvcmxkLkxvY2FsR2VvbWV0cnlIAIgBAUILCglfZ2VvbWV0cnkiqAEKF0NsYXNzaWZpY2F0aW9uQ29tcG9uZW50EjwKCWRpbWVuc2lvbhgBIAEoDjIkLndvcmxkLkNsYXNzaWZpY2F0aW9uQmF0dGxlRGltZW5zaW9uSACIAQESNAoIaWRlbnRpdHkYAiABKA4yHS53b3JsZC5DbGFzc2lmaWNhdGlvbklkZW50aXR5SAGIAQFCDAoKX2RpbWVuc2lvbkILCglfaWRlbnRpdHkilAEKDlRyYW5zcG9uZGVyQUlTEhEKBG1tc2kYASABKA1IAIgBARIQCgNpbW8YAiABKA1IAYgBARIVCghjYWxsc2lnbhgDIAEoCUgCiAEBEhgKC3Zlc3NlbF9uYW1lGAQgASgJSAOIAQFCBwoFX21tc2lCBgoEX2ltb0ILCglfY2FsbHNpZ25CDgoMX3Zlc3NlbF9uYW1lImMKD1RyYW5zcG9uZGVyQURTQhIZCgxpY2FvX2FkZHJlc3MYASABKA1IAIgBARIWCglmbGlnaHRfaWQYAiABKAlIAYgBAUIPCg1faWNhb19hZGRyZXNzQgwKCl9mbGlnaHRfaWQiewoUVHJhbnNwb25kZXJDb21wb25lbnQSJwoDYWlzGAEgASgLMhUud29ybGQuVHJhbnNwb25kZXJBSVNIAIgBARIpCgRhZHNiGAIgASgLMhYud29ybGQuVHJhbnNwb25kZXJBRFNCSAGIAQFCBgoEX2Fpc0IHCgVfYWRzYiLbAgoXQWRtaW5pc3RyYXRpdmVDb21wb25lbnQSDwoCaWQYASABKAlIAIgBARIRCgRmbGFnGAIgASgJSAGIAQESEgoFb3duZXIYAyABKAlIAogBARIZCgxtYW51ZmFjdHVyZXIYBCABKAlIA4gBARISCgVtb2RlbBgFIAEoCUgEiAEBEhcKCnllYXJfYnVpbHQYBiABKA1IBYgBARIVCghsZW5ndGhfbRgHIAEoAkgGiAEBEhcKCnRvbm5hZ2VfZ3QYCCABKAJIB4gBARIcCg9lbmdpbmVfcG93ZXJfa3cYCSABKAJICIgBAUIFCgNfaWRCBwoFX2ZsYWdCCAoGX293bmVyQg8KDV9tYW51ZmFjdHVyZXJCCAoGX21vZGVsQg0KC195ZWFyX2J1aWx0QgsKCV9sZW5ndGhfbUINCgtfdG9ubmFnZV9ndEISChBfZW5naW5lX3Bvd2VyX2t3IvABChNOYXZpZ2F0aW9uQ29tcG9uZW50EigKBG1vZGUYASABKA4yFS53b3JsZC5OYXZpZ2F0aW9uTW9kZUgAiAEBEhIKBWFybWVkGAIgASgISAGIAQESFgoJZW1lcmdlbmN5GAMgASgISAKIAQESHQoQd2F5cG9pbnRfY3VycmVudBgEIAEoDUgDiAEBEhsKDndheXBvaW50X3RvdGFsGAUgASgNSASIAQFCBwoFX21vZGVCCAoGX2FybWVkQgwKCl9lbWVyZ2VuY3lCEwoRX3dheXBvaW50X2N1cnJlbnRCEQoPX3dheXBvaW50X3RvdGFsIq0BChBNaXNzaW9uQ29tcG9uZW50Eg8KB21lbWJlcnMYASADKAkSGAoLZGVzY3JpcHRpb24YAiABKAlIAIgBARIYCgtkZXN0aW5hdGlvbhgDIAEoCUgBiAEBEiwKA2V0YRgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAogBAUIOCgxfZGVzY3JpcHRpb25CDgoMX2Rlc3RpbmF0aW9uQgYKBF9ldGEixAIKDUxpbmtDb21wb25lbnQSJgoGc3RhdHVzGAEgASgOMhEud29ybGQuTGlua1N0YXR1c0gAiAEBEhUKCHJzc2lfZGJtGAIgASgRSAGIAQESEwoGc25yX2RiGAMgASgRSAKIAQESEAoDdmlhGAUgASgJSAOIAQESHAoPbGFzdF9sYXRlbmN5X21zGAYgASgNSASIAQESGwoOYXZnX2xhdGVuY3lfbXMYByABKA1IBYgBARIyCglsYXN0X3NlZW4YCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAaIAQFCCQoHX3N0YXR1c0ILCglfcnNzaV9kYm1CCQoHX3Nucl9kYkIGCgRfdmlhQhIKEF9sYXN0X2xhdGVuY3lfbXNCEQoPX2F2Z19sYXRlbmN5X21zQgwKCl9sYXN0X3NlZW4i7AEKEENhcHR1cmVDb21wb25lbnQSFAoHcGF5bG9hZBgBIAEoDEgAiAEBEhEKBHBvcnQYAiABKA1IAYgBARIZCgxjb250ZW50X3R5cGUYAyABKAlIAogBARIYCgtjYXB0dXJlZF9ieRgEIAEoCUgDiAEBEjQKC2NhcHR1cmVkX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgEiAEBQgoKCF9wYXlsb2FkQgcKBV9wb3J0Qg8KDV9jb250ZW50X3R5cGVCDgoMX2NhcHR1cmVkX2J5Qg4KDF9jYXB0dXJlZF9hdCKsAQoOUG93ZXJDb21wb25lbnQSJQoYYmF0dGVyeV9jaGFyZ2VfcmVtYWluaW5nGAEgASgCSACIAQESFAoHdm9sdGFnZRgCIAEoAkgBiAEBEh4KEXJlbWFpbmluZ19zZWNvbmRzGAMgASgNSAKIAQFCGwoZX2JhdHRlcnlfY2hhcmdlX3JlbWFpbmluZ0IKCghfdm9sdGFnZUIUChJfcmVtYWluaW5nX3NlY29uZHMiMQoRRGV2aWNlQ2xhc3NPcHRpb24SDQoFY2xhc3MYASABKAkSDQoFbGFiZWwYAiABKAki6gIKFUNvbmZpZ3VyYWJsZUNvbXBvbmVudBInCgZzY2hlbWEYASABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EiYKBXZhbHVlGAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBInCgVzdGF0ZRgDIAEoDjIYLndvcmxkLkNvbmZpZ3VyYWJsZVN0YXRlEhIKBWVycm9yGAQgASgJSACIAQESEgoFbGFiZWwYBSABKAlIAYgBARIXCg9hcHBsaWVkX3ZlcnNpb24YBiABKAQSOgoYc3VwcG9ydGVkX2RldmljZV9jbGFzc2VzGAcgAygLMhgud29ybGQuRGV2aWNlQ2xhc3NPcHRpb24SNQoMc2NoZWR1bGVkX2F0GAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgCiAEBQggKBl9lcnJvckIICgZfbGFiZWxCDwoNX3NjaGVkdWxlZF9hdCLoBAoPRGV2aWNlQ29tcG9uZW50EhMKBnBhcmVudBgBIAEoCUgAiAEBEhMKC2NvbXBvc2l0aW9uGAIgAygJEh8KEnVuaXF1ZV9oYXJkd2FyZV9pZBgEIAEoCUgBiAEBEiEKBXN0YXRlGAYgASgOMhIud29ybGQuRGV2aWNlU3RhdGUSEgoFZXJyb3IYByABKAlIAogBARISCgVjbGFzcxgKIAEoCUgDiAEBEhUKCGNhdGVnb3J5GA0gASgJSASIAQESJAoEbm9kZRgUIAEoCzIRLndvcmxkLk5vZGVEZXZpY2VIBYgBARIiCgN1c2IYFSABKAsyEC53b3JsZC5Vc2JEZXZpY2VIBogBARIgCgJpcBgWIAEoCzIPLndvcmxkLklwRGV2aWNlSAeIAQESKAoGc2VyaWFsGBcgASgLMhMud29ybGQuU2VyaWFsRGV2aWNlSAiIAQESLAoIZXRoZXJuZXQYGCABKAsyFS53b3JsZC5FdGhlcm5ldERldmljZUgJiAEBEiYKBWxwd2FuGBkgASgLMhIud29ybGQuTFBXQU5EZXZpY2VICogBARIwCgptZXNodGFzdGljGBogASgLMhcud29ybGQuTWVzaHRhc3RpY0RldmljZUgLiAEBQgkKB19wYXJlbnRCFQoTX3VuaXF1ZV9oYXJkd2FyZV9pZEIICgZfZXJyb3JCCAoGX2NsYXNzQgsKCV9jYXRlZ29yeUIHCgVfbm9kZUIGCgRfdXNiQgUKA19pcEIJCgdfc2VyaWFsQgsKCV9ldGhlcm5ldEIICgZfbHB3YW5CDQoLX21lc2h0YXN0aWMioAIKCk5vZGVEZXZpY2USFQoIaG9zdG5hbWUYASABKAlIAIgBARIPCgJvcxgCIAEoCUgBiAEBEhEKBGFyY2gYAyABKAlIAogBARIUCgdudW1fY3B1GAQgASgNSAOIAQESFwoKb3NfdmVyc2lvbhgFIAEoCUgEiAEBEhsKDmh5ZHJpc192ZXJzaW9uGAYgASgJSAWIAQESJAoXaHlkcmlzX3VwZGF0ZV9hdmFpbGFibGUYByABKAlIBogBAUILCglfaG9zdG5hbWVCBQoDX29zQgcKBV9hcmNoQgoKCF9udW1fY3B1Qg0KC19vc192ZXJzaW9uQhEKD19oeWRyaXNfdmVyc2lvbkIaChhfaHlkcmlzX3VwZGF0ZV9hdmFpbGFibGUi+QIKCVVzYkRldmljZRIWCgl2ZW5kb3JfaWQYASABKA1IAIgBARIXCgpwcm9kdWN0X2lkGAIgASgNSAGIAQESGQoMZGV2aWNlX2NsYXNzGAMgASgNSAKIAQESHAoPZGV2aWNlX3N1YmNsYXNzGAQgASgNSAOIAQESHAoPZGV2aWNlX3Byb3RvY29sGAUgASgNSASIAQESHgoRbWFudWZhY3R1cmVyX25hbWUYBiABKAlIBYgBARIZCgxwcm9kdWN0X25hbWUYByABKAlIBogBARIaCg1zZXJpYWxfbnVtYmVyGAggASgJSAeIAQFCDAoKX3ZlbmRvcl9pZEINCgtfcHJvZHVjdF9pZEIPCg1fZGV2aWNlX2NsYXNzQhIKEF9kZXZpY2Vfc3ViY2xhc3NCEgoQX2RldmljZV9wcm90b2NvbEIUChJfbWFudWZhY3R1cmVyX25hbWVCDwoNX3Byb2R1Y3RfbmFtZUIQCg5fc2VyaWFsX251bWJlciJCCghJcERldmljZRIRCgRob3N0GAEgASgJSACIAQESEQoEcG9ydBgCIAEoDUgBiAEBQgcKBV9ob3N0QgcKBV9wb3J0IloKDkV0aGVybmV0RGV2aWNlEhgKC21hY19hZGRyZXNzGAEgASgJSACIAQESEwoGdmVuZG9yGAIgASgJSAGIAQFCDgoMX21hY19hZGRyZXNzQgkKB192ZW5kb3IiUAoMU2VyaWFsRGV2aWNlEhEKBHBhdGgYASABKAlIAIgBARIWCgliYXVkX3JhdGUYAiABKA1IAYgBAUIHCgVfcGF0aEIMCgpfYmF1ZF9yYXRlItwBChBNZXNodGFzdGljRGV2aWNlEhUKCG5vZGVfbnVtGAEgASgNSACIAQESFgoJbG9uZ19uYW1lGAIgASgJSAGIAQESFwoKc2hvcnRfbmFtZRgDIAEoCUgCiAEBEhsKDmhhcmR3YXJlX21vZGVsGAQgASgJSAOIAQESFwoKcHVibGljX2tleRgFIAEoDEgEiAEBQgsKCV9ub2RlX251bUIMCgpfbG9uZ19uYW1lQg0KC19zaG9ydF9uYW1lQhEKD19oYXJkd2FyZV9tb2RlbEINCgtfcHVibGljX2tleSJJCgtMUFdBTkRldmljZRIQCgNldWkYASABKAlIAIgBARIUCgdhZGRyZXNzGAIgASgJSAGIAQFCBgoEX2V1aUIKCghfYWRkcmVzcyJRChZDb25maWd1cmF0aW9uQ29tcG9uZW50EiYKBXZhbHVlGAMgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIPCgd2ZXJzaW9uGAUgASgEIqABCg1DaGF0Q29tcG9uZW50EhMKBnNlbmRlchgBIAEoCUgAiAEBEg8KAnRvGAMgASgJSAGIAQESDwoHbWVzc2FnZRgEIAEoCRIVCghyZXBseV90bxgFIAEoCUgCiAEBEhUKCHJlYWN0aW9uGAYgASgISAOIAQFCCQoHX3NlbmRlckIFCgNfdG9CCwoJX3JlcGx5X3RvQgsKCV9yZWFjdGlvbiLVBAoMRW50aXR5RmlsdGVyEg8KAmlkGAEgASgJSACIAQESEgoFbGFiZWwYAiABKAlIAYgBARIiCgNnZW8YAyABKAsyEC53b3JsZC5HZW9GaWx0ZXJIAogBARIsCgh0YXNrYWJsZRgEIAEoCzIVLndvcmxkLlRhc2thYmxlRmlsdGVySAOIAQESEQoJY29tcG9uZW50GAUgAygNEjAKCmNvbnRyb2xsZXIYByABKAsyFy53b3JsZC5Db250cm9sbGVyRmlsdGVySASIAQESJgoFdHJhY2sYCCABKAsyEi53b3JsZC5UcmFja0ZpbHRlckgFiAEBEioKB21pc3Npb24YCSABKAsyFC53b3JsZC5NaXNzaW9uRmlsdGVySAaIAQESKgoHY2hhbm5lbBgKIAEoCzIULndvcmxkLkNoYW5uZWxGaWx0ZXJIB4gBARIoCgZkZXZpY2UYMiABKAsyEy53b3JsZC5EZXZpY2VGaWx0ZXJICIgBARIvCgZjb25maWcYMyABKAsyGi53b3JsZC5Db25maWd1cmF0aW9uRmlsdGVySAmIAQESHwoCb3IYZCADKAsyEy53b3JsZC5FbnRpdHlGaWx0ZXISIAoDbm90GGUgASgLMhMud29ybGQuRW50aXR5RmlsdGVyQgUKA19pZEIICgZfbGFiZWxCBgoEX2dlb0ILCglfdGFza2FibGVCDQoLX2NvbnRyb2xsZXJCCAoGX3RyYWNrQgoKCF9taXNzaW9uQgoKCF9jaGFubmVsQgkKB19kZXZpY2VCCQoHX2NvbmZpZyIqChBDb250cm9sbGVyRmlsdGVyEg8KAmlkGAEgASgJSACIAQFCBQoDX2lkIi8KC1RyYWNrRmlsdGVyEhQKB3RyYWNrZXIYASABKAlIAIgBAUIKCghfdHJhY2tlciJdCg1NaXNzaW9uRmlsdGVyEhcKCm1pc3Npb25faWQYASABKAlIAIgBARIWCgltZW1iZXJfaWQYAiABKAlIAYgBAUINCgtfbWlzc2lvbl9pZEIMCgpfbWVtYmVyX2lkIocBCg5UYXNrYWJsZUZpbHRlchIsCgdjb250ZXh0GAEgASgLMhYud29ybGQuVGFza2FibGVDb250ZXh0SACIAQESLgoIYXNzaWduZWUYAiABKAsyFy53b3JsZC5UYXNrYWJsZUFzc2lnbmVlSAGIAQFCCgoIX2NvbnRleHRCCwoJX2Fzc2lnbmVlIk4KCUdlb0ZpbHRlchIjCghnZW9tZXRyeRgBIAEoCzIPLndvcmxkLkdlb21ldHJ5SAASFQoLZ2VvRW50aXR5SWQYAiABKAlIAEIFCgNnZW8iZgoMRGV2aWNlRmlsdGVyEhMKBnBhcmVudBgBIAEoCUgAiAEBEh8KEnVuaXF1ZV9oYXJkd2FyZV9pZBgEIAEoCUgBiAEBQgkKB19wYXJlbnRCFQoTX3VuaXF1ZV9oYXJkd2FyZV9pZCIVChNDb25maWd1cmF0aW9uRmlsdGVyIh0KDUNoYW5uZWxGaWx0ZXISDAoEbmFtZRgBIAEoCSK0AQoNV2F0Y2hCZWhhdmlvchIYCgttYXhfcmF0ZV9oehgBIAEoAkgAiAEBEioKDG1pbl9wcmlvcml0eRgDIAEoDjIPLndvcmxkLlByaW9yaXR5SAGIAQESIgoVa2VlcGFsaXZlX2ludGVydmFsX21zGAQgASgNSAKIAQFCDgoMX21heF9yYXRlX2h6Qg8KDV9taW5fcHJpb3JpdHlCGAoWX2tlZXBhbGl2ZV9pbnRlcnZhbF9tcyJ8ChNMaXN0RW50aXRpZXNSZXF1ZXN0EiMKBmZpbHRlchgCIAEoCzITLndvcmxkLkVudGl0eUZpbHRlchIsCgliZWhhdmlvdXIYBCABKAsyFC53b3JsZC5XYXRjaEJlaGF2aW9ySACIAQFCDAoKX2JlaGF2aW91ckoECAEQAiI3ChRMaXN0RW50aXRpZXNSZXNwb25zZRIfCghlbnRpdGllcxgBIAMoCzINLndvcmxkLkVudGl0eSJaChNFbnRpdHlDaGFuZ2VSZXF1ZXN0Eh4KB2NoYW5nZXMYASADKAsyDS53b3JsZC5FbnRpdHkSIwoMcmVwbGFjZW1lbnRzGAIgAygLMg0ud29ybGQuRW50aXR5IiEKE0V4cGlyZUVudGl0eVJlcXVlc3QSCgoCaWQYASABKAkiFgoURXhwaXJlRW50aXR5UmVzcG9uc2UiNwoURW50aXR5Q2hhbmdlUmVzcG9uc2USEAoIYWNjZXB0ZWQYASABKAgSDQoFZGVidWcYAiABKAkiUgoRRW50aXR5Q2hhbmdlRXZlbnQSHQoGZW50aXR5GAEgASgLMg0ud29ybGQuRW50aXR5Eh4KAXQYAiABKA4yEy53b3JsZC5FbnRpdHlDaGFuZ2UiPQoRRW50aXR5Q2hhbmdlQmF0Y2gSKAoGZXZlbnRzGAEgAygLMhgud29ybGQuRW50aXR5Q2hhbmdlRXZlbnQiHgoQR2V0RW50aXR5UmVxdWVzdBIKCgJpZBgBIAEoCSIyChFHZXRFbnRpdHlSZXNwb25zZRIdCgZlbnRpdHkYASABKAsyDS53b3JsZC5FbnRpdHkiFQoTR2V0TG9jYWxOb2RlUmVxdWVzdCJGChRHZXRMb2NhbE5vZGVSZXNwb25zZRIdCgZlbnRpdHkYASABKAsyDS53b3JsZC5FbnRpdHkSDwoHbm9kZV9pZBgCIAEoCSIRCg9PYnNlcnZlclJlcXVlc3QicwoNT2JzZXJ2ZXJTdGF0ZRIcCgNnZW8YASABKAsyDy53b3JsZC5HZW9tZXRyeRI0Cgt2aWV3SGlzdG9yeRgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBAUIOCgxfdmlld0hpc3RvcnkiRgoOUnVuVGFza1JlcXVlc3QSEAoIZW50aXR5SWQYASABKAkSFQoIcHJpb3JpdHkYAiABKA1IAIgBAUILCglfcHJpb3JpdHkigwEKD1J1blRhc2tSZXNwb25zZRITCgtleGVjdXRpb25JZBgBIAEoCRIhCgZzdGF0dXMYAiABKA4yES53b3JsZC5UYXNrU3RhdHVzEiAKE2h1bWFuUmVhZGFibGVSZWFzb24YAyABKAlIAIgBAUIWChRfaHVtYW5SZWFkYWJsZVJlYXNvbiISChBIYXJkUmVzZXRSZXF1ZXN0IhMKEUhhcmRSZXNldFJlc3BvbnNlKmIKCFByaW9yaXR5EhcKE1ByaW9yaXR5VW5zcGVjaWZpZWQQABITCg9Qcmlvcml0eVJvdXRpbmUQARIVChFQcmlvcml0eUltbWVkaWF0ZRACEhEKDVByaW9yaXR5Rmxhc2gQAyrsAQoTTWVkaWFTdHJlYW1Qcm90b2NvbBIiCh5NZWRpYVN0cmVhbVByb3RvY29sVW5zcGVjaWZpZWQQABIdChlNZWRpYVN0cmVhbVByb3RvY29sV2VicnRjEAESGgoWTWVkaWFTdHJlYW1Qcm90b2NvbEhscxACEhwKGE1lZGlhU3RyZWFtUHJvdG9jb2xNanBlZxADEhwKGE1lZGlhU3RyZWFtUHJvdG9jb2xJbWFnZRAEEh0KGU1lZGlhU3RyZWFtUHJvdG9jb2xJZnJhbWUQBRIbChdNZWRpYVN0cmVhbVByb3RvY29sUnRzcBAGKn8KD01lZGlhU3RyZWFtUm9sZRIeChpNZWRpYVN0cmVhbVJvbGVVbnNwZWNpZmllZBAAEhcKE01lZGlhU3RyZWFtUm9sZU1haW4QARIWChJNZWRpYVN0cmVhbVJvbGVTdWIQAhIbChdNZWRpYVN0cmVhbVJvbGVTbmFwc2hvdBADKnoKDFRhc2thYmxlTW9kZRIZChVUYXNrYWJsZU1vZGVFeGNsdXNpdmUQABIZChVUYXNrYWJsZU1vZGVSZWNvbmNpbGUQARIVChFUYXNrYWJsZU1vZGVTcGF3bhACEh0KGVRhc2thYmxlTW9kZVByaW9yaXR5UXVldWUQAyqRAQoSVGFza0V4ZWN1dGlvblN0YXRlEh0KGVRhc2tFeGVjdXRpb25TdGF0ZVBlbmRpbmcQABIdChlUYXNrRXhlY3V0aW9uU3RhdGVSdW5uaW5nEAESHwobVGFza0V4ZWN1dGlvblN0YXRlQ29tcGxldGVkEAISHAoYVGFza0V4ZWN1dGlvblN0YXRlRmFpbGVkEAMqjAIKFkNsYXNzaWZpY2F0aW9uSWRlbnRpdHkSIQodQ2xhc3NpZmljYXRpb25JZGVudGl0eUludmFsaWQQABIhCh1DbGFzc2lmaWNhdGlvbklkZW50aXR5UGVuZGluZxABEiEKHUNsYXNzaWZpY2F0aW9uSWRlbnRpdHlVbmtub3duEAISIAocQ2xhc3NpZmljYXRpb25JZGVudGl0eUZyaWVuZBADEiEKHUNsYXNzaWZpY2F0aW9uSWRlbnRpdHlOZXV0cmFsEAQSIQodQ2xhc3NpZmljYXRpb25JZGVudGl0eUhvc3RpbGUQBRIhCh1DbGFzc2lmaWNhdGlvbklkZW50aXR5U3VzcGVjdBAGKsQCCh1DbGFzc2lmaWNhdGlvbkJhdHRsZURpbWVuc2lvbhIoCiRDbGFzc2lmaWNhdGlvbkJhdHRsZURpbWVuc2lvbkludmFsaWQQABIoCiRDbGFzc2lmaWNhdGlvbkJhdHRsZURpbWVuc2lvblVua25vd24QARImCiJDbGFzc2lmaWNhdGlvbkJhdHRsZURpbWVuc2lvblNwYWNlEAISJAogQ2xhc3NpZmljYXRpb25CYXR0bGVEaW1lbnNpb25BaXIQAxInCiNDbGFzc2lmaWNhdGlvbkJhdHRsZURpbWVuc2lvbkdyb3VuZBAEEisKJ0NsYXNzaWZpY2F0aW9uQmF0dGxlRGltZW5zaW9uU2VhU3VyZmFjZRAFEisKJ0NsYXNzaWZpY2F0aW9uQmF0dGxlRGltZW5zaW9uU3Vic3VyZmFjZRAGKvYBCg5OYXZpZ2F0aW9uTW9kZRIdChlOYXZpZ2F0aW9uTW9kZVVuc3BlY2lmaWVkEAASGQoVTmF2aWdhdGlvbk1vZGVQbGFubmVkEAESHAoYTmF2aWdhdGlvbk1vZGVTdGF0aW9uYXJ5EAISGgoWTmF2aWdhdGlvbk1vZGVVbmRlcndheRADEhwKGE5hdmlnYXRpb25Nb2RlQXV0b25vbW91cxAEEhgKFE5hdmlnYXRpb25Nb2RlR3VpZGVkEAUSGwoXTmF2aWdhdGlvbk1vZGVMb2l0ZXJpbmcQBhIbChdOYXZpZ2F0aW9uTW9kZVJldHVybmluZxAHKmwKCkxpbmtTdGF0dXMSGQoVTGlua1N0YXR1c1Vuc3BlY2lmaWVkEAASFwoTTGlua1N0YXR1c0Nvbm5lY3RlZBABEhYKEkxpbmtTdGF0dXNEZWdyYWRlZBACEhIKDkxpbmtTdGF0dXNMb3N0EAMqUwoLRGV2aWNlU3RhdGUSFgoSRGV2aWNlU3RhdGVQZW5kaW5nEAASFQoRRGV2aWNlU3RhdGVBY3RpdmUQARIVChFEZXZpY2VTdGF0ZUZhaWxlZBACKsoBChFDb25maWd1cmFibGVTdGF0ZRIdChlDb25maWd1cmFibGVTdGF0ZUluYWN0aXZlEAASHQoZQ29uZmlndXJhYmxlU3RhdGVTdGFydGluZxABEhsKF0NvbmZpZ3VyYWJsZVN0YXRlQWN0aXZlEAISGwoXQ29uZmlndXJhYmxlU3RhdGVGYWlsZWQQAxIdChlDb25maWd1cmFibGVTdGF0ZUNvbmZsaWN0EAQSHgoaQ29uZmlndXJhYmxlU3RhdGVTY2hlZHVsZWQQBSp1CgxFbnRpdHlDaGFuZ2USFwoTRW50aXR5Q2hhbmdlSW52YWxpZBAAEhcKE0VudGl0eUNoYW5nZVVwZGF0ZWQQARIXChNFbnRpdHlDaGFuZ2VFeHBpcmVkEAISGgoWRW50aXR5Q2hhbmdlVW5vYnNlcnZlZBADKr8ICg9FbnRpdHlDb21wb25lbnQSHgoaRW50aXR5Q29tcG9uZW50VW5zcGVjaWZpZWQQABIYChRFbnRpdHlDb21wb25lbnRMYWJlbBACEh0KGUVudGl0eUNvbXBvbmVudENvbnRyb2xsZXIQAxIbChdFbnRpdHlDb21wb25lbnRMaWZldGltZRAEEhsKF0VudGl0eUNvbXBvbmVudFByaW9yaXR5EAUSGAoURW50aXR5Q29tcG9uZW50TGVhc2UQBhIaChZFbnRpdHlDb21wb25lbnRSb3V0aW5nEAcSFgoSRW50aXR5Q29tcG9uZW50R2VvEAsSGQoVRW50aXR5Q29tcG9uZW50U3ltYm9sEAwSGQoVRW50aXR5Q29tcG9uZW50Q2FtZXJhEA8SHAoYRW50aXR5Q29tcG9uZW50RGV0ZWN0aW9uEBASGgoWRW50aXR5Q29tcG9uZW50QmVhcmluZxAREhgKFEVudGl0eUNvbXBvbmVudFRyYWNrEBUSGgoWRW50aXR5Q29tcG9uZW50TG9jYXRvchAWEhsKF0VudGl0eUNvbXBvbmVudFRhc2thYmxlEBcSHQoZRW50aXR5Q29tcG9uZW50S2luZW1hdGljcxAYEhgKFEVudGl0eUNvbXBvbmVudFNoYXBlEBkSIQodRW50aXR5Q29tcG9uZW50Q2xhc3NpZmljYXRpb24QGhIeChpFbnRpdHlDb21wb25lbnRUcmFuc3BvbmRlchAbEiEKHUVudGl0eUNvbXBvbmVudEFkbWluaXN0cmF0aXZlEBwSHQoZRW50aXR5Q29tcG9uZW50TG9jYWxTaGFwZRAdEh4KGkVudGl0eUNvbXBvbmVudE9yaWVudGF0aW9uEB4SGgoWRW50aXR5Q29tcG9uZW50TWlzc2lvbhAfEhcKE0VudGl0eUNvbXBvbmVudExpbmsQIBIYChRFbnRpdHlDb21wb25lbnRQb3dlchAhEh0KGUVudGl0eUNvbXBvbmVudE5hdmlnYXRpb24QIhIaChZFbnRpdHlDb21wb25lbnRDYXB0dXJlECMSGQoVRW50aXR5Q29tcG9uZW50TWV0cmljECQSGQoVRW50aXR5Q29tcG9uZW50U2Vuc29yECUSFwoTRW50aXR5Q29tcG9uZW50UG9zZRAmEhcKE0VudGl0eUNvbXBvbmVudENoYXQQJxIgChxFbnRpdHlDb21wb25lbnRUYXNrRXhlY3V0aW9uECkSGQoVRW50aXR5Q29tcG9uZW50RGV2aWNlEDISGQoVRW50aXR5Q29tcG9uZW50Q29uZmlnEDMSHwobRW50aXR5Q29tcG9uZW50Q29uZmlndXJhYmxlEDQSIAocRW50aXR5Q29tcG9uZW50SW50ZXJhY3Rpdml0eRA8Eh0KGUVudGl0eUNvbXBvbmVudFRhcmdldFBvc2UQPippCgpUYXNrU3RhdHVzEhUKEVRhc2tTdGF0dXNJbnZhbGlkEAASFQoRVGFza1N0YXR1c1J1bm5pbmcQARIXChNUYXNrU3RhdHVzQ29tcGxldGVkEAISFAoQVGFza1N0YXR1c0ZhaWxlZBADMq0ECgxXb3JsZFNlcnZpY2USRwoMTGlzdEVudGl0aWVzEhoud29ybGQuTGlzdEVudGl0aWVzUmVxdWVzdBobLndvcmxkLkxpc3RFbnRpdGllc1Jlc3BvbnNlEj4KCUdldEVudGl0eRIXLndvcmxkLkdldEVudGl0eVJlcXVlc3QaGC53b3JsZC5HZXRFbnRpdHlSZXNwb25zZRJHCg1XYXRjaEVudGl0aWVzEhoud29ybGQuTGlzdEVudGl0aWVzUmVxdWVzdBoYLndvcmxkLkVudGl0eUNoYW5nZUV2ZW50MAESPwoEUHVzaBIaLndvcmxkLkVudGl0eUNoYW5nZVJlcXVlc3QaGy53b3JsZC5FbnRpdHlDaGFuZ2VSZXNwb25zZRJHCgxFeHBpcmVFbnRpdHkSGi53b3JsZC5FeHBpcmVFbnRpdHlSZXF1ZXN0Ghsud29ybGQuRXhwaXJlRW50aXR5UmVzcG9uc2USRwoMR2V0TG9jYWxOb2RlEhoud29ybGQuR2V0TG9jYWxOb2RlUmVxdWVzdBobLndvcmxkLkdldExvY2FsTm9kZVJlc3BvbnNlEjgKB1J1blRhc2sSFS53b3JsZC5SdW5UYXNrUmVxdWVzdBoWLndvcmxkLlJ1blRhc2tSZXNwb25zZRI+CglIYXJkUmVzZXQSFy53b3JsZC5IYXJkUmVzZXRSZXF1ZXN0Ghgud29ybGQuSGFyZFJlc2V0UmVzcG9uc2VCIFoeZ2l0aHViLmNvbS9wcm9qZWN0cWFpL3Byb3RvL2dvYgZwcm90bzM", [file_geometry, file_google_protobuf_struct, file_google_protobuf_timestamp, file_metrics]);
|
|
14
|
+
fileDesc("Cgt3b3JsZC5wcm90bxIFd29ybGQinxEKBkVudGl0eRIKCgJpZBgBIAEoCRISCgVsYWJlbBgCIAEoCUgAiAEBEioKCmNvbnRyb2xsZXIYAyABKAsyES53b3JsZC5Db250cm9sbGVySAGIAQESJgoIbGlmZXRpbWUYBCABKAsyDy53b3JsZC5MaWZldGltZUgCiAEBEiYKCHByaW9yaXR5GAUgASgOMg8ud29ybGQuUHJpb3JpdHlIA4gBARIgCgVsZWFzZRgGIAEoCzIMLndvcmxkLkxlYXNlSASIAQESJAoHcm91dGluZxgHIAEoCzIOLndvcmxkLlJvdXRpbmdIBYgBARIsCgNnZW8YCyABKAsyGi53b3JsZC5HZW9TcGF0aWFsQ29tcG9uZW50SAaIAQESKwoGc3ltYm9sGAwgASgLMhYud29ybGQuU3ltYm9sQ29tcG9uZW50SAeIAQESKwoGY2FtZXJhGA8gASgLMhYud29ybGQuQ2FtZXJhQ29tcG9uZW50SAiIAQESMQoJZGV0ZWN0aW9uGBAgASgLMhkud29ybGQuRGV0ZWN0aW9uQ29tcG9uZW50SAmIAQESLQoHYmVhcmluZxgRIAEoCzIXLndvcmxkLkJlYXJpbmdDb21wb25lbnRICogBARIpCgV0cmFjaxgVIAEoCzIVLndvcmxkLlRyYWNrQ29tcG9uZW50SAuIAQESLQoHbG9jYXRvchgWIAEoCzIXLndvcmxkLkxvY2F0b3JDb21wb25lbnRIDIgBARIzCgpraW5lbWF0aWNzGBggASgLMhoud29ybGQuS2luZW1hdGljc0NvbXBvbmVudEgNiAEBEiwKBXNoYXBlGBkgASgLMhgud29ybGQuR2VvU2hhcGVDb21wb25lbnRIDogBARI7Cg5jbGFzc2lmaWNhdGlvbhgaIAEoCzIeLndvcmxkLkNsYXNzaWZpY2F0aW9uQ29tcG9uZW50SA+IAQESNQoLdHJhbnNwb25kZXIYGyABKAsyGy53b3JsZC5UcmFuc3BvbmRlckNvbXBvbmVudEgQiAEBEjsKDmFkbWluaXN0cmF0aXZlGBwgASgLMh4ud29ybGQuQWRtaW5pc3RyYXRpdmVDb21wb25lbnRIEYgBARI1CgtvcmllbnRhdGlvbhgeIAEoCzIbLndvcmxkLk9yaWVudGF0aW9uQ29tcG9uZW50SBKIAQESMwoKbmF2aWdhdGlvbhgiIAEoCzIaLndvcmxkLk5hdmlnYXRpb25Db21wb25lbnRIE4gBARIpCgVwb3dlchghIAEoCzIVLndvcmxkLlBvd2VyQ29tcG9uZW50SBSIAQESLQoHY2FwdHVyZRgjIAEoCzIXLndvcmxkLkNhcHR1cmVDb21wb25lbnRIFYgBARIvCgh0YXNrYWJsZRgXIAEoCzIYLndvcmxkLlRhc2thYmxlQ29tcG9uZW50SBaIAQESKwoGZGV2aWNlGDIgASgLMhYud29ybGQuRGV2aWNlQ29tcG9uZW50SBeIAQESMgoGY29uZmlnGDMgASgLMh0ud29ybGQuQ29uZmlndXJhdGlvbkNvbXBvbmVudEgYiAEBEjcKDGNvbmZpZ3VyYWJsZRg0IAEoCzIcLndvcmxkLkNvbmZpZ3VyYWJsZUNvbXBvbmVudEgZiAEBEi0KB21pc3Npb24YHyABKAsyFy53b3JsZC5NaXNzaW9uQ29tcG9uZW50SBqIAQESJwoEbGluaxggIAEoCzIULndvcmxkLkxpbmtDb21wb25lbnRIG4gBARIrCgZtZXRyaWMYJCABKAsyFi53b3JsZC5NZXRyaWNDb21wb25lbnRIHIgBARIrCgZzZW5zb3IYJSABKAsyFi53b3JsZC5TZW5zb3JDb21wb25lbnRIHYgBARI0Cgtsb2NhbF9zaGFwZRgdIAEoCzIaLndvcmxkLkxvY2FsU2hhcGVDb21wb25lbnRIHogBARInCgRwb3NlGCYgASgLMhQud29ybGQuUG9zZUNvbXBvbmVudEgfiAEBEjoKDnRhc2tfZXhlY3V0aW9uGCkgASgLMh0ud29ybGQuVGFza0V4ZWN1dGlvbkNvbXBvbmVudEggiAEBEjkKDWludGVyYWN0aXZpdHkYPCABKAsyHS53b3JsZC5JbnRlcmFjdGl2aXR5Q29tcG9uZW50SCGIAQESNAoLdGFyZ2V0X3Bvc2UYPiABKAsyGi53b3JsZC5UYXJnZXRQb3NlQ29tcG9uZW50SCKIAQESJwoEY2hhdBgnIAEoCzIULndvcmxkLkNoYXRDb21wb25lbnRII4gBAUIICgZfbGFiZWxCDQoLX2NvbnRyb2xsZXJCCwoJX2xpZmV0aW1lQgsKCV9wcmlvcml0eUIICgZfbGVhc2VCCgoIX3JvdXRpbmdCBgoEX2dlb0IJCgdfc3ltYm9sQgkKB19jYW1lcmFCDAoKX2RldGVjdGlvbkIKCghfYmVhcmluZ0IICgZfdHJhY2tCCgoIX2xvY2F0b3JCDQoLX2tpbmVtYXRpY3NCCAoGX3NoYXBlQhEKD19jbGFzc2lmaWNhdGlvbkIOCgxfdHJhbnNwb25kZXJCEQoPX2FkbWluaXN0cmF0aXZlQg4KDF9vcmllbnRhdGlvbkINCgtfbmF2aWdhdGlvbkIICgZfcG93ZXJCCgoIX2NhcHR1cmVCCwoJX3Rhc2thYmxlQgkKB19kZXZpY2VCCQoHX2NvbmZpZ0IPCg1fY29uZmlndXJhYmxlQgoKCF9taXNzaW9uQgcKBV9saW5rQgkKB19tZXRyaWNCCQoHX3NlbnNvckIOCgxfbG9jYWxfc2hhcGVCBwoFX3Bvc2VCEQoPX3Rhc2tfZXhlY3V0aW9uQhAKDl9pbnRlcmFjdGl2aXR5Qg4KDF90YXJnZXRfcG9zZUIHCgVfY2hhdEoECAgQCUoECAkQCkoECAoQCyJgCgpDb250cm9sbGVyEg8KAmlkGAEgASgJSACIAQESEQoEbm9kZRgCIAEoCUgBiAEBEhMKBm9yaWdpbhgDIAEoCUgCiAEBQgUKA19pZEIHCgVfbm9kZUIJCgdfb3JpZ2luIlkKBUxlYXNlEhIKCmNvbnRyb2xsZXIYASABKAkSMAoHZXhwaXJlcxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBAUIKCghfZXhwaXJlcyKvAgoITGlmZXRpbWUSLQoEZnJvbRgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBARIuCgV1bnRpbBgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAYgBARIuCgVmcmVzaBgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAogBARIzCgpjb21wb25lbnRzGAQgAygLMh8ud29ybGQuTGlmZXRpbWUuQ29tcG9uZW50c0VudHJ5GkIKD0NvbXBvbmVudHNFbnRyeRILCgNrZXkYASABKAUSHgoFdmFsdWUYAiABKAsyDy53b3JsZC5MaWZldGltZToCOAFCBwoFX2Zyb21CCAoGX3VudGlsQggKBl9mcmVzaCIXCgdDaGFubmVsEgwKBG5hbWUYASABKAkiKwoHUm91dGluZxIgCghjaGFubmVscxgBIAMoCzIOLndvcmxkLkNoYW5uZWwinwEKE0dlb1NwYXRpYWxDb21wb25lbnQSEQoJbG9uZ2l0dWRlGAEgASgBEhAKCGxhdGl0dWRlGAIgASgBEhUKCGFsdGl0dWRlGAMgASgBSACIAQESMAoKY292YXJpYW5jZRgEIAEoCzIXLndvcmxkLkNvdmFyaWFuY2VNYXRyaXhIAYgBAUILCglfYWx0aXR1ZGVCDQoLX2NvdmFyaWFuY2UiJgoPU3ltYm9sQ29tcG9uZW50EhMKC21pbFN0ZDI1MjVDGAEgASgJImIKFkludGVyYWN0aXZpdHlDb21wb25lbnQSEQoEaWNvbhgBIAEoCUgAiAEBEhoKDXJlZmVyZW5jZV91cmwYAyABKAlIAYgBAUIHCgVfaWNvbkIQCg5fcmVmZXJlbmNlX3VybCLKAQoLTWVkaWFTdHJlYW0SDQoFbGFiZWwYASABKAkSCwoDdXJsGAIgASgJEiwKCHByb3RvY29sGAMgASgOMhoud29ybGQuTWVkaWFTdHJlYW1Qcm90b2NvbBIkCgRyb2xlGAkgASgOMhYud29ybGQuTWVkaWFTdHJlYW1Sb2xlEg0KBWNvZGVjGAogASgJEhIKBXdpZHRoGAsgASgFSACIAQESEwoGaGVpZ2h0GAwgASgFSAGIAQFCCAoGX3dpZHRoQgkKB19oZWlnaHQijgIKD0NhbWVyYUNvbXBvbmVudBIjCgdzdHJlYW1zGAEgAygLMhIud29ybGQuTWVkaWFTdHJlYW0SGAoLZm9jYWxfcG9pbnQYAiABKAlIAIgBARIQCgNmb3YYAyABKAFIAYgBARIWCglyYW5nZV9taW4YBCABKAFIAogBARIWCglyYW5nZV9tYXgYBSABKAFIA4gBARIVCghmb3Zfd2lkZRgGIAEoAUgEiAEBEhUKCGZvdl90ZWxlGAcgASgBSAWIAQFCDgoMX2ZvY2FsX3BvaW50QgYKBF9mb3ZCDAoKX3JhbmdlX21pbkIMCgpfcmFuZ2VfbWF4QgsKCV9mb3Zfd2lkZUILCglfZm92X3RlbGUiwAEKEkRldGVjdGlvbkNvbXBvbmVudBIdChBkZXRlY3RvckVudGl0eUlkGAEgASgJSACIAQESGwoOY2xhc3NpZmljYXRpb24YAiABKAlIAYgBARI1CgxsYXN0TWVhc3VyZWQYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAKIAQFCEwoRX2RldGVjdG9yRW50aXR5SWRCEQoPX2NsYXNzaWZpY2F0aW9uQg8KDV9sYXN0TWVhc3VyZWQiWgoQQmVhcmluZ0NvbXBvbmVudBIUCgdhemltdXRoGAEgASgBSACIAQESFgoJZWxldmF0aW9uGAIgASgBSAGIAQFCCgoIX2F6aW11dGhCDAoKX2VsZXZhdGlvbiIjCg9TZW5zb3JDb21wb25lbnQSEAoIY292ZXJhZ2UYAiADKAkiOAoKUXVhdGVybmlvbhIJCgF4GAEgASgBEgkKAXkYAiABKAESCQoBehgDIAEoARIJCgF3GAQgASgBIq4BChBDb3ZhcmlhbmNlTWF0cml4EhAKA214eBgBIAEoAUgAiAEBEhAKA214eRgCIAEoAUgBiAEBEhAKA214ehgDIAEoAUgCiAEBEhAKA215eRgEIAEoAUgDiAEBEhAKA215ehgFIAEoAUgEiAEBEhAKA216ehgGIAEoAUgFiAEBQgYKBF9teHhCBgoEX214eUIGCgRfbXh6QgYKBF9teXlCBgoEX215ekIGCgRfbXp6IswBCg9DYXJ0ZXNpYW5PZmZzZXQSDgoGZWFzdF9tGAEgASgBEg8KB25vcnRoX20YAiABKAESEQoEdXBfbRgDIAEoAUgAiAEBEjAKCmNvdmFyaWFuY2UYBCABKAsyFy53b3JsZC5Db3ZhcmlhbmNlTWF0cml4SAGIAQESKwoLb3JpZW50YXRpb24YBSABKAsyES53b3JsZC5RdWF0ZXJuaW9uSAKIAQFCBwoFX3VwX21CDQoLX2NvdmFyaWFuY2VCDgoMX29yaWVudGF0aW9uIoIDCgtQb2xhck9mZnNldBIPCgdhemltdXRoGAEgASgBEhYKCWVsZXZhdGlvbhgCIAEoAUgAiAEBEhIKBXJhbmdlGAMgASgBSAGIAQESNAoKY292YXJpYW5jZRgEIAEoCzIXLndvcmxkLkNvdmFyaWFuY2VNYXRyaXhCAhgBSAKIAQESHgoRYXppbXV0aF9lcnJvcl9kZWcYCiABKAFIA4gBARIgChNlbGV2YXRpb25fZXJyb3JfZGVnGAsgASgBSASIAQESGgoNcmFuZ2VfZXJyb3JfbRgMIAEoAUgFiAEBEisKC29yaWVudGF0aW9uGAUgASgLMhEud29ybGQuUXVhdGVybmlvbkgGiAEBQgwKCl9lbGV2YXRpb25CCAoGX3JhbmdlQg0KC19jb3ZhcmlhbmNlQhQKEl9hemltdXRoX2Vycm9yX2RlZ0IWChRfZWxldmF0aW9uX2Vycm9yX2RlZ0IQCg5fcmFuZ2VfZXJyb3JfbUIOCgxfb3JpZW50YXRpb24iewoNUG9zZUNvbXBvbmVudBIOCgZwYXJlbnQYASABKAkSKwoJY2FydGVzaWFuGAIgASgLMhYud29ybGQuQ2FydGVzaWFuT2Zmc2V0SAASIwoFcG9sYXIYAyABKAsyEi53b3JsZC5Qb2xhck9mZnNldEgAQggKBm9mZnNldCJxChNUYXJnZXRQb3NlQ29tcG9uZW50EisKCWNhcnRlc2lhbhgBIAEoCzIWLndvcmxkLkNhcnRlc2lhbk9mZnNldEgAEiMKBXBvbGFyGAIgASgLMhIud29ybGQuUG9sYXJPZmZzZXRIAEIICgZvZmZzZXQiSgoPQW5ndWxhclZlbG9jaXR5EhEKCXJvbGxfcmF0ZRgBIAEoARISCgpwaXRjaF9yYXRlGAIgASgBEhAKCHlhd19yYXRlGAMgASgBIn8KFE9yaWVudGF0aW9uQ29tcG9uZW50EiYKC29yaWVudGF0aW9uGAEgASgLMhEud29ybGQuUXVhdGVybmlvbhIwCgpjb3ZhcmlhbmNlGAIgASgLMhcud29ybGQuQ292YXJpYW5jZU1hdHJpeEgAiAEBQg0KC19jb3ZhcmlhbmNlIpABCg5UcmFja0NvbXBvbmVudBIUCgd0cmFja2VyGAEgASgJSACIAQESFAoHaGlzdG9yeRgCIAEoCUgBiAEBEhcKCnByZWRpY3Rpb24YAyABKAlIAogBARISCgpkZXRlY3Rpb25zGAQgAygJQgoKCF90cmFja2VyQgoKCF9oaXN0b3J5Qg0KC19wcmVkaWN0aW9uIisKEExvY2F0b3JDb21wb25lbnQSFwoPbG9jYXRlZEVudGl0eUlkGAEgASgJIjUKD1Rhc2thYmxlQ29udGV4dBIVCghlbnRpdHlJZBgBIAEoCUgAiAEBQgsKCV9lbnRpdHlJZCI2ChBUYXNrYWJsZUFzc2lnbmVlEhUKCGVudGl0eUlkGAEgASgJSACIAQFCCwoJX2VudGl0eUlkIvUBChFUYXNrYWJsZUNvbXBvbmVudBIVCghyZXNlcnZlZBgBIAEoCUgAiAEBEhIKBWxhYmVsGAIgASgJSAGIAQESJwoHY29udGV4dBgDIAMoCzIWLndvcmxkLlRhc2thYmxlQ29udGV4dBIpCghhc3NpZ25lZRgEIAMoCzIXLndvcmxkLlRhc2thYmxlQXNzaWduZWUSJwoGc2NoZW1hGAUgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIhCgRtb2RlGAYgASgOMhMud29ybGQuVGFza2FibGVNb2RlQgsKCV9yZXNlcnZlZEIICgZfbGFiZWwi1QEKFlRhc2tFeGVjdXRpb25Db21wb25lbnQSDAoEdGFzaxgBIAEoCRIwCgpwYXJhbWV0ZXJzGAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAiAEBEigKBXN0YXRlGAMgASgOMhkud29ybGQuVGFza0V4ZWN1dGlvblN0YXRlEhMKBnJlYXNvbhgEIAEoCUgBiAEBEhUKCHByaW9yaXR5GAUgASgNSAKIAQFCDQoLX3BhcmFtZXRlcnNCCQoHX3JlYXNvbkILCglfcHJpb3JpdHkiogEKDUtpbmVtYXRpY3NFbnUSEQoEZWFzdBgBIAEoAUgAiAEBEhIKBW5vcnRoGAIgASgBSAGIAQESDwoCdXAYAyABKAFIAogBARIwCgpjb3ZhcmlhbmNlGAQgASgLMhcud29ybGQuQ292YXJpYW5jZU1hdHJpeEgDiAEBQgcKBV9lYXN0QggKBl9ub3J0aEIFCgNfdXBCDQoLX2NvdmFyaWFuY2Ui7wEKE0tpbmVtYXRpY3NDb21wb25lbnQSLgoLdmVsb2NpdHlFbnUYASABKAsyFC53b3JsZC5LaW5lbWF0aWNzRW51SACIAQESMgoPYWNjZWxlcmF0aW9uRW51GAIgASgLMhQud29ybGQuS2luZW1hdGljc0VudUgBiAEBEjgKE2FuZ3VsYXJWZWxvY2l0eUJvZHkYAyABKAsyFi53b3JsZC5Bbmd1bGFyVmVsb2NpdHlIAogBAUIOCgxfdmVsb2NpdHlFbnVCEgoQX2FjY2VsZXJhdGlvbkVudUIWChRfYW5ndWxhclZlbG9jaXR5Qm9keSJCCghHZW9tZXRyeRIPCgN3a2IYASABKAxCAhgBEiUKBnBsYW5hchgCIAEoCzIVLndvcmxkLlBsYW5hckdlb21ldHJ5IkgKEUdlb1NoYXBlQ29tcG9uZW50EiYKCGdlb21ldHJ5GAEgASgLMg8ud29ybGQuR2VvbWV0cnlIAIgBAUILCglfZ2VvbWV0cnkiZAoTTG9jYWxTaGFwZUNvbXBvbmVudBITCgtyZWxhdGl2ZV90bxgCIAEoCRIrCghnZW9tZXRyeRgBIAEoCzIULndvcmxkLkxvY2FsR2VvbWV0cnlIAIgBAUILCglfZ2VvbWV0cnkiqAEKF0NsYXNzaWZpY2F0aW9uQ29tcG9uZW50EjwKCWRpbWVuc2lvbhgBIAEoDjIkLndvcmxkLkNsYXNzaWZpY2F0aW9uQmF0dGxlRGltZW5zaW9uSACIAQESNAoIaWRlbnRpdHkYAiABKA4yHS53b3JsZC5DbGFzc2lmaWNhdGlvbklkZW50aXR5SAGIAQFCDAoKX2RpbWVuc2lvbkILCglfaWRlbnRpdHkilAEKDlRyYW5zcG9uZGVyQUlTEhEKBG1tc2kYASABKA1IAIgBARIQCgNpbW8YAiABKA1IAYgBARIVCghjYWxsc2lnbhgDIAEoCUgCiAEBEhgKC3Zlc3NlbF9uYW1lGAQgASgJSAOIAQFCBwoFX21tc2lCBgoEX2ltb0ILCglfY2FsbHNpZ25CDgoMX3Zlc3NlbF9uYW1lImMKD1RyYW5zcG9uZGVyQURTQhIZCgxpY2FvX2FkZHJlc3MYASABKA1IAIgBARIWCglmbGlnaHRfaWQYAiABKAlIAYgBAUIPCg1faWNhb19hZGRyZXNzQgwKCl9mbGlnaHRfaWQiewoUVHJhbnNwb25kZXJDb21wb25lbnQSJwoDYWlzGAEgASgLMhUud29ybGQuVHJhbnNwb25kZXJBSVNIAIgBARIpCgRhZHNiGAIgASgLMhYud29ybGQuVHJhbnNwb25kZXJBRFNCSAGIAQFCBgoEX2Fpc0IHCgVfYWRzYiLbAgoXQWRtaW5pc3RyYXRpdmVDb21wb25lbnQSDwoCaWQYASABKAlIAIgBARIRCgRmbGFnGAIgASgJSAGIAQESEgoFb3duZXIYAyABKAlIAogBARIZCgxtYW51ZmFjdHVyZXIYBCABKAlIA4gBARISCgVtb2RlbBgFIAEoCUgEiAEBEhcKCnllYXJfYnVpbHQYBiABKA1IBYgBARIVCghsZW5ndGhfbRgHIAEoAkgGiAEBEhcKCnRvbm5hZ2VfZ3QYCCABKAJIB4gBARIcCg9lbmdpbmVfcG93ZXJfa3cYCSABKAJICIgBAUIFCgNfaWRCBwoFX2ZsYWdCCAoGX293bmVyQg8KDV9tYW51ZmFjdHVyZXJCCAoGX21vZGVsQg0KC195ZWFyX2J1aWx0QgsKCV9sZW5ndGhfbUINCgtfdG9ubmFnZV9ndEISChBfZW5naW5lX3Bvd2VyX2t3IvABChNOYXZpZ2F0aW9uQ29tcG9uZW50EigKBG1vZGUYASABKA4yFS53b3JsZC5OYXZpZ2F0aW9uTW9kZUgAiAEBEhIKBWFybWVkGAIgASgISAGIAQESFgoJZW1lcmdlbmN5GAMgASgISAKIAQESHQoQd2F5cG9pbnRfY3VycmVudBgEIAEoDUgDiAEBEhsKDndheXBvaW50X3RvdGFsGAUgASgNSASIAQFCBwoFX21vZGVCCAoGX2FybWVkQgwKCl9lbWVyZ2VuY3lCEwoRX3dheXBvaW50X2N1cnJlbnRCEQoPX3dheXBvaW50X3RvdGFsIq0BChBNaXNzaW9uQ29tcG9uZW50Eg8KB21lbWJlcnMYASADKAkSGAoLZGVzY3JpcHRpb24YAiABKAlIAIgBARIYCgtkZXN0aW5hdGlvbhgDIAEoCUgBiAEBEiwKA2V0YRgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAogBAUIOCgxfZGVzY3JpcHRpb25CDgoMX2Rlc3RpbmF0aW9uQgYKBF9ldGEixAIKDUxpbmtDb21wb25lbnQSJgoGc3RhdHVzGAEgASgOMhEud29ybGQuTGlua1N0YXR1c0gAiAEBEhUKCHJzc2lfZGJtGAIgASgRSAGIAQESEwoGc25yX2RiGAMgASgRSAKIAQESEAoDdmlhGAUgASgJSAOIAQESHAoPbGFzdF9sYXRlbmN5X21zGAYgASgNSASIAQESGwoOYXZnX2xhdGVuY3lfbXMYByABKA1IBYgBARIyCglsYXN0X3NlZW4YCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAaIAQFCCQoHX3N0YXR1c0ILCglfcnNzaV9kYm1CCQoHX3Nucl9kYkIGCgRfdmlhQhIKEF9sYXN0X2xhdGVuY3lfbXNCEQoPX2F2Z19sYXRlbmN5X21zQgwKCl9sYXN0X3NlZW4i7AEKEENhcHR1cmVDb21wb25lbnQSFAoHcGF5bG9hZBgBIAEoDEgAiAEBEhEKBHBvcnQYAiABKA1IAYgBARIZCgxjb250ZW50X3R5cGUYAyABKAlIAogBARIYCgtjYXB0dXJlZF9ieRgEIAEoCUgDiAEBEjQKC2NhcHR1cmVkX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgEiAEBQgoKCF9wYXlsb2FkQgcKBV9wb3J0Qg8KDV9jb250ZW50X3R5cGVCDgoMX2NhcHR1cmVkX2J5Qg4KDF9jYXB0dXJlZF9hdCKsAQoOUG93ZXJDb21wb25lbnQSJQoYYmF0dGVyeV9jaGFyZ2VfcmVtYWluaW5nGAEgASgCSACIAQESFAoHdm9sdGFnZRgCIAEoAkgBiAEBEh4KEXJlbWFpbmluZ19zZWNvbmRzGAMgASgNSAKIAQFCGwoZX2JhdHRlcnlfY2hhcmdlX3JlbWFpbmluZ0IKCghfdm9sdGFnZUIUChJfcmVtYWluaW5nX3NlY29uZHMiMQoRRGV2aWNlQ2xhc3NPcHRpb24SDQoFY2xhc3MYASABKAkSDQoFbGFiZWwYAiABKAki6gIKFUNvbmZpZ3VyYWJsZUNvbXBvbmVudBInCgZzY2hlbWEYASABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EiYKBXZhbHVlGAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBInCgVzdGF0ZRgDIAEoDjIYLndvcmxkLkNvbmZpZ3VyYWJsZVN0YXRlEhIKBWVycm9yGAQgASgJSACIAQESEgoFbGFiZWwYBSABKAlIAYgBARIXCg9hcHBsaWVkX3ZlcnNpb24YBiABKAQSOgoYc3VwcG9ydGVkX2RldmljZV9jbGFzc2VzGAcgAygLMhgud29ybGQuRGV2aWNlQ2xhc3NPcHRpb24SNQoMc2NoZWR1bGVkX2F0GAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgCiAEBQggKBl9lcnJvckIICgZfbGFiZWxCDwoNX3NjaGVkdWxlZF9hdCKUBQoPRGV2aWNlQ29tcG9uZW50EhMKBnBhcmVudBgBIAEoCUgAiAEBEhMKC2NvbXBvc2l0aW9uGAIgAygJEh8KEnVuaXF1ZV9oYXJkd2FyZV9pZBgEIAEoCUgBiAEBEiEKBXN0YXRlGAYgASgOMhIud29ybGQuRGV2aWNlU3RhdGUSEgoFZXJyb3IYByABKAlIAogBARISCgVjbGFzcxgKIAEoCUgDiAEBEhUKCGNhdGVnb3J5GA0gASgJSASIAQESJAoEbm9kZRgUIAEoCzIRLndvcmxkLk5vZGVEZXZpY2VIBYgBARIiCgN1c2IYFSABKAsyEC53b3JsZC5Vc2JEZXZpY2VIBogBARIgCgJpcBgWIAEoCzIPLndvcmxkLklwRGV2aWNlSAeIAQESKAoGc2VyaWFsGBcgASgLMhMud29ybGQuU2VyaWFsRGV2aWNlSAiIAQESLAoIZXRoZXJuZXQYGCABKAsyFS53b3JsZC5FdGhlcm5ldERldmljZUgJiAEBEiYKBWxwd2FuGBkgASgLMhIud29ybGQuTFBXQU5EZXZpY2VICogBARIwCgptZXNodGFzdGljGBogASgLMhcud29ybGQuTWVzaHRhc3RpY0RldmljZUgLiAEBEiIKA2JsZRgbIAEoCzIQLndvcmxkLkJsZURldmljZUgMiAEBQgkKB19wYXJlbnRCFQoTX3VuaXF1ZV9oYXJkd2FyZV9pZEIICgZfZXJyb3JCCAoGX2NsYXNzQgsKCV9jYXRlZ29yeUIHCgVfbm9kZUIGCgRfdXNiQgUKA19pcEIJCgdfc2VyaWFsQgsKCV9ldGhlcm5ldEIICgZfbHB3YW5CDQoLX21lc2h0YXN0aWNCBgoEX2JsZSKgAgoKTm9kZURldmljZRIVCghob3N0bmFtZRgBIAEoCUgAiAEBEg8KAm9zGAIgASgJSAGIAQESEQoEYXJjaBgDIAEoCUgCiAEBEhQKB251bV9jcHUYBCABKA1IA4gBARIXCgpvc192ZXJzaW9uGAUgASgJSASIAQESGwoOaHlkcmlzX3ZlcnNpb24YBiABKAlIBYgBARIkChdoeWRyaXNfdXBkYXRlX2F2YWlsYWJsZRgHIAEoCUgGiAEBQgsKCV9ob3N0bmFtZUIFCgNfb3NCBwoFX2FyY2hCCgoIX251bV9jcHVCDQoLX29zX3ZlcnNpb25CEQoPX2h5ZHJpc192ZXJzaW9uQhoKGF9oeWRyaXNfdXBkYXRlX2F2YWlsYWJsZSL5AgoJVXNiRGV2aWNlEhYKCXZlbmRvcl9pZBgBIAEoDUgAiAEBEhcKCnByb2R1Y3RfaWQYAiABKA1IAYgBARIZCgxkZXZpY2VfY2xhc3MYAyABKA1IAogBARIcCg9kZXZpY2Vfc3ViY2xhc3MYBCABKA1IA4gBARIcCg9kZXZpY2VfcHJvdG9jb2wYBSABKA1IBIgBARIeChFtYW51ZmFjdHVyZXJfbmFtZRgGIAEoCUgFiAEBEhkKDHByb2R1Y3RfbmFtZRgHIAEoCUgGiAEBEhoKDXNlcmlhbF9udW1iZXIYCCABKAlIB4gBAUIMCgpfdmVuZG9yX2lkQg0KC19wcm9kdWN0X2lkQg8KDV9kZXZpY2VfY2xhc3NCEgoQX2RldmljZV9zdWJjbGFzc0ISChBfZGV2aWNlX3Byb3RvY29sQhQKEl9tYW51ZmFjdHVyZXJfbmFtZUIPCg1fcHJvZHVjdF9uYW1lQhAKDl9zZXJpYWxfbnVtYmVyIkIKCElwRGV2aWNlEhEKBGhvc3QYASABKAlIAIgBARIRCgRwb3J0GAIgASgNSAGIAQFCBwoFX2hvc3RCBwoFX3BvcnQiWgoORXRoZXJuZXREZXZpY2USGAoLbWFjX2FkZHJlc3MYASABKAlIAIgBARITCgZ2ZW5kb3IYAiABKAlIAYgBAUIOCgxfbWFjX2FkZHJlc3NCCQoHX3ZlbmRvciJQCgxTZXJpYWxEZXZpY2USEQoEcGF0aBgBIAEoCUgAiAEBEhYKCWJhdWRfcmF0ZRgCIAEoDUgBiAEBQgcKBV9wYXRoQgwKCl9iYXVkX3JhdGUi3AEKEE1lc2h0YXN0aWNEZXZpY2USFQoIbm9kZV9udW0YASABKA1IAIgBARIWCglsb25nX25hbWUYAiABKAlIAYgBARIXCgpzaG9ydF9uYW1lGAMgASgJSAKIAQESGwoOaGFyZHdhcmVfbW9kZWwYBCABKAlIA4gBARIXCgpwdWJsaWNfa2V5GAUgASgMSASIAQFCCwoJX25vZGVfbnVtQgwKCl9sb25nX25hbWVCDQoLX3Nob3J0X25hbWVCEQoPX2hhcmR3YXJlX21vZGVsQg0KC19wdWJsaWNfa2V5IkkKC0xQV0FORGV2aWNlEhAKA2V1aRgBIAEoCUgAiAEBEhQKB2FkZHJlc3MYAiABKAlIAYgBAUIGCgRfZXVpQgoKCF9hZGRyZXNzImAKCUJsZURldmljZRIUCgdhZGRyZXNzGAEgASgJSACIAQESEQoEbmFtZRgCIAEoCUgBiAEBEhUKDXNlcnZpY2VfdXVpZHMYBCADKAlCCgoIX2FkZHJlc3NCBwoFX25hbWUiUQoWQ29uZmlndXJhdGlvbkNvbXBvbmVudBImCgV2YWx1ZRgDIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSDwoHdmVyc2lvbhgFIAEoBCKgAQoNQ2hhdENvbXBvbmVudBITCgZzZW5kZXIYASABKAlIAIgBARIPCgJ0bxgDIAEoCUgBiAEBEg8KB21lc3NhZ2UYBCABKAkSFQoIcmVwbHlfdG8YBSABKAlIAogBARIVCghyZWFjdGlvbhgGIAEoCEgDiAEBQgkKB19zZW5kZXJCBQoDX3RvQgsKCV9yZXBseV90b0ILCglfcmVhY3Rpb24i1QQKDEVudGl0eUZpbHRlchIPCgJpZBgBIAEoCUgAiAEBEhIKBWxhYmVsGAIgASgJSAGIAQESIgoDZ2VvGAMgASgLMhAud29ybGQuR2VvRmlsdGVySAKIAQESLAoIdGFza2FibGUYBCABKAsyFS53b3JsZC5UYXNrYWJsZUZpbHRlckgDiAEBEhEKCWNvbXBvbmVudBgFIAMoDRIwCgpjb250cm9sbGVyGAcgASgLMhcud29ybGQuQ29udHJvbGxlckZpbHRlckgEiAEBEiYKBXRyYWNrGAggASgLMhIud29ybGQuVHJhY2tGaWx0ZXJIBYgBARIqCgdtaXNzaW9uGAkgASgLMhQud29ybGQuTWlzc2lvbkZpbHRlckgGiAEBEioKB2NoYW5uZWwYCiABKAsyFC53b3JsZC5DaGFubmVsRmlsdGVySAeIAQESKAoGZGV2aWNlGDIgASgLMhMud29ybGQuRGV2aWNlRmlsdGVySAiIAQESLwoGY29uZmlnGDMgASgLMhoud29ybGQuQ29uZmlndXJhdGlvbkZpbHRlckgJiAEBEh8KAm9yGGQgAygLMhMud29ybGQuRW50aXR5RmlsdGVyEiAKA25vdBhlIAEoCzITLndvcmxkLkVudGl0eUZpbHRlckIFCgNfaWRCCAoGX2xhYmVsQgYKBF9nZW9CCwoJX3Rhc2thYmxlQg0KC19jb250cm9sbGVyQggKBl90cmFja0IKCghfbWlzc2lvbkIKCghfY2hhbm5lbEIJCgdfZGV2aWNlQgkKB19jb25maWciKgoQQ29udHJvbGxlckZpbHRlchIPCgJpZBgBIAEoCUgAiAEBQgUKA19pZCIvCgtUcmFja0ZpbHRlchIUCgd0cmFja2VyGAEgASgJSACIAQFCCgoIX3RyYWNrZXIiXQoNTWlzc2lvbkZpbHRlchIXCgptaXNzaW9uX2lkGAEgASgJSACIAQESFgoJbWVtYmVyX2lkGAIgASgJSAGIAQFCDQoLX21pc3Npb25faWRCDAoKX21lbWJlcl9pZCKHAQoOVGFza2FibGVGaWx0ZXISLAoHY29udGV4dBgBIAEoCzIWLndvcmxkLlRhc2thYmxlQ29udGV4dEgAiAEBEi4KCGFzc2lnbmVlGAIgASgLMhcud29ybGQuVGFza2FibGVBc3NpZ25lZUgBiAEBQgoKCF9jb250ZXh0QgsKCV9hc3NpZ25lZSJOCglHZW9GaWx0ZXISIwoIZ2VvbWV0cnkYASABKAsyDy53b3JsZC5HZW9tZXRyeUgAEhUKC2dlb0VudGl0eUlkGAIgASgJSABCBQoDZ2VvIvYBCgxEZXZpY2VGaWx0ZXISEwoGcGFyZW50GAEgASgJSACIAQESHwoSdW5pcXVlX2hhcmR3YXJlX2lkGAQgASgJSAGIAQESGQoMZGV2aWNlX2NsYXNzGAUgASgJSAKIAQESKAoDYmxlGAYgASgLMhYud29ybGQuQmxlRGV2aWNlRmlsdGVySAOIAQESKAoDdXNiGAcgASgLMhYud29ybGQuVXNiRGV2aWNlRmlsdGVySASIAQFCCQoHX3BhcmVudEIVChNfdW5pcXVlX2hhcmR3YXJlX2lkQg8KDV9kZXZpY2VfY2xhc3NCBgoEX2JsZUIGCgRfdXNiImYKD0JsZURldmljZUZpbHRlchIUCgdhZGRyZXNzGAEgASgJSACIAQESEQoEbmFtZRgCIAEoCUgBiAEBEhUKDXNlcnZpY2VfdXVpZHMYBCADKAlCCgoIX2FkZHJlc3NCBwoFX25hbWUi/wIKD1VzYkRldmljZUZpbHRlchIWCgl2ZW5kb3JfaWQYASABKA1IAIgBARIXCgpwcm9kdWN0X2lkGAIgASgNSAGIAQESGQoMZGV2aWNlX2NsYXNzGAMgASgNSAKIAQESHAoPZGV2aWNlX3N1YmNsYXNzGAQgASgNSAOIAQESHAoPZGV2aWNlX3Byb3RvY29sGAUgASgNSASIAQESHgoRbWFudWZhY3R1cmVyX25hbWUYBiABKAlIBYgBARIZCgxwcm9kdWN0X25hbWUYByABKAlIBogBARIaCg1zZXJpYWxfbnVtYmVyGAggASgJSAeIAQFCDAoKX3ZlbmRvcl9pZEINCgtfcHJvZHVjdF9pZEIPCg1fZGV2aWNlX2NsYXNzQhIKEF9kZXZpY2Vfc3ViY2xhc3NCEgoQX2RldmljZV9wcm90b2NvbEIUChJfbWFudWZhY3R1cmVyX25hbWVCDwoNX3Byb2R1Y3RfbmFtZUIQCg5fc2VyaWFsX251bWJlciIVChNDb25maWd1cmF0aW9uRmlsdGVyIh0KDUNoYW5uZWxGaWx0ZXISDAoEbmFtZRgBIAEoCSK0AQoNV2F0Y2hCZWhhdmlvchIYCgttYXhfcmF0ZV9oehgBIAEoAkgAiAEBEioKDG1pbl9wcmlvcml0eRgDIAEoDjIPLndvcmxkLlByaW9yaXR5SAGIAQESIgoVa2VlcGFsaXZlX2ludGVydmFsX21zGAQgASgNSAKIAQFCDgoMX21heF9yYXRlX2h6Qg8KDV9taW5fcHJpb3JpdHlCGAoWX2tlZXBhbGl2ZV9pbnRlcnZhbF9tcyJ8ChNMaXN0RW50aXRpZXNSZXF1ZXN0EiMKBmZpbHRlchgCIAEoCzITLndvcmxkLkVudGl0eUZpbHRlchIsCgliZWhhdmlvdXIYBCABKAsyFC53b3JsZC5XYXRjaEJlaGF2aW9ySACIAQFCDAoKX2JlaGF2aW91ckoECAEQAiI3ChRMaXN0RW50aXRpZXNSZXNwb25zZRIfCghlbnRpdGllcxgBIAMoCzINLndvcmxkLkVudGl0eSJaChNFbnRpdHlDaGFuZ2VSZXF1ZXN0Eh4KB2NoYW5nZXMYASADKAsyDS53b3JsZC5FbnRpdHkSIwoMcmVwbGFjZW1lbnRzGAIgAygLMg0ud29ybGQuRW50aXR5IiEKE0V4cGlyZUVudGl0eVJlcXVlc3QSCgoCaWQYASABKAkiFgoURXhwaXJlRW50aXR5UmVzcG9uc2UiNwoURW50aXR5Q2hhbmdlUmVzcG9uc2USEAoIYWNjZXB0ZWQYASABKAgSDQoFZGVidWcYAiABKAkiUgoRRW50aXR5Q2hhbmdlRXZlbnQSHQoGZW50aXR5GAEgASgLMg0ud29ybGQuRW50aXR5Eh4KAXQYAiABKA4yEy53b3JsZC5FbnRpdHlDaGFuZ2UiPQoRRW50aXR5Q2hhbmdlQmF0Y2gSKAoGZXZlbnRzGAEgAygLMhgud29ybGQuRW50aXR5Q2hhbmdlRXZlbnQiHgoQR2V0RW50aXR5UmVxdWVzdBIKCgJpZBgBIAEoCSIyChFHZXRFbnRpdHlSZXNwb25zZRIdCgZlbnRpdHkYASABKAsyDS53b3JsZC5FbnRpdHkiFQoTR2V0TG9jYWxOb2RlUmVxdWVzdCJGChRHZXRMb2NhbE5vZGVSZXNwb25zZRIdCgZlbnRpdHkYASABKAsyDS53b3JsZC5FbnRpdHkSDwoHbm9kZV9pZBgCIAEoCSIRCg9PYnNlcnZlclJlcXVlc3QicwoNT2JzZXJ2ZXJTdGF0ZRIcCgNnZW8YASABKAsyDy53b3JsZC5HZW9tZXRyeRI0Cgt2aWV3SGlzdG9yeRgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBAUIOCgxfdmlld0hpc3RvcnkiRgoOUnVuVGFza1JlcXVlc3QSEAoIZW50aXR5SWQYASABKAkSFQoIcHJpb3JpdHkYAiABKA1IAIgBAUILCglfcHJpb3JpdHkigwEKD1J1blRhc2tSZXNwb25zZRITCgtleGVjdXRpb25JZBgBIAEoCRIhCgZzdGF0dXMYAiABKA4yES53b3JsZC5UYXNrU3RhdHVzEiAKE2h1bWFuUmVhZGFibGVSZWFzb24YAyABKAlIAIgBAUIWChRfaHVtYW5SZWFkYWJsZVJlYXNvbiISChBIYXJkUmVzZXRSZXF1ZXN0IhMKEUhhcmRSZXNldFJlc3BvbnNlKmIKCFByaW9yaXR5EhcKE1ByaW9yaXR5VW5zcGVjaWZpZWQQABITCg9Qcmlvcml0eVJvdXRpbmUQARIVChFQcmlvcml0eUltbWVkaWF0ZRACEhEKDVByaW9yaXR5Rmxhc2gQAyrsAQoTTWVkaWFTdHJlYW1Qcm90b2NvbBIiCh5NZWRpYVN0cmVhbVByb3RvY29sVW5zcGVjaWZpZWQQABIdChlNZWRpYVN0cmVhbVByb3RvY29sV2VicnRjEAESGgoWTWVkaWFTdHJlYW1Qcm90b2NvbEhscxACEhwKGE1lZGlhU3RyZWFtUHJvdG9jb2xNanBlZxADEhwKGE1lZGlhU3RyZWFtUHJvdG9jb2xJbWFnZRAEEh0KGU1lZGlhU3RyZWFtUHJvdG9jb2xJZnJhbWUQBRIbChdNZWRpYVN0cmVhbVByb3RvY29sUnRzcBAGKn8KD01lZGlhU3RyZWFtUm9sZRIeChpNZWRpYVN0cmVhbVJvbGVVbnNwZWNpZmllZBAAEhcKE01lZGlhU3RyZWFtUm9sZU1haW4QARIWChJNZWRpYVN0cmVhbVJvbGVTdWIQAhIbChdNZWRpYVN0cmVhbVJvbGVTbmFwc2hvdBADKnoKDFRhc2thYmxlTW9kZRIZChVUYXNrYWJsZU1vZGVFeGNsdXNpdmUQABIZChVUYXNrYWJsZU1vZGVSZWNvbmNpbGUQARIVChFUYXNrYWJsZU1vZGVTcGF3bhACEh0KGVRhc2thYmxlTW9kZVByaW9yaXR5UXVldWUQAyqRAQoSVGFza0V4ZWN1dGlvblN0YXRlEh0KGVRhc2tFeGVjdXRpb25TdGF0ZVBlbmRpbmcQABIdChlUYXNrRXhlY3V0aW9uU3RhdGVSdW5uaW5nEAESHwobVGFza0V4ZWN1dGlvblN0YXRlQ29tcGxldGVkEAISHAoYVGFza0V4ZWN1dGlvblN0YXRlRmFpbGVkEAMqjAIKFkNsYXNzaWZpY2F0aW9uSWRlbnRpdHkSIQodQ2xhc3NpZmljYXRpb25JZGVudGl0eUludmFsaWQQABIhCh1DbGFzc2lmaWNhdGlvbklkZW50aXR5UGVuZGluZxABEiEKHUNsYXNzaWZpY2F0aW9uSWRlbnRpdHlVbmtub3duEAISIAocQ2xhc3NpZmljYXRpb25JZGVudGl0eUZyaWVuZBADEiEKHUNsYXNzaWZpY2F0aW9uSWRlbnRpdHlOZXV0cmFsEAQSIQodQ2xhc3NpZmljYXRpb25JZGVudGl0eUhvc3RpbGUQBRIhCh1DbGFzc2lmaWNhdGlvbklkZW50aXR5U3VzcGVjdBAGKsQCCh1DbGFzc2lmaWNhdGlvbkJhdHRsZURpbWVuc2lvbhIoCiRDbGFzc2lmaWNhdGlvbkJhdHRsZURpbWVuc2lvbkludmFsaWQQABIoCiRDbGFzc2lmaWNhdGlvbkJhdHRsZURpbWVuc2lvblVua25vd24QARImCiJDbGFzc2lmaWNhdGlvbkJhdHRsZURpbWVuc2lvblNwYWNlEAISJAogQ2xhc3NpZmljYXRpb25CYXR0bGVEaW1lbnNpb25BaXIQAxInCiNDbGFzc2lmaWNhdGlvbkJhdHRsZURpbWVuc2lvbkdyb3VuZBAEEisKJ0NsYXNzaWZpY2F0aW9uQmF0dGxlRGltZW5zaW9uU2VhU3VyZmFjZRAFEisKJ0NsYXNzaWZpY2F0aW9uQmF0dGxlRGltZW5zaW9uU3Vic3VyZmFjZRAGKvYBCg5OYXZpZ2F0aW9uTW9kZRIdChlOYXZpZ2F0aW9uTW9kZVVuc3BlY2lmaWVkEAASGQoVTmF2aWdhdGlvbk1vZGVQbGFubmVkEAESHAoYTmF2aWdhdGlvbk1vZGVTdGF0aW9uYXJ5EAISGgoWTmF2aWdhdGlvbk1vZGVVbmRlcndheRADEhwKGE5hdmlnYXRpb25Nb2RlQXV0b25vbW91cxAEEhgKFE5hdmlnYXRpb25Nb2RlR3VpZGVkEAUSGwoXTmF2aWdhdGlvbk1vZGVMb2l0ZXJpbmcQBhIbChdOYXZpZ2F0aW9uTW9kZVJldHVybmluZxAHKmwKCkxpbmtTdGF0dXMSGQoVTGlua1N0YXR1c1Vuc3BlY2lmaWVkEAASFwoTTGlua1N0YXR1c0Nvbm5lY3RlZBABEhYKEkxpbmtTdGF0dXNEZWdyYWRlZBACEhIKDkxpbmtTdGF0dXNMb3N0EAMqUwoLRGV2aWNlU3RhdGUSFgoSRGV2aWNlU3RhdGVQZW5kaW5nEAASFQoRRGV2aWNlU3RhdGVBY3RpdmUQARIVChFEZXZpY2VTdGF0ZUZhaWxlZBACKsoBChFDb25maWd1cmFibGVTdGF0ZRIdChlDb25maWd1cmFibGVTdGF0ZUluYWN0aXZlEAASHQoZQ29uZmlndXJhYmxlU3RhdGVTdGFydGluZxABEhsKF0NvbmZpZ3VyYWJsZVN0YXRlQWN0aXZlEAISGwoXQ29uZmlndXJhYmxlU3RhdGVGYWlsZWQQAxIdChlDb25maWd1cmFibGVTdGF0ZUNvbmZsaWN0EAQSHgoaQ29uZmlndXJhYmxlU3RhdGVTY2hlZHVsZWQQBSp1CgxFbnRpdHlDaGFuZ2USFwoTRW50aXR5Q2hhbmdlSW52YWxpZBAAEhcKE0VudGl0eUNoYW5nZVVwZGF0ZWQQARIXChNFbnRpdHlDaGFuZ2VFeHBpcmVkEAISGgoWRW50aXR5Q2hhbmdlVW5vYnNlcnZlZBADKr8ICg9FbnRpdHlDb21wb25lbnQSHgoaRW50aXR5Q29tcG9uZW50VW5zcGVjaWZpZWQQABIYChRFbnRpdHlDb21wb25lbnRMYWJlbBACEh0KGUVudGl0eUNvbXBvbmVudENvbnRyb2xsZXIQAxIbChdFbnRpdHlDb21wb25lbnRMaWZldGltZRAEEhsKF0VudGl0eUNvbXBvbmVudFByaW9yaXR5EAUSGAoURW50aXR5Q29tcG9uZW50TGVhc2UQBhIaChZFbnRpdHlDb21wb25lbnRSb3V0aW5nEAcSFgoSRW50aXR5Q29tcG9uZW50R2VvEAsSGQoVRW50aXR5Q29tcG9uZW50U3ltYm9sEAwSGQoVRW50aXR5Q29tcG9uZW50Q2FtZXJhEA8SHAoYRW50aXR5Q29tcG9uZW50RGV0ZWN0aW9uEBASGgoWRW50aXR5Q29tcG9uZW50QmVhcmluZxAREhgKFEVudGl0eUNvbXBvbmVudFRyYWNrEBUSGgoWRW50aXR5Q29tcG9uZW50TG9jYXRvchAWEhsKF0VudGl0eUNvbXBvbmVudFRhc2thYmxlEBcSHQoZRW50aXR5Q29tcG9uZW50S2luZW1hdGljcxAYEhgKFEVudGl0eUNvbXBvbmVudFNoYXBlEBkSIQodRW50aXR5Q29tcG9uZW50Q2xhc3NpZmljYXRpb24QGhIeChpFbnRpdHlDb21wb25lbnRUcmFuc3BvbmRlchAbEiEKHUVudGl0eUNvbXBvbmVudEFkbWluaXN0cmF0aXZlEBwSHQoZRW50aXR5Q29tcG9uZW50TG9jYWxTaGFwZRAdEh4KGkVudGl0eUNvbXBvbmVudE9yaWVudGF0aW9uEB4SGgoWRW50aXR5Q29tcG9uZW50TWlzc2lvbhAfEhcKE0VudGl0eUNvbXBvbmVudExpbmsQIBIYChRFbnRpdHlDb21wb25lbnRQb3dlchAhEh0KGUVudGl0eUNvbXBvbmVudE5hdmlnYXRpb24QIhIaChZFbnRpdHlDb21wb25lbnRDYXB0dXJlECMSGQoVRW50aXR5Q29tcG9uZW50TWV0cmljECQSGQoVRW50aXR5Q29tcG9uZW50U2Vuc29yECUSFwoTRW50aXR5Q29tcG9uZW50UG9zZRAmEhcKE0VudGl0eUNvbXBvbmVudENoYXQQJxIgChxFbnRpdHlDb21wb25lbnRUYXNrRXhlY3V0aW9uECkSGQoVRW50aXR5Q29tcG9uZW50RGV2aWNlEDISGQoVRW50aXR5Q29tcG9uZW50Q29uZmlnEDMSHwobRW50aXR5Q29tcG9uZW50Q29uZmlndXJhYmxlEDQSIAocRW50aXR5Q29tcG9uZW50SW50ZXJhY3Rpdml0eRA8Eh0KGUVudGl0eUNvbXBvbmVudFRhcmdldFBvc2UQPippCgpUYXNrU3RhdHVzEhUKEVRhc2tTdGF0dXNJbnZhbGlkEAASFQoRVGFza1N0YXR1c1J1bm5pbmcQARIXChNUYXNrU3RhdHVzQ29tcGxldGVkEAISFAoQVGFza1N0YXR1c0ZhaWxlZBADMq0ECgxXb3JsZFNlcnZpY2USRwoMTGlzdEVudGl0aWVzEhoud29ybGQuTGlzdEVudGl0aWVzUmVxdWVzdBobLndvcmxkLkxpc3RFbnRpdGllc1Jlc3BvbnNlEj4KCUdldEVudGl0eRIXLndvcmxkLkdldEVudGl0eVJlcXVlc3QaGC53b3JsZC5HZXRFbnRpdHlSZXNwb25zZRJHCg1XYXRjaEVudGl0aWVzEhoud29ybGQuTGlzdEVudGl0aWVzUmVxdWVzdBoYLndvcmxkLkVudGl0eUNoYW5nZUV2ZW50MAESPwoEUHVzaBIaLndvcmxkLkVudGl0eUNoYW5nZVJlcXVlc3QaGy53b3JsZC5FbnRpdHlDaGFuZ2VSZXNwb25zZRJHCgxFeHBpcmVFbnRpdHkSGi53b3JsZC5FeHBpcmVFbnRpdHlSZXF1ZXN0Ghsud29ybGQuRXhwaXJlRW50aXR5UmVzcG9uc2USRwoMR2V0TG9jYWxOb2RlEhoud29ybGQuR2V0TG9jYWxOb2RlUmVxdWVzdBobLndvcmxkLkdldExvY2FsTm9kZVJlc3BvbnNlEjgKB1J1blRhc2sSFS53b3JsZC5SdW5UYXNrUmVxdWVzdBoWLndvcmxkLlJ1blRhc2tSZXNwb25zZRI+CglIYXJkUmVzZXQSFy53b3JsZC5IYXJkUmVzZXRSZXF1ZXN0Ghgud29ybGQuSGFyZFJlc2V0UmVzcG9uc2VCIFoeZ2l0aHViLmNvbS9wcm9qZWN0cWFpL3Byb3RvL2dvYgZwcm90bzM", [file_geometry, file_google_protobuf_struct, file_google_protobuf_timestamp, file_metrics]);
|
|
15
15
|
|
|
16
16
|
/**
|
|
17
17
|
* Describes the message world.Entity.
|
|
@@ -384,215 +384,236 @@ export const MeshtasticDeviceSchema = /*@__PURE__*/
|
|
|
384
384
|
export const LPWANDeviceSchema = /*@__PURE__*/
|
|
385
385
|
messageDesc(file_world, 52);
|
|
386
386
|
|
|
387
|
+
/**
|
|
388
|
+
* Describes the message world.BleDevice.
|
|
389
|
+
* Use `create(BleDeviceSchema)` to create a new message.
|
|
390
|
+
*/
|
|
391
|
+
export const BleDeviceSchema = /*@__PURE__*/
|
|
392
|
+
messageDesc(file_world, 53);
|
|
393
|
+
|
|
387
394
|
/**
|
|
388
395
|
* Describes the message world.ConfigurationComponent.
|
|
389
396
|
* Use `create(ConfigurationComponentSchema)` to create a new message.
|
|
390
397
|
*/
|
|
391
398
|
export const ConfigurationComponentSchema = /*@__PURE__*/
|
|
392
|
-
messageDesc(file_world,
|
|
399
|
+
messageDesc(file_world, 54);
|
|
393
400
|
|
|
394
401
|
/**
|
|
395
402
|
* Describes the message world.ChatComponent.
|
|
396
403
|
* Use `create(ChatComponentSchema)` to create a new message.
|
|
397
404
|
*/
|
|
398
405
|
export const ChatComponentSchema = /*@__PURE__*/
|
|
399
|
-
messageDesc(file_world,
|
|
406
|
+
messageDesc(file_world, 55);
|
|
400
407
|
|
|
401
408
|
/**
|
|
402
409
|
* Describes the message world.EntityFilter.
|
|
403
410
|
* Use `create(EntityFilterSchema)` to create a new message.
|
|
404
411
|
*/
|
|
405
412
|
export const EntityFilterSchema = /*@__PURE__*/
|
|
406
|
-
messageDesc(file_world,
|
|
413
|
+
messageDesc(file_world, 56);
|
|
407
414
|
|
|
408
415
|
/**
|
|
409
416
|
* Describes the message world.ControllerFilter.
|
|
410
417
|
* Use `create(ControllerFilterSchema)` to create a new message.
|
|
411
418
|
*/
|
|
412
419
|
export const ControllerFilterSchema = /*@__PURE__*/
|
|
413
|
-
messageDesc(file_world,
|
|
420
|
+
messageDesc(file_world, 57);
|
|
414
421
|
|
|
415
422
|
/**
|
|
416
423
|
* Describes the message world.TrackFilter.
|
|
417
424
|
* Use `create(TrackFilterSchema)` to create a new message.
|
|
418
425
|
*/
|
|
419
426
|
export const TrackFilterSchema = /*@__PURE__*/
|
|
420
|
-
messageDesc(file_world,
|
|
427
|
+
messageDesc(file_world, 58);
|
|
421
428
|
|
|
422
429
|
/**
|
|
423
430
|
* Describes the message world.MissionFilter.
|
|
424
431
|
* Use `create(MissionFilterSchema)` to create a new message.
|
|
425
432
|
*/
|
|
426
433
|
export const MissionFilterSchema = /*@__PURE__*/
|
|
427
|
-
messageDesc(file_world,
|
|
434
|
+
messageDesc(file_world, 59);
|
|
428
435
|
|
|
429
436
|
/**
|
|
430
437
|
* Describes the message world.TaskableFilter.
|
|
431
438
|
* Use `create(TaskableFilterSchema)` to create a new message.
|
|
432
439
|
*/
|
|
433
440
|
export const TaskableFilterSchema = /*@__PURE__*/
|
|
434
|
-
messageDesc(file_world,
|
|
441
|
+
messageDesc(file_world, 60);
|
|
435
442
|
|
|
436
443
|
/**
|
|
437
444
|
* Describes the message world.GeoFilter.
|
|
438
445
|
* Use `create(GeoFilterSchema)` to create a new message.
|
|
439
446
|
*/
|
|
440
447
|
export const GeoFilterSchema = /*@__PURE__*/
|
|
441
|
-
messageDesc(file_world,
|
|
448
|
+
messageDesc(file_world, 61);
|
|
442
449
|
|
|
443
450
|
/**
|
|
444
451
|
* Describes the message world.DeviceFilter.
|
|
445
452
|
* Use `create(DeviceFilterSchema)` to create a new message.
|
|
446
453
|
*/
|
|
447
454
|
export const DeviceFilterSchema = /*@__PURE__*/
|
|
448
|
-
messageDesc(file_world,
|
|
455
|
+
messageDesc(file_world, 62);
|
|
456
|
+
|
|
457
|
+
/**
|
|
458
|
+
* Describes the message world.BleDeviceFilter.
|
|
459
|
+
* Use `create(BleDeviceFilterSchema)` to create a new message.
|
|
460
|
+
*/
|
|
461
|
+
export const BleDeviceFilterSchema = /*@__PURE__*/
|
|
462
|
+
messageDesc(file_world, 63);
|
|
463
|
+
|
|
464
|
+
/**
|
|
465
|
+
* Describes the message world.UsbDeviceFilter.
|
|
466
|
+
* Use `create(UsbDeviceFilterSchema)` to create a new message.
|
|
467
|
+
*/
|
|
468
|
+
export const UsbDeviceFilterSchema = /*@__PURE__*/
|
|
469
|
+
messageDesc(file_world, 64);
|
|
449
470
|
|
|
450
471
|
/**
|
|
451
472
|
* Describes the message world.ConfigurationFilter.
|
|
452
473
|
* Use `create(ConfigurationFilterSchema)` to create a new message.
|
|
453
474
|
*/
|
|
454
475
|
export const ConfigurationFilterSchema = /*@__PURE__*/
|
|
455
|
-
messageDesc(file_world,
|
|
476
|
+
messageDesc(file_world, 65);
|
|
456
477
|
|
|
457
478
|
/**
|
|
458
479
|
* Describes the message world.ChannelFilter.
|
|
459
480
|
* Use `create(ChannelFilterSchema)` to create a new message.
|
|
460
481
|
*/
|
|
461
482
|
export const ChannelFilterSchema = /*@__PURE__*/
|
|
462
|
-
messageDesc(file_world,
|
|
483
|
+
messageDesc(file_world, 66);
|
|
463
484
|
|
|
464
485
|
/**
|
|
465
486
|
* Describes the message world.WatchBehavior.
|
|
466
487
|
* Use `create(WatchBehaviorSchema)` to create a new message.
|
|
467
488
|
*/
|
|
468
489
|
export const WatchBehaviorSchema = /*@__PURE__*/
|
|
469
|
-
messageDesc(file_world,
|
|
490
|
+
messageDesc(file_world, 67);
|
|
470
491
|
|
|
471
492
|
/**
|
|
472
493
|
* Describes the message world.ListEntitiesRequest.
|
|
473
494
|
* Use `create(ListEntitiesRequestSchema)` to create a new message.
|
|
474
495
|
*/
|
|
475
496
|
export const ListEntitiesRequestSchema = /*@__PURE__*/
|
|
476
|
-
messageDesc(file_world,
|
|
497
|
+
messageDesc(file_world, 68);
|
|
477
498
|
|
|
478
499
|
/**
|
|
479
500
|
* Describes the message world.ListEntitiesResponse.
|
|
480
501
|
* Use `create(ListEntitiesResponseSchema)` to create a new message.
|
|
481
502
|
*/
|
|
482
503
|
export const ListEntitiesResponseSchema = /*@__PURE__*/
|
|
483
|
-
messageDesc(file_world,
|
|
504
|
+
messageDesc(file_world, 69);
|
|
484
505
|
|
|
485
506
|
/**
|
|
486
507
|
* Describes the message world.EntityChangeRequest.
|
|
487
508
|
* Use `create(EntityChangeRequestSchema)` to create a new message.
|
|
488
509
|
*/
|
|
489
510
|
export const EntityChangeRequestSchema = /*@__PURE__*/
|
|
490
|
-
messageDesc(file_world,
|
|
511
|
+
messageDesc(file_world, 70);
|
|
491
512
|
|
|
492
513
|
/**
|
|
493
514
|
* Describes the message world.ExpireEntityRequest.
|
|
494
515
|
* Use `create(ExpireEntityRequestSchema)` to create a new message.
|
|
495
516
|
*/
|
|
496
517
|
export const ExpireEntityRequestSchema = /*@__PURE__*/
|
|
497
|
-
messageDesc(file_world,
|
|
518
|
+
messageDesc(file_world, 71);
|
|
498
519
|
|
|
499
520
|
/**
|
|
500
521
|
* Describes the message world.ExpireEntityResponse.
|
|
501
522
|
* Use `create(ExpireEntityResponseSchema)` to create a new message.
|
|
502
523
|
*/
|
|
503
524
|
export const ExpireEntityResponseSchema = /*@__PURE__*/
|
|
504
|
-
messageDesc(file_world,
|
|
525
|
+
messageDesc(file_world, 72);
|
|
505
526
|
|
|
506
527
|
/**
|
|
507
528
|
* Describes the message world.EntityChangeResponse.
|
|
508
529
|
* Use `create(EntityChangeResponseSchema)` to create a new message.
|
|
509
530
|
*/
|
|
510
531
|
export const EntityChangeResponseSchema = /*@__PURE__*/
|
|
511
|
-
messageDesc(file_world,
|
|
532
|
+
messageDesc(file_world, 73);
|
|
512
533
|
|
|
513
534
|
/**
|
|
514
535
|
* Describes the message world.EntityChangeEvent.
|
|
515
536
|
* Use `create(EntityChangeEventSchema)` to create a new message.
|
|
516
537
|
*/
|
|
517
538
|
export const EntityChangeEventSchema = /*@__PURE__*/
|
|
518
|
-
messageDesc(file_world,
|
|
539
|
+
messageDesc(file_world, 74);
|
|
519
540
|
|
|
520
541
|
/**
|
|
521
542
|
* Describes the message world.EntityChangeBatch.
|
|
522
543
|
* Use `create(EntityChangeBatchSchema)` to create a new message.
|
|
523
544
|
*/
|
|
524
545
|
export const EntityChangeBatchSchema = /*@__PURE__*/
|
|
525
|
-
messageDesc(file_world,
|
|
546
|
+
messageDesc(file_world, 75);
|
|
526
547
|
|
|
527
548
|
/**
|
|
528
549
|
* Describes the message world.GetEntityRequest.
|
|
529
550
|
* Use `create(GetEntityRequestSchema)` to create a new message.
|
|
530
551
|
*/
|
|
531
552
|
export const GetEntityRequestSchema = /*@__PURE__*/
|
|
532
|
-
messageDesc(file_world,
|
|
553
|
+
messageDesc(file_world, 76);
|
|
533
554
|
|
|
534
555
|
/**
|
|
535
556
|
* Describes the message world.GetEntityResponse.
|
|
536
557
|
* Use `create(GetEntityResponseSchema)` to create a new message.
|
|
537
558
|
*/
|
|
538
559
|
export const GetEntityResponseSchema = /*@__PURE__*/
|
|
539
|
-
messageDesc(file_world,
|
|
560
|
+
messageDesc(file_world, 77);
|
|
540
561
|
|
|
541
562
|
/**
|
|
542
563
|
* Describes the message world.GetLocalNodeRequest.
|
|
543
564
|
* Use `create(GetLocalNodeRequestSchema)` to create a new message.
|
|
544
565
|
*/
|
|
545
566
|
export const GetLocalNodeRequestSchema = /*@__PURE__*/
|
|
546
|
-
messageDesc(file_world,
|
|
567
|
+
messageDesc(file_world, 78);
|
|
547
568
|
|
|
548
569
|
/**
|
|
549
570
|
* Describes the message world.GetLocalNodeResponse.
|
|
550
571
|
* Use `create(GetLocalNodeResponseSchema)` to create a new message.
|
|
551
572
|
*/
|
|
552
573
|
export const GetLocalNodeResponseSchema = /*@__PURE__*/
|
|
553
|
-
messageDesc(file_world,
|
|
574
|
+
messageDesc(file_world, 79);
|
|
554
575
|
|
|
555
576
|
/**
|
|
556
577
|
* Describes the message world.ObserverRequest.
|
|
557
578
|
* Use `create(ObserverRequestSchema)` to create a new message.
|
|
558
579
|
*/
|
|
559
580
|
export const ObserverRequestSchema = /*@__PURE__*/
|
|
560
|
-
messageDesc(file_world,
|
|
581
|
+
messageDesc(file_world, 80);
|
|
561
582
|
|
|
562
583
|
/**
|
|
563
584
|
* Describes the message world.ObserverState.
|
|
564
585
|
* Use `create(ObserverStateSchema)` to create a new message.
|
|
565
586
|
*/
|
|
566
587
|
export const ObserverStateSchema = /*@__PURE__*/
|
|
567
|
-
messageDesc(file_world,
|
|
588
|
+
messageDesc(file_world, 81);
|
|
568
589
|
|
|
569
590
|
/**
|
|
570
591
|
* Describes the message world.RunTaskRequest.
|
|
571
592
|
* Use `create(RunTaskRequestSchema)` to create a new message.
|
|
572
593
|
*/
|
|
573
594
|
export const RunTaskRequestSchema = /*@__PURE__*/
|
|
574
|
-
messageDesc(file_world,
|
|
595
|
+
messageDesc(file_world, 82);
|
|
575
596
|
|
|
576
597
|
/**
|
|
577
598
|
* Describes the message world.RunTaskResponse.
|
|
578
599
|
* Use `create(RunTaskResponseSchema)` to create a new message.
|
|
579
600
|
*/
|
|
580
601
|
export const RunTaskResponseSchema = /*@__PURE__*/
|
|
581
|
-
messageDesc(file_world,
|
|
602
|
+
messageDesc(file_world, 83);
|
|
582
603
|
|
|
583
604
|
/**
|
|
584
605
|
* Describes the message world.HardResetRequest.
|
|
585
606
|
* Use `create(HardResetRequestSchema)` to create a new message.
|
|
586
607
|
*/
|
|
587
608
|
export const HardResetRequestSchema = /*@__PURE__*/
|
|
588
|
-
messageDesc(file_world,
|
|
609
|
+
messageDesc(file_world, 84);
|
|
589
610
|
|
|
590
611
|
/**
|
|
591
612
|
* Describes the message world.HardResetResponse.
|
|
592
613
|
* Use `create(HardResetResponseSchema)` to create a new message.
|
|
593
614
|
*/
|
|
594
615
|
export const HardResetResponseSchema = /*@__PURE__*/
|
|
595
|
-
messageDesc(file_world,
|
|
616
|
+
messageDesc(file_world, 85);
|
|
596
617
|
|
|
597
618
|
/**
|
|
598
619
|
* Describes the enum world.Priority.
|