feat(streaming): carry AckTime on DebugAlarmStateDto (21) (ScadaBridge#84)

The live AlarmStateUpdate already carried ack_time (24) but the Debug View
snapshot DTO did not, so snapshot-seeded alarm rows showed a null ack time
until the next live update. Additive google.protobuf.Timestamp ack_time = 21
(absent => null, including from a pre-#84 site), vendored C# regenerated with
docker/regen-proto.sh sitecommand, mapped both ways in SiteCommandDtoMapper.
The native golden sample now sets AckTime (the computed one leaves it null),
so the round-trip golden pins both the present and the absent decode.

Claude-Session: https://claude.ai/code/session_01GT67AEHd2Acv1YPwGfXEoV
This commit is contained in:
Joseph Doherty
2026-11-09 12:45:21 -05:00
parent 03de3dcc14
commit d36825633b
5 changed files with 282 additions and 210 deletions
@@ -85,6 +85,11 @@ public record AlarmStateChanged(
/// null while a native condition is unacknowledged; cleared on re-raise, because a
/// re-raise transition carries <c>Acknowledged = false</c>.
/// </para>
///
/// <para>
/// On the wire: <c>AlarmStateUpdate</c> field 24 (live stream) and
/// <c>DebugAlarmStateDto</c> field 21 (debug snapshot, Gitea #84) — absent decodes to null.
/// </para>
/// </summary>
public DateTimeOffset? AckTime { get; init; }
@@ -1955,6 +1955,11 @@ public static class SiteCommandDtoMapper
dto.OriginalRaiseTime = Ts(alarm.OriginalRaiseTime.Value);
}
if (alarm.AckTime.HasValue)
{
dto.AckTime = Ts(alarm.AckTime.Value);
}
return dto;
}
@@ -1985,7 +1990,8 @@ public static class SiteCommandDtoMapper
LimitValue = dto.LimitValue,
NativeSourceCanonicalName = dto.NativeSourceCanonicalName,
IsConfiguredPlaceholder = dto.IsConfiguredPlaceholder,
IsMesReportable = dto.IsMesReportable
IsMesReportable = dto.IsMesReportable,
AckTime = DtoOrNull(dto.AckTime)
};
return dto.Condition is null ? alarm : alarm with { Condition = FromProto(dto.Condition) };
@@ -657,6 +657,10 @@ message DebugAlarmStateDto {
// MES-reportable flag stamped by the Instance Actor's snapshot (Gitea #60); false for
// native conditions and from a pre-#60 site (proto3 default).
bool is_mes_reportable = 20;
// When the alarm was last acknowledged (AlarmStateChanged.AckTime; mirrors
// AlarmStateUpdate.ack_time = 24 on the live stream, Gitea #84). Absent => null,
// including from a pre-#84 site.
google.protobuf.Timestamp ack_time = 21;
}
message DebugViewSnapshotDto {
@@ -292,7 +292,7 @@ namespace ZB.MOM.WW.ScadaBridge.Communication.Grpc {
"dGgYAiABKAkSFgoOYXR0cmlidXRlX25hbWUYAyABKAkSNQoFdmFsdWUYBCAB",
"KAsyJi5zY2FkYWJyaWRnZS5zaXRlY29tbWFuZC52MS5Mb29zZVZhbHVlEg8K",
"B3F1YWxpdHkYBSABKAkSLQoJdGltZXN0YW1wGAYgASgLMhouZ29vZ2xlLnBy",
"b3RvYnVmLlRpbWVzdGFtcCLKBQoSRGVidWdBbGFybVN0YXRlRHRvEhwKFGlu",
"b3RvYnVmLlRpbWVzdGFtcCL4BQoSRGVidWdBbGFybVN0YXRlRHRvEhwKFGlu",
"c3RhbmNlX3VuaXF1ZV9uYW1lGAEgASgJEhIKCmFsYXJtX25hbWUYAiABKAkS",
"OAoFc3RhdGUYAyABKA4yKS5zY2FkYWJyaWRnZS5zaXRlY29tbWFuZC52MS5B",
"bGFybVN0YXRlRHRvEhAKCHByaW9yaXR5GAQgASgFEi0KCXRpbWVzdGFtcBgF",
@@ -308,213 +308,214 @@ namespace ZB.MOM.WW.ScadaBridge.Communication.Grpc {
"dGFtcBIVCg1jdXJyZW50X3ZhbHVlGBAgASgJEhMKC2xpbWl0X3ZhbHVlGBEg",
"ASgJEiQKHG5hdGl2ZV9zb3VyY2VfY2Fub25pY2FsX25hbWUYEiABKAkSIQoZ",
"aXNfY29uZmlndXJlZF9wbGFjZWhvbGRlchgTIAEoCBIZChFpc19tZXNfcmVw",
"b3J0YWJsZRgUIAEoCCKcAgoURGVidWdWaWV3U25hcHNob3REdG8SHAoUaW5z",
"dGFuY2VfdW5pcXVlX25hbWUYASABKAkSTAoQYXR0cmlidXRlX3ZhbHVlcxgC",
"IAMoCzIyLnNjYWRhYnJpZGdlLnNpdGVjb21tYW5kLnYxLkRlYnVnQXR0cmli",
"dXRlVmFsdWVEdG8SRAoMYWxhcm1fc3RhdGVzGAMgAygLMi4uc2NhZGFicmlk",
"Z2Uuc2l0ZWNvbW1hbmQudjEuRGVidWdBbGFybVN0YXRlRHRvEjYKEnNuYXBz",
"aG90X3RpbWVzdGFtcBgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3Rh",
"bXASGgoSaW5zdGFuY2Vfbm90X2ZvdW5kGAUgASgIIvACCgxRdWVyeVJlcXVl",
"c3QSTgoPZXZlbnRfbG9nX3F1ZXJ5GAEgASgLMjMuc2NhZGFicmlkZ2Uuc2l0",
"ZWNvbW1hbmQudjEuRXZlbnRMb2dRdWVyeVJlcXVlc3REdG9IABJNCg5kZWJ1",
"Z19zbmFwc2hvdBgCIAEoCzIzLnNjYWRhYnJpZGdlLnNpdGVjb21tYW5kLnYx",
"LkRlYnVnU25hcHNob3RSZXF1ZXN0RHRvSAASWAoUc3Vic2NyaWJlX2RlYnVn",
"X3ZpZXcYAyABKAsyOC5zY2FkYWJyaWRnZS5zaXRlY29tbWFuZC52MS5TdWJz",
"Y3JpYmVEZWJ1Z1ZpZXdSZXF1ZXN0RHRvSAASXAoWdW5zdWJzY3JpYmVfZGVi",
"dWdfdmlldxgEIAEoCzI6LnNjYWRhYnJpZGdlLnNpdGVjb21tYW5kLnYxLlVu",
"c3Vic2NyaWJlRGVidWdWaWV3UmVxdWVzdER0b0gAQgkKB2NvbW1hbmQikQIK",
"ClF1ZXJ5UmVwbHkSTwoPZXZlbnRfbG9nX3F1ZXJ5GAEgASgLMjQuc2NhZGFi",
"cmlkZ2Uuc2l0ZWNvbW1hbmQudjEuRXZlbnRMb2dRdWVyeVJlc3BvbnNlRHRv",
"SAASTwoTZGVidWdfdmlld19zbmFwc2hvdBgCIAEoCzIwLnNjYWRhYnJpZGdl",
"LnNpdGVjb21tYW5kLnYxLkRlYnVnVmlld1NuYXBzaG90RHRvSAASWAoWdW5z",
"dWJzY3JpYmVfZGVidWdfdmlldxgDIAEoCzI2LnNjYWRhYnJpZGdlLnNpdGVj",
"b21tYW5kLnYxLlVuc3Vic2NyaWJlRGVidWdWaWV3QWNrRHRvSABCBwoFcmVw",
"bHkingEKHFBhcmtlZE1lc3NhZ2VRdWVyeVJlcXVlc3REdG8SFgoOY29ycmVs",
"YXRpb25faWQYASABKAkSDwoHc2l0ZV9pZBgCIAEoCRITCgtwYWdlX251bWJl",
"chgDIAEoBRIRCglwYWdlX3NpemUYBCABKAUSLQoJdGltZXN0YW1wGAUgASgL",
"MhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCLyAgoVUGFya2VkTWVzc2Fn",
"ZUVudHJ5RHRvEhIKCm1lc3NhZ2VfaWQYASABKAkSFQoNdGFyZ2V0X3N5c3Rl",
"bRgCIAEoCRITCgttZXRob2RfbmFtZRgDIAEoCRIVCg1lcnJvcl9tZXNzYWdl",
"GAQgASgJEhUKDWF0dGVtcHRfY291bnQYBSABKAUSNgoSb3JpZ2luYWxfdGlt",
"ZXN0YW1wGAYgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBI6ChZs",
"YXN0X2F0dGVtcHRfdGltZXN0YW1wGAcgASgLMhouZ29vZ2xlLnByb3RvYnVm",
"LlRpbWVzdGFtcBIUCgxtYXhfYXR0ZW1wdHMYCCABKAUSSAoIY2F0ZWdvcnkY",
"CSABKA4yNi5zY2FkYWJyaWRnZS5zaXRlY29tbWFuZC52MS5TdG9yZUFuZEZv",
"cndhcmRDYXRlZ29yeUR0bxIXCg9vcmlnaW5faW5zdGFuY2UYCiABKAkioQIK",
"HVBhcmtlZE1lc3NhZ2VRdWVyeVJlc3BvbnNlRHRvEhYKDmNvcnJlbGF0aW9u",
"X2lkGAEgASgJEg8KB3NpdGVfaWQYAiABKAkSQwoIbWVzc2FnZXMYAyADKAsy",
"MS5zY2FkYWJyaWRnZS5zaXRlY29tbWFuZC52MS5QYXJrZWRNZXNzYWdlRW50",
"cnlEdG8SEwoLdG90YWxfY291bnQYBCABKAUSEwoLcGFnZV9udW1iZXIYBSAB",
"KAUSEQoJcGFnZV9zaXplGAYgASgFEg8KB3N1Y2Nlc3MYByABKAgSFQoNZXJy",
"b3JfbWVzc2FnZRgIIAEoCRItCgl0aW1lc3RhbXAYCSABKAsyGi5nb29nbGUu",
"cHJvdG9idWYuVGltZXN0YW1wIooBChxQYXJrZWRNZXNzYWdlUmV0cnlSZXF1",
"ZXN0RHRvEhYKDmNvcnJlbGF0aW9uX2lkGAEgASgJEg8KB3NpdGVfaWQYAiAB",
"KAkSEgoKbWVzc2FnZV9pZBgDIAEoCRItCgl0aW1lc3RhbXAYBCABKAsyGi5n",
"b29nbGUucHJvdG9idWYuVGltZXN0YW1wIl8KHVBhcmtlZE1lc3NhZ2VSZXRy",
"eVJlc3BvbnNlRHRvEhYKDmNvcnJlbGF0aW9uX2lkGAEgASgJEg8KB3N1Y2Nl",
"c3MYAiABKAgSFQoNZXJyb3JfbWVzc2FnZRgDIAEoCSKMAQoeUGFya2VkTWVz",
"c2FnZURpc2NhcmRSZXF1ZXN0RHRvEhYKDmNvcnJlbGF0aW9uX2lkGAEgASgJ",
"Eg8KB3NpdGVfaWQYAiABKAkSEgoKbWVzc2FnZV9pZBgDIAEoCRItCgl0aW1l",
"c3RhbXAYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wImEKH1Bh",
"cmtlZE1lc3NhZ2VEaXNjYXJkUmVzcG9uc2VEdG8SFgoOY29ycmVsYXRpb25f",
"aWQYASABKAkSDwoHc3VjY2VzcxgCIAEoCBIVCg1lcnJvcl9tZXNzYWdlGAMg",
"ASgJIk8KF1JldHJ5UGFya2VkT3BlcmF0aW9uRHRvEhYKDmNvcnJlbGF0aW9u",
"X2lkGAEgASgJEhwKFHRyYWNrZWRfb3BlcmF0aW9uX2lkGAIgASgJIlEKGURp",
"c2NhcmRQYXJrZWRPcGVyYXRpb25EdG8SFgoOY29ycmVsYXRpb25faWQYASAB",
"KAkSHAoUdHJhY2tlZF9vcGVyYXRpb25faWQYAiABKAkiXQobUGFya2VkT3Bl",
"cmF0aW9uQWN0aW9uQWNrRHRvEhYKDmNvcnJlbGF0aW9uX2lkGAEgASgJEg8K",
"B2FwcGxpZWQYAiABKAgSFQoNZXJyb3JfbWVzc2FnZRgDIAEoCSLeAwoNUGFy",
"a2VkUmVxdWVzdBJYChRwYXJrZWRfbWVzc2FnZV9xdWVyeRgBIAEoCzI4LnNj",
"YWRhYnJpZGdlLnNpdGVjb21tYW5kLnYxLlBhcmtlZE1lc3NhZ2VRdWVyeVJl",
"cXVlc3REdG9IABJYChRwYXJrZWRfbWVzc2FnZV9yZXRyeRgCIAEoCzI4LnNj",
"YWRhYnJpZGdlLnNpdGVjb21tYW5kLnYxLlBhcmtlZE1lc3NhZ2VSZXRyeVJl",
"cXVlc3REdG9IABJcChZwYXJrZWRfbWVzc2FnZV9kaXNjYXJkGAMgASgLMjou",
"c2NhZGFicmlkZ2Uuc2l0ZWNvbW1hbmQudjEuUGFya2VkTWVzc2FnZURpc2Nh",
"cmRSZXF1ZXN0RHRvSAASVQoWcmV0cnlfcGFya2VkX29wZXJhdGlvbhgEIAEo",
"CzIzLnNjYWRhYnJpZGdlLnNpdGVjb21tYW5kLnYxLlJldHJ5UGFya2VkT3Bl",
"cmF0aW9uRHRvSAASWQoYZGlzY2FyZF9wYXJrZWRfb3BlcmF0aW9uGAUgASgL",
"MjUuc2NhZGFicmlkZ2Uuc2l0ZWNvbW1hbmQudjEuRGlzY2FyZFBhcmtlZE9w",
"ZXJhdGlvbkR0b0gAQgkKB2NvbW1hbmQihwMKC1BhcmtlZFJlcGx5ElkKFHBh",
"cmtlZF9tZXNzYWdlX3F1ZXJ5GAEgASgLMjkuc2NhZGFicmlkZ2Uuc2l0ZWNv",
"bW1hbmQudjEuUGFya2VkTWVzc2FnZVF1ZXJ5UmVzcG9uc2VEdG9IABJZChRw",
"YXJrZWRfbWVzc2FnZV9yZXRyeRgCIAEoCzI5LnNjYWRhYnJpZGdlLnNpdGVj",
"b21tYW5kLnYxLlBhcmtlZE1lc3NhZ2VSZXRyeVJlc3BvbnNlRHRvSAASXQoW",
"cGFya2VkX21lc3NhZ2VfZGlzY2FyZBgDIAEoCzI7LnNjYWRhYnJpZGdlLnNp",
"dGVjb21tYW5kLnYxLlBhcmtlZE1lc3NhZ2VEaXNjYXJkUmVzcG9uc2VEdG9I",
"ABJaChdwYXJrZWRfb3BlcmF0aW9uX2FjdGlvbhgEIAEoCzI3LnNjYWRhYnJp",
"ZGdlLnNpdGVjb21tYW5kLnYxLlBhcmtlZE9wZXJhdGlvbkFjdGlvbkFja0R0",
"b0gAQgcKBXJlcGx5IvwBChVSb3V0ZVRvQ2FsbFJlcXVlc3REdG8SFgoOY29y",
"b3J0YWJsZRgUIAEoCBIsCghhY2tfdGltZRgVIAEoCzIaLmdvb2dsZS5wcm90",
"b2J1Zi5UaW1lc3RhbXAinAIKFERlYnVnVmlld1NuYXBzaG90RHRvEhwKFGlu",
"c3RhbmNlX3VuaXF1ZV9uYW1lGAEgASgJEkwKEGF0dHJpYnV0ZV92YWx1ZXMY",
"AiADKAsyMi5zY2FkYWJyaWRnZS5zaXRlY29tbWFuZC52MS5EZWJ1Z0F0dHJp",
"YnV0ZVZhbHVlRHRvEkQKDGFsYXJtX3N0YXRlcxgDIAMoCzIuLnNjYWRhYnJp",
"ZGdlLnNpdGVjb21tYW5kLnYxLkRlYnVnQWxhcm1TdGF0ZUR0bxI2ChJzbmFw",
"c2hvdF90aW1lc3RhbXAYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0",
"YW1wEhoKEmluc3RhbmNlX25vdF9mb3VuZBgFIAEoCCLwAgoMUXVlcnlSZXF1",
"ZXN0Ek4KD2V2ZW50X2xvZ19xdWVyeRgBIAEoCzIzLnNjYWRhYnJpZGdlLnNp",
"dGVjb21tYW5kLnYxLkV2ZW50TG9nUXVlcnlSZXF1ZXN0RHRvSAASTQoOZGVi",
"dWdfc25hcHNob3QYAiABKAsyMy5zY2FkYWJyaWRnZS5zaXRlY29tbWFuZC52",
"MS5EZWJ1Z1NuYXBzaG90UmVxdWVzdER0b0gAElgKFHN1YnNjcmliZV9kZWJ1",
"Z192aWV3GAMgASgLMjguc2NhZGFicmlkZ2Uuc2l0ZWNvbW1hbmQudjEuU3Vi",
"c2NyaWJlRGVidWdWaWV3UmVxdWVzdER0b0gAElwKFnVuc3Vic2NyaWJlX2Rl",
"YnVnX3ZpZXcYBCABKAsyOi5zY2FkYWJyaWRnZS5zaXRlY29tbWFuZC52MS5V",
"bnN1YnNjcmliZURlYnVnVmlld1JlcXVlc3REdG9IAEIJCgdjb21tYW5kIpEC",
"CgpRdWVyeVJlcGx5Ek8KD2V2ZW50X2xvZ19xdWVyeRgBIAEoCzI0LnNjYWRh",
"YnJpZGdlLnNpdGVjb21tYW5kLnYxLkV2ZW50TG9nUXVlcnlSZXNwb25zZUR0",
"b0gAEk8KE2RlYnVnX3ZpZXdfc25hcHNob3QYAiABKAsyMC5zY2FkYWJyaWRn",
"ZS5zaXRlY29tbWFuZC52MS5EZWJ1Z1ZpZXdTbmFwc2hvdER0b0gAElgKFnVu",
"c3Vic2NyaWJlX2RlYnVnX3ZpZXcYAyABKAsyNi5zY2FkYWJyaWRnZS5zaXRl",
"Y29tbWFuZC52MS5VbnN1YnNjcmliZURlYnVnVmlld0Fja0R0b0gAQgcKBXJl",
"cGx5Ip4BChxQYXJrZWRNZXNzYWdlUXVlcnlSZXF1ZXN0RHRvEhYKDmNvcnJl",
"bGF0aW9uX2lkGAEgASgJEg8KB3NpdGVfaWQYAiABKAkSEwoLcGFnZV9udW1i",
"ZXIYAyABKAUSEQoJcGFnZV9zaXplGAQgASgFEi0KCXRpbWVzdGFtcBgFIAEo",
"CzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAi8gIKFVBhcmtlZE1lc3Nh",
"Z2VFbnRyeUR0bxISCgptZXNzYWdlX2lkGAEgASgJEhUKDXRhcmdldF9zeXN0",
"ZW0YAiABKAkSEwoLbWV0aG9kX25hbWUYAyABKAkSFQoNZXJyb3JfbWVzc2Fn",
"ZRgEIAEoCRIVCg1hdHRlbXB0X2NvdW50GAUgASgFEjYKEm9yaWdpbmFsX3Rp",
"bWVzdGFtcBgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASOgoW",
"bGFzdF9hdHRlbXB0X3RpbWVzdGFtcBgHIAEoCzIaLmdvb2dsZS5wcm90b2J1",
"Zi5UaW1lc3RhbXASFAoMbWF4X2F0dGVtcHRzGAggASgFEkgKCGNhdGVnb3J5",
"GAkgASgOMjYuc2NhZGFicmlkZ2Uuc2l0ZWNvbW1hbmQudjEuU3RvcmVBbmRG",
"b3J3YXJkQ2F0ZWdvcnlEdG8SFwoPb3JpZ2luX2luc3RhbmNlGAogASgJIqEC",
"Ch1QYXJrZWRNZXNzYWdlUXVlcnlSZXNwb25zZUR0bxIWCg5jb3JyZWxhdGlv",
"bl9pZBgBIAEoCRIPCgdzaXRlX2lkGAIgASgJEkMKCG1lc3NhZ2VzGAMgAygL",
"MjEuc2NhZGFicmlkZ2Uuc2l0ZWNvbW1hbmQudjEuUGFya2VkTWVzc2FnZUVu",
"dHJ5RHRvEhMKC3RvdGFsX2NvdW50GAQgASgFEhMKC3BhZ2VfbnVtYmVyGAUg",
"ASgFEhEKCXBhZ2Vfc2l6ZRgGIAEoBRIPCgdzdWNjZXNzGAcgASgIEhUKDWVy",
"cm9yX21lc3NhZ2UYCCABKAkSLQoJdGltZXN0YW1wGAkgASgLMhouZ29vZ2xl",
"LnByb3RvYnVmLlRpbWVzdGFtcCKKAQocUGFya2VkTWVzc2FnZVJldHJ5UmVx",
"dWVzdER0bxIWCg5jb3JyZWxhdGlvbl9pZBgBIAEoCRIPCgdzaXRlX2lkGAIg",
"ASgJEhIKCm1lc3NhZ2VfaWQYAyABKAkSLQoJdGltZXN0YW1wGAQgASgLMhou",
"Z29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCJfCh1QYXJrZWRNZXNzYWdlUmV0",
"cnlSZXNwb25zZUR0bxIWCg5jb3JyZWxhdGlvbl9pZBgBIAEoCRIPCgdzdWNj",
"ZXNzGAIgASgIEhUKDWVycm9yX21lc3NhZ2UYAyABKAkijAEKHlBhcmtlZE1l",
"c3NhZ2VEaXNjYXJkUmVxdWVzdER0bxIWCg5jb3JyZWxhdGlvbl9pZBgBIAEo",
"CRIPCgdzaXRlX2lkGAIgASgJEhIKCm1lc3NhZ2VfaWQYAyABKAkSLQoJdGlt",
"ZXN0YW1wGAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCJhCh9Q",
"YXJrZWRNZXNzYWdlRGlzY2FyZFJlc3BvbnNlRHRvEhYKDmNvcnJlbGF0aW9u",
"X2lkGAEgASgJEg8KB3N1Y2Nlc3MYAiABKAgSFQoNZXJyb3JfbWVzc2FnZRgD",
"IAEoCSJPChdSZXRyeVBhcmtlZE9wZXJhdGlvbkR0bxIWCg5jb3JyZWxhdGlv",
"bl9pZBgBIAEoCRIcChR0cmFja2VkX29wZXJhdGlvbl9pZBgCIAEoCSJRChlE",
"aXNjYXJkUGFya2VkT3BlcmF0aW9uRHRvEhYKDmNvcnJlbGF0aW9uX2lkGAEg",
"ASgJEhwKFHRyYWNrZWRfb3BlcmF0aW9uX2lkGAIgASgJIl0KG1BhcmtlZE9w",
"ZXJhdGlvbkFjdGlvbkFja0R0bxIWCg5jb3JyZWxhdGlvbl9pZBgBIAEoCRIP",
"CgdhcHBsaWVkGAIgASgIEhUKDWVycm9yX21lc3NhZ2UYAyABKAki3gMKDVBh",
"cmtlZFJlcXVlc3QSWAoUcGFya2VkX21lc3NhZ2VfcXVlcnkYASABKAsyOC5z",
"Y2FkYWJyaWRnZS5zaXRlY29tbWFuZC52MS5QYXJrZWRNZXNzYWdlUXVlcnlS",
"ZXF1ZXN0RHRvSAASWAoUcGFya2VkX21lc3NhZ2VfcmV0cnkYAiABKAsyOC5z",
"Y2FkYWJyaWRnZS5zaXRlY29tbWFuZC52MS5QYXJrZWRNZXNzYWdlUmV0cnlS",
"ZXF1ZXN0RHRvSAASXAoWcGFya2VkX21lc3NhZ2VfZGlzY2FyZBgDIAEoCzI6",
"LnNjYWRhYnJpZGdlLnNpdGVjb21tYW5kLnYxLlBhcmtlZE1lc3NhZ2VEaXNj",
"YXJkUmVxdWVzdER0b0gAElUKFnJldHJ5X3BhcmtlZF9vcGVyYXRpb24YBCAB",
"KAsyMy5zY2FkYWJyaWRnZS5zaXRlY29tbWFuZC52MS5SZXRyeVBhcmtlZE9w",
"ZXJhdGlvbkR0b0gAElkKGGRpc2NhcmRfcGFya2VkX29wZXJhdGlvbhgFIAEo",
"CzI1LnNjYWRhYnJpZGdlLnNpdGVjb21tYW5kLnYxLkRpc2NhcmRQYXJrZWRP",
"cGVyYXRpb25EdG9IAEIJCgdjb21tYW5kIocDCgtQYXJrZWRSZXBseRJZChRw",
"YXJrZWRfbWVzc2FnZV9xdWVyeRgBIAEoCzI5LnNjYWRhYnJpZGdlLnNpdGVj",
"b21tYW5kLnYxLlBhcmtlZE1lc3NhZ2VRdWVyeVJlc3BvbnNlRHRvSAASWQoU",
"cGFya2VkX21lc3NhZ2VfcmV0cnkYAiABKAsyOS5zY2FkYWJyaWRnZS5zaXRl",
"Y29tbWFuZC52MS5QYXJrZWRNZXNzYWdlUmV0cnlSZXNwb25zZUR0b0gAEl0K",
"FnBhcmtlZF9tZXNzYWdlX2Rpc2NhcmQYAyABKAsyOy5zY2FkYWJyaWRnZS5z",
"aXRlY29tbWFuZC52MS5QYXJrZWRNZXNzYWdlRGlzY2FyZFJlc3BvbnNlRHRv",
"SAASWgoXcGFya2VkX29wZXJhdGlvbl9hY3Rpb24YBCABKAsyNy5zY2FkYWJy",
"aWRnZS5zaXRlY29tbWFuZC52MS5QYXJrZWRPcGVyYXRpb25BY3Rpb25BY2tE",
"dG9IAEIHCgVyZXBseSL8AQoVUm91dGVUb0NhbGxSZXF1ZXN0RHRvEhYKDmNv",
"cnJlbGF0aW9uX2lkGAEgASgJEhwKFGluc3RhbmNlX3VuaXF1ZV9uYW1lGAIg",
"ASgJEhMKC3NjcmlwdF9uYW1lGAMgASgJEj0KCnBhcmFtZXRlcnMYBCABKAsy",
"KS5zY2FkYWJyaWRnZS5zaXRlY29tbWFuZC52MS5Mb29zZVZhbHVlTWFwEi0K",
"CXRpbWVzdGFtcBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAS",
"GwoTcGFyZW50X2V4ZWN1dGlvbl9pZBgGIAEoCRINCgV0cmFjZRgHIAEoCCK9",
"AgoWUm91dGVUb0NhbGxSZXNwb25zZUR0bxIWCg5jb3JyZWxhdGlvbl9pZBgB",
"IAEoCRIPCgdzdWNjZXNzGAIgASgIEjwKDHJldHVybl92YWx1ZRgDIAEoCzIm",
"LnNjYWRhYnJpZGdlLnNpdGVjb21tYW5kLnYxLkxvb3NlVmFsdWUSFQoNZXJy",
"b3JfbWVzc2FnZRgEIAEoCRItCgl0aW1lc3RhbXAYBSABKAsyGi5nb29nbGUu",
"cHJvdG9idWYuVGltZXN0YW1wEhoKEmNoaWxkX2V4ZWN1dGlvbl9pZBgGIAEo",
"CRIvCgx0cmFjZV9ldmVudHMYByADKAsyGS5zaXRlc3RyZWFtLkF1ZGl0RXZl",
"bnREdG8SEQoJdHJ1bmNhdGVkGAggASgIEhYKDmxvZ3NfdHJ1bmNhdGVkGAkg",
"ASgIIrsBCh5Sb3V0ZVRvR2V0QXR0cmlidXRlc1JlcXVlc3REdG8SFgoOY29y",
"cmVsYXRpb25faWQYASABKAkSHAoUaW5zdGFuY2VfdW5pcXVlX25hbWUYAiAB",
"KAkSEwoLc2NyaXB0X25hbWUYAyABKAkSPQoKcGFyYW1ldGVycxgEIAEoCzIp",
"LnNjYWRhYnJpZGdlLnNpdGVjb21tYW5kLnYxLkxvb3NlVmFsdWVNYXASLQoJ",
"dGltZXN0YW1wGAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIb",
"ChNwYXJlbnRfZXhlY3V0aW9uX2lkGAYgASgJEg0KBXRyYWNlGAcgASgIIr0C",
"ChZSb3V0ZVRvQ2FsbFJlc3BvbnNlRHRvEhYKDmNvcnJlbGF0aW9uX2lkGAEg",
"ASgJEg8KB3N1Y2Nlc3MYAiABKAgSPAoMcmV0dXJuX3ZhbHVlGAMgASgLMiYu",
"c2NhZGFicmlkZ2Uuc2l0ZWNvbW1hbmQudjEuTG9vc2VWYWx1ZRIVCg1lcnJv",
"cl9tZXNzYWdlGAQgASgJEi0KCXRpbWVzdGFtcBgFIAEoCzIaLmdvb2dsZS5w",
"cm90b2J1Zi5UaW1lc3RhbXASGgoSY2hpbGRfZXhlY3V0aW9uX2lkGAYgASgJ",
"Ei8KDHRyYWNlX2V2ZW50cxgHIAMoCzIZLnNpdGVzdHJlYW0uQXVkaXRFdmVu",
"dER0bxIRCgl0cnVuY2F0ZWQYCCABKAgSFgoObG9nc190cnVuY2F0ZWQYCSAB",
"KAgiuwEKHlJvdXRlVG9HZXRBdHRyaWJ1dGVzUmVxdWVzdER0bxIWCg5jb3Jy",
"ZWxhdGlvbl9pZBgBIAEoCRIcChRpbnN0YW5jZV91bmlxdWVfbmFtZRgCIAEo",
"CRIXCg9hdHRyaWJ1dGVfbmFtZXMYAyADKAkSLQoJdGltZXN0YW1wGAQgASgL",
"MhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIbChNwYXJlbnRfZXhlY3V0",
"aW9uX2lkGAUgASgJIssBCh9Sb3V0ZVRvR2V0QXR0cmlidXRlc1Jlc3BvbnNl",
"RHRvEhYKDmNvcnJlbGF0aW9uX2lkGAEgASgJEjkKBnZhbHVlcxgCIAEoCzIp",
"LnNjYWRhYnJpZGdlLnNpdGVjb21tYW5kLnYxLkxvb3NlVmFsdWVNYXASDwoH",
"c3VjY2VzcxgDIAEoCBIVCg1lcnJvcl9tZXNzYWdlGAQgASgJEi0KCXRpbWVz",
"dGFtcBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAi1AIKHlJv",
"dXRlVG9TZXRBdHRyaWJ1dGVzUmVxdWVzdER0bxIWCg5jb3JyZWxhdGlvbl9p",
"ZBgBIAEoCRIcChRpbnN0YW5jZV91bmlxdWVfbmFtZRgCIAEoCRJpChBhdHRy",
"aWJ1dGVfdmFsdWVzGAMgAygLMk8uc2NhZGFicmlkZ2Uuc2l0ZWNvbW1hbmQu",
"djEuUm91dGVUb1NldEF0dHJpYnV0ZXNSZXF1ZXN0RHRvLkF0dHJpYnV0ZVZh",
"bHVlc0VudHJ5Ei0KCXRpbWVzdGFtcBgEIAEoCzIaLmdvb2dsZS5wcm90b2J1",
"Zi5UaW1lc3RhbXASGwoTcGFyZW50X2V4ZWN1dGlvbl9pZBgFIAEoCRINCgV0",
"cmFjZRgGIAEoCBo2ChRBdHRyaWJ1dGVWYWx1ZXNFbnRyeRILCgNrZXkYASAB",
"KAkSDQoFdmFsdWUYAiABKAk6AjgBIpABCh9Sb3V0ZVRvU2V0QXR0cmlidXRl",
"c1Jlc3BvbnNlRHRvEhYKDmNvcnJlbGF0aW9uX2lkGAEgASgJEg8KB3N1Y2Nl",
"c3MYAiABKAgSFQoNZXJyb3JfbWVzc2FnZRgDIAEoCRItCgl0aW1lc3RhbXAY",
"BCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIsMCCiFSb3V0ZVRv",
"V2FpdEZvckF0dHJpYnV0ZVJlcXVlc3REdG8SFgoOY29ycmVsYXRpb25faWQY",
"ASABKAkSHAoUaW5zdGFuY2VfdW5pcXVlX25hbWUYAiABKAkSFgoOYXR0cmli",
"dXRlX25hbWUYAyABKAkSOgoUdGFyZ2V0X3ZhbHVlX2VuY29kZWQYBCABKAsy",
"HC5nb29nbGUucHJvdG9idWYuU3RyaW5nVmFsdWUSKgoHdGltZW91dBgFIAEo",
"CzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbhItCgl0aW1lc3RhbXAYBiAB",
"KAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEhsKE3BhcmVudF9leGVj",
"dXRpb25faWQYByABKAkSHAoUcmVxdWlyZV9nb29kX3F1YWxpdHkYCCABKAgi",
"/wEKIlJvdXRlVG9XYWl0Rm9yQXR0cmlidXRlUmVzcG9uc2VEdG8SFgoOY29y",
"cmVsYXRpb25faWQYASABKAkSDwoHbWF0Y2hlZBgCIAEoCBI1CgV2YWx1ZRgD",
"IAEoCzImLnNjYWRhYnJpZGdlLnNpdGVjb21tYW5kLnYxLkxvb3NlVmFsdWUS",
"DwoHcXVhbGl0eRgEIAEoCRIRCgl0aW1lZF9vdXQYBSABKAgSDwoHc3VjY2Vz",
"cxgGIAEoCBIVCg1lcnJvcl9tZXNzYWdlGAcgASgJEi0KCXRpbWVzdGFtcBgI",
"IAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiiQMKDFJvdXRlUmVx",
"dWVzdBJKCg1yb3V0ZV90b19jYWxsGAEgASgLMjEuc2NhZGFicmlkZ2Uuc2l0",
"ZWNvbW1hbmQudjEuUm91dGVUb0NhbGxSZXF1ZXN0RHRvSAASXQoXcm91dGVf",
"dG9fZ2V0X2F0dHJpYnV0ZXMYAiABKAsyOi5zY2FkYWJyaWRnZS5zaXRlY29t",
"bWFuZC52MS5Sb3V0ZVRvR2V0QXR0cmlidXRlc1JlcXVlc3REdG9IABJdChdy",
"b3V0ZV90b19zZXRfYXR0cmlidXRlcxgDIAEoCzI6LnNjYWRhYnJpZGdlLnNp",
"dGVjb21tYW5kLnYxLlJvdXRlVG9TZXRBdHRyaWJ1dGVzUmVxdWVzdER0b0gA",
"EmQKG3JvdXRlX3RvX3dhaXRfZm9yX2F0dHJpYnV0ZRgEIAEoCzI9LnNjYWRh",
"YnJpZGdlLnNpdGVjb21tYW5kLnYxLlJvdXRlVG9XYWl0Rm9yQXR0cmlidXRl",
"UmVxdWVzdER0b0gAQgkKB2NvbW1hbmQiiQMKClJvdXRlUmVwbHkSSwoNcm91",
"dGVfdG9fY2FsbBgBIAEoCzIyLnNjYWRhYnJpZGdlLnNpdGVjb21tYW5kLnYx",
"LlJvdXRlVG9DYWxsUmVzcG9uc2VEdG9IABJeChdyb3V0ZV90b19nZXRfYXR0",
"cmlidXRlcxgCIAEoCzI7LnNjYWRhYnJpZGdlLnNpdGVjb21tYW5kLnYxLlJv",
"dXRlVG9HZXRBdHRyaWJ1dGVzUmVzcG9uc2VEdG9IABJeChdyb3V0ZV90b19z",
"ZXRfYXR0cmlidXRlcxgDIAEoCzI7LnNjYWRhYnJpZGdlLnNpdGVjb21tYW5k",
"LnYxLlJvdXRlVG9TZXRBdHRyaWJ1dGVzUmVzcG9uc2VEdG9IABJlChtyb3V0",
"ZV90b193YWl0X2Zvcl9hdHRyaWJ1dGUYBCABKAsyPi5zY2FkYWJyaWRnZS5z",
"aXRlY29tbWFuZC52MS5Sb3V0ZVRvV2FpdEZvckF0dHJpYnV0ZVJlc3BvbnNl",
"RHRvSABCBwoFcmVwbHkiQQoWVHJpZ2dlclNpdGVGYWlsb3ZlckR0bxIWCg5j",
"b3JyZWxhdGlvbl9pZBgBIAEoCRIPCgdzaXRlX2lkGAIgASgJIm0KElNpdGVG",
"YWlsb3ZlckFja0R0bxIWCg5jb3JyZWxhdGlvbl9pZBgBIAEoCRIQCghhY2Nl",
"cHRlZBgCIAEoCBIWCg50YXJnZXRfYWRkcmVzcxgDIAEoCRIVCg1lcnJvcl9t",
"ZXNzYWdlGAQgASgJKssBChNEZXBsb3ltZW50U3RhdHVzRHRvEiUKIURFUExP",
"WU1FTlRfU1RBVFVTX0RUT19VTlNQRUNJRklFRBAAEiEKHURFUExPWU1FTlRf",
"U1RBVFVTX0RUT19QRU5ESU5HEAESJQohREVQTE9ZTUVOVF9TVEFUVVNfRFRP",
"X0lOX1BST0dSRVNTEAISIQodREVQTE9ZTUVOVF9TVEFUVVNfRFRPX1NVQ0NF",
"U1MQAxIgChxERVBMT1lNRU5UX1NUQVRVU19EVE9fRkFJTEVEEAQqxAEKEkJy",
"b3dzZU5vZGVDbGFzc0R0bxIlCiFCUk9XU0VfTk9ERV9DTEFTU19EVE9fVU5T",
"UEVDSUZJRUQQABIgChxCUk9XU0VfTk9ERV9DTEFTU19EVE9fT0JKRUNUEAES",
"IgoeQlJPV1NFX05PREVfQ0xBU1NfRFRPX1ZBUklBQkxFEAISIAocQlJPV1NF",
"X05PREVfQ0xBU1NfRFRPX01FVEhPRBADEh8KG0JST1dTRV9OT0RFX0NMQVNT",
"X0RUT19PVEhFUhAEKqECChRCcm93c2VGYWlsdXJlS2luZER0bxInCiNCUk9X",
"U0VfRkFJTFVSRV9LSU5EX0RUT19VTlNQRUNJRklFRBAAEjAKLEJST1dTRV9G",
"QUlMVVJFX0tJTkRfRFRPX0NPTk5FQ1RJT05fTk9UX0ZPVU5EEAESNAowQlJP",
"V1NFX0ZBSUxVUkVfS0lORF9EVE9fQ09OTkVDVElPTl9OT1RfQ09OTkVDVEVE",
"EAISKQolQlJPV1NFX0ZBSUxVUkVfS0lORF9EVE9fTk9UX0JST1dTQUJMRRAD",
"EiMKH0JST1dTRV9GQUlMVVJFX0tJTkRfRFRPX1RJTUVPVVQQBBIoCiRCUk9X",
"U0VfRkFJTFVSRV9LSU5EX0RUT19TRVJWRVJfRVJST1IQBSqqAgobUmVhZFRh",
"Z1ZhbHVlc0ZhaWx1cmVLaW5kRHRvEjAKLFJFQURfVEFHX1ZBTFVFU19GQUlM",
"VVJFX0tJTkRfRFRPX1VOU1BFQ0lGSUVEEAASOQo1UkVBRF9UQUdfVkFMVUVT",
"X0ZBSUxVUkVfS0lORF9EVE9fQ09OTkVDVElPTl9OT1RfRk9VTkQQARI9CjlS",
"RUFEX1RBR19WQUxVRVNfRkFJTFVSRV9LSU5EX0RUT19DT05ORUNUSU9OX05P",
"VF9DT05ORUNURUQQAhIsCihSRUFEX1RBR19WQUxVRVNfRkFJTFVSRV9LSU5E",
"X0RUT19USU1FT1VUEAMSMQotUkVBRF9UQUdfVkFMVUVTX0ZBSUxVUkVfS0lO",
"RF9EVE9fU0VSVkVSX0VSUk9SEAQqkwIKFFZlcmlmeUZhaWx1cmVLaW5kRHRv",
"EicKI1ZFUklGWV9GQUlMVVJFX0tJTkRfRFRPX1VOU1BFQ0lGSUVEEAASJwoj",
"VkVSSUZZX0ZBSUxVUkVfS0lORF9EVE9fVU5SRUFDSEFCTEUQARInCiNWRVJJ",
"RllfRkFJTFVSRV9LSU5EX0RUT19BVVRIX0ZBSUxFRBACEjEKLVZFUklGWV9G",
"QUlMVVJFX0tJTkRfRFRPX1VOVFJVU1RFRF9DRVJUSUZJQ0FURRADEiMKH1ZF",
"UklGWV9GQUlMVVJFX0tJTkRfRFRPX1RJTUVPVVQQBBIoCiRWRVJJRllfRkFJ",
"TFVSRV9LSU5EX0RUT19TRVJWRVJfRVJST1IQBSrlAQoaU3RvcmVBbmRGb3J3",
"YXJkQ2F0ZWdvcnlEdG8SLgoqU1RPUkVfQU5EX0ZPUldBUkRfQ0FURUdPUllf",
"RFRPX1VOU1BFQ0lGSUVEEAASMgouU1RPUkVfQU5EX0ZPUldBUkRfQ0FURUdP",
"UllfRFRPX0VYVEVSTkFMX1NZU1RFTRABEi8KK1NUT1JFX0FORF9GT1JXQVJE",
"X0NBVEVHT1JZX0RUT19OT1RJRklDQVRJT04QAhIyCi5TVE9SRV9BTkRfRk9S",
"V0FSRF9DQVRFR09SWV9EVE9fQ0FDSEVEX0RCX1dSSVRFEAMqaAoNQWxhcm1T",
"dGF0ZUR0bxIfChtBTEFSTV9TVEFURV9EVE9fVU5TUEVDSUZJRUQQABIaChZB",
"TEFSTV9TVEFURV9EVE9fQUNUSVZFEAESGgoWQUxBUk1fU1RBVEVfRFRPX05P",
"Uk1BTBACKrkBCg1BbGFybUxldmVsRHRvEh8KG0FMQVJNX0xFVkVMX0RUT19V",
"TlNQRUNJRklFRBAAEhgKFEFMQVJNX0xFVkVMX0RUT19OT05FEAESFwoTQUxB",
"Uk1fTEVWRUxfRFRPX0xPVxACEhsKF0FMQVJNX0xFVkVMX0RUT19MT1dfTE9X",
"EAMSGAoUQUxBUk1fTEVWRUxfRFRPX0hJR0gQBBIdChlBTEFSTV9MRVZFTF9E",
"VE9fSElHSF9ISUdIEAUqkgEKDEFsYXJtS2luZER0bxIeChpBTEFSTV9LSU5E",
"X0RUT19VTlNQRUNJRklFRBAAEhsKF0FMQVJNX0tJTkRfRFRPX0NPTVBVVEVE",
"EAESIAocQUxBUk1fS0lORF9EVE9fTkFUSVZFX09QQ19VQRACEiMKH0FMQVJN",
"X0tJTkRfRFRPX05BVElWRV9NWF9BQ0NFU1MQAyroAQoTQWxhcm1TaGVsdmVT",
"dGF0ZUR0bxImCiJBTEFSTV9TSEVMVkVfU1RBVEVfRFRPX1VOU1BFQ0lGSUVE",
"EAASJAogQUxBUk1fU0hFTFZFX1NUQVRFX0RUT19VTlNIRUxWRUQQARIrCidB",
"TEFSTV9TSEVMVkVfU1RBVEVfRFRPX09ORV9TSE9UX1NIRUxWRUQQAhIoCiRB",
"TEFSTV9TSEVMVkVfU1RBVEVfRFRPX1RJTUVEX1NIRUxWRUQQAxIsCihBTEFS",
"TV9TSEVMVkVfU1RBVEVfRFRPX1BFUk1BTkVOVF9TSEVMVkVEEAQyhAUKElNp",
"dGVDb21tYW5kU2VydmljZRJsChBFeGVjdXRlTGlmZWN5Y2xlEiwuc2NhZGFi",
"cmlkZ2Uuc2l0ZWNvbW1hbmQudjEuTGlmZWN5Y2xlUmVxdWVzdBoqLnNjYWRh",
"YnJpZGdlLnNpdGVjb21tYW5kLnYxLkxpZmVjeWNsZVJlcGx5EmAKDEV4ZWN1",
"dGVPcGNVYRIoLnNjYWRhYnJpZGdlLnNpdGVjb21tYW5kLnYxLk9wY1VhUmVx",
"dWVzdBomLnNjYWRhYnJpZGdlLnNpdGVjb21tYW5kLnYxLk9wY1VhUmVwbHkS",
"YAoMRXhlY3V0ZVF1ZXJ5Eiguc2NhZGFicmlkZ2Uuc2l0ZWNvbW1hbmQudjEu",
"UXVlcnlSZXF1ZXN0GiYuc2NhZGFicmlkZ2Uuc2l0ZWNvbW1hbmQudjEuUXVl",
"cnlSZXBseRJjCg1FeGVjdXRlUGFya2VkEikuc2NhZGFicmlkZ2Uuc2l0ZWNv",
"bW1hbmQudjEuUGFya2VkUmVxdWVzdBonLnNjYWRhYnJpZGdlLnNpdGVjb21t",
"YW5kLnYxLlBhcmtlZFJlcGx5EmAKDEV4ZWN1dGVSb3V0ZRIoLnNjYWRhYnJp",
"ZGdlLnNpdGVjb21tYW5kLnYxLlJvdXRlUmVxdWVzdBomLnNjYWRhYnJpZGdl",
"LnNpdGVjb21tYW5kLnYxLlJvdXRlUmVwbHkSdQoPVHJpZ2dlckZhaWxvdmVy",
"EjIuc2NhZGFicmlkZ2Uuc2l0ZWNvbW1hbmQudjEuVHJpZ2dlclNpdGVGYWls",
"b3ZlckR0bxouLnNjYWRhYnJpZGdlLnNpdGVjb21tYW5kLnYxLlNpdGVGYWls",
"b3ZlckFja0R0b0IrqgIoWkIuTU9NLldXLlNjYWRhQnJpZGdlLkNvbW11bmlj",
"YXRpb24uR3JwY2IGcHJvdG8z"));
"KAkSFwoPYXR0cmlidXRlX25hbWVzGAMgAygJEi0KCXRpbWVzdGFtcBgEIAEo",
"CzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASGwoTcGFyZW50X2V4ZWN1",
"dGlvbl9pZBgFIAEoCSLLAQofUm91dGVUb0dldEF0dHJpYnV0ZXNSZXNwb25z",
"ZUR0bxIWCg5jb3JyZWxhdGlvbl9pZBgBIAEoCRI5CgZ2YWx1ZXMYAiABKAsy",
"KS5zY2FkYWJyaWRnZS5zaXRlY29tbWFuZC52MS5Mb29zZVZhbHVlTWFwEg8K",
"B3N1Y2Nlc3MYAyABKAgSFQoNZXJyb3JfbWVzc2FnZRgEIAEoCRItCgl0aW1l",
"c3RhbXAYBSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wItQCCh5S",
"b3V0ZVRvU2V0QXR0cmlidXRlc1JlcXVlc3REdG8SFgoOY29ycmVsYXRpb25f",
"aWQYASABKAkSHAoUaW5zdGFuY2VfdW5pcXVlX25hbWUYAiABKAkSaQoQYXR0",
"cmlidXRlX3ZhbHVlcxgDIAMoCzJPLnNjYWRhYnJpZGdlLnNpdGVjb21tYW5k",
"LnYxLlJvdXRlVG9TZXRBdHRyaWJ1dGVzUmVxdWVzdER0by5BdHRyaWJ1dGVW",
"YWx1ZXNFbnRyeRItCgl0aW1lc3RhbXAYBCABKAsyGi5nb29nbGUucHJvdG9i",
"dWYuVGltZXN0YW1wEhsKE3BhcmVudF9leGVjdXRpb25faWQYBSABKAkSDQoF",
"dHJhY2UYBiABKAgaNgoUQXR0cmlidXRlVmFsdWVzRW50cnkSCwoDa2V5GAEg",
"ASgJEg0KBXZhbHVlGAIgASgJOgI4ASKQAQofUm91dGVUb1NldEF0dHJpYnV0",
"ZXNSZXNwb25zZUR0bxIWCg5jb3JyZWxhdGlvbl9pZBgBIAEoCRIPCgdzdWNj",
"ZXNzGAIgASgIEhUKDWVycm9yX21lc3NhZ2UYAyABKAkSLQoJdGltZXN0YW1w",
"GAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCLDAgohUm91dGVU",
"b1dhaXRGb3JBdHRyaWJ1dGVSZXF1ZXN0RHRvEhYKDmNvcnJlbGF0aW9uX2lk",
"GAEgASgJEhwKFGluc3RhbmNlX3VuaXF1ZV9uYW1lGAIgASgJEhYKDmF0dHJp",
"YnV0ZV9uYW1lGAMgASgJEjoKFHRhcmdldF92YWx1ZV9lbmNvZGVkGAQgASgL",
"MhwuZ29vZ2xlLnByb3RvYnVmLlN0cmluZ1ZhbHVlEioKB3RpbWVvdXQYBSAB",
"KAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb24SLQoJdGltZXN0YW1wGAYg",
"ASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIbChNwYXJlbnRfZXhl",
"Y3V0aW9uX2lkGAcgASgJEhwKFHJlcXVpcmVfZ29vZF9xdWFsaXR5GAggASgI",
"Iv8BCiJSb3V0ZVRvV2FpdEZvckF0dHJpYnV0ZVJlc3BvbnNlRHRvEhYKDmNv",
"cnJlbGF0aW9uX2lkGAEgASgJEg8KB21hdGNoZWQYAiABKAgSNQoFdmFsdWUY",
"AyABKAsyJi5zY2FkYWJyaWRnZS5zaXRlY29tbWFuZC52MS5Mb29zZVZhbHVl",
"Eg8KB3F1YWxpdHkYBCABKAkSEQoJdGltZWRfb3V0GAUgASgIEg8KB3N1Y2Nl",
"c3MYBiABKAgSFQoNZXJyb3JfbWVzc2FnZRgHIAEoCRItCgl0aW1lc3RhbXAY",
"CCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIokDCgxSb3V0ZVJl",
"cXVlc3QSSgoNcm91dGVfdG9fY2FsbBgBIAEoCzIxLnNjYWRhYnJpZGdlLnNp",
"dGVjb21tYW5kLnYxLlJvdXRlVG9DYWxsUmVxdWVzdER0b0gAEl0KF3JvdXRl",
"X3RvX2dldF9hdHRyaWJ1dGVzGAIgASgLMjouc2NhZGFicmlkZ2Uuc2l0ZWNv",
"bW1hbmQudjEuUm91dGVUb0dldEF0dHJpYnV0ZXNSZXF1ZXN0RHRvSAASXQoX",
"cm91dGVfdG9fc2V0X2F0dHJpYnV0ZXMYAyABKAsyOi5zY2FkYWJyaWRnZS5z",
"aXRlY29tbWFuZC52MS5Sb3V0ZVRvU2V0QXR0cmlidXRlc1JlcXVlc3REdG9I",
"ABJkChtyb3V0ZV90b193YWl0X2Zvcl9hdHRyaWJ1dGUYBCABKAsyPS5zY2Fk",
"YWJyaWRnZS5zaXRlY29tbWFuZC52MS5Sb3V0ZVRvV2FpdEZvckF0dHJpYnV0",
"ZVJlcXVlc3REdG9IAEIJCgdjb21tYW5kIokDCgpSb3V0ZVJlcGx5EksKDXJv",
"dXRlX3RvX2NhbGwYASABKAsyMi5zY2FkYWJyaWRnZS5zaXRlY29tbWFuZC52",
"MS5Sb3V0ZVRvQ2FsbFJlc3BvbnNlRHRvSAASXgoXcm91dGVfdG9fZ2V0X2F0",
"dHJpYnV0ZXMYAiABKAsyOy5zY2FkYWJyaWRnZS5zaXRlY29tbWFuZC52MS5S",
"b3V0ZVRvR2V0QXR0cmlidXRlc1Jlc3BvbnNlRHRvSAASXgoXcm91dGVfdG9f",
"c2V0X2F0dHJpYnV0ZXMYAyABKAsyOy5zY2FkYWJyaWRnZS5zaXRlY29tbWFu",
"ZC52MS5Sb3V0ZVRvU2V0QXR0cmlidXRlc1Jlc3BvbnNlRHRvSAASZQobcm91",
"dGVfdG9fd2FpdF9mb3JfYXR0cmlidXRlGAQgASgLMj4uc2NhZGFicmlkZ2Uu",
"c2l0ZWNvbW1hbmQudjEuUm91dGVUb1dhaXRGb3JBdHRyaWJ1dGVSZXNwb25z",
"ZUR0b0gAQgcKBXJlcGx5IkEKFlRyaWdnZXJTaXRlRmFpbG92ZXJEdG8SFgoO",
"Y29ycmVsYXRpb25faWQYASABKAkSDwoHc2l0ZV9pZBgCIAEoCSJtChJTaXRl",
"RmFpbG92ZXJBY2tEdG8SFgoOY29ycmVsYXRpb25faWQYASABKAkSEAoIYWNj",
"ZXB0ZWQYAiABKAgSFgoOdGFyZ2V0X2FkZHJlc3MYAyABKAkSFQoNZXJyb3Jf",
"bWVzc2FnZRgEIAEoCSrLAQoTRGVwbG95bWVudFN0YXR1c0R0bxIlCiFERVBM",
"T1lNRU5UX1NUQVRVU19EVE9fVU5TUEVDSUZJRUQQABIhCh1ERVBMT1lNRU5U",
"X1NUQVRVU19EVE9fUEVORElORxABEiUKIURFUExPWU1FTlRfU1RBVFVTX0RU",
"T19JTl9QUk9HUkVTUxACEiEKHURFUExPWU1FTlRfU1RBVFVTX0RUT19TVUND",
"RVNTEAMSIAocREVQTE9ZTUVOVF9TVEFUVVNfRFRPX0ZBSUxFRBAEKsQBChJC",
"cm93c2VOb2RlQ2xhc3NEdG8SJQohQlJPV1NFX05PREVfQ0xBU1NfRFRPX1VO",
"U1BFQ0lGSUVEEAASIAocQlJPV1NFX05PREVfQ0xBU1NfRFRPX09CSkVDVBAB",
"EiIKHkJST1dTRV9OT0RFX0NMQVNTX0RUT19WQVJJQUJMRRACEiAKHEJST1dT",
"RV9OT0RFX0NMQVNTX0RUT19NRVRIT0QQAxIfChtCUk9XU0VfTk9ERV9DTEFT",
"U19EVE9fT1RIRVIQBCqhAgoUQnJvd3NlRmFpbHVyZUtpbmREdG8SJwojQlJP",
"V1NFX0ZBSUxVUkVfS0lORF9EVE9fVU5TUEVDSUZJRUQQABIwCixCUk9XU0Vf",
"RkFJTFVSRV9LSU5EX0RUT19DT05ORUNUSU9OX05PVF9GT1VORBABEjQKMEJS",
"T1dTRV9GQUlMVVJFX0tJTkRfRFRPX0NPTk5FQ1RJT05fTk9UX0NPTk5FQ1RF",
"RBACEikKJUJST1dTRV9GQUlMVVJFX0tJTkRfRFRPX05PVF9CUk9XU0FCTEUQ",
"AxIjCh9CUk9XU0VfRkFJTFVSRV9LSU5EX0RUT19USU1FT1VUEAQSKAokQlJP",
"V1NFX0ZBSUxVUkVfS0lORF9EVE9fU0VSVkVSX0VSUk9SEAUqqgIKG1JlYWRU",
"YWdWYWx1ZXNGYWlsdXJlS2luZER0bxIwCixSRUFEX1RBR19WQUxVRVNfRkFJ",
"TFVSRV9LSU5EX0RUT19VTlNQRUNJRklFRBAAEjkKNVJFQURfVEFHX1ZBTFVF",
"U19GQUlMVVJFX0tJTkRfRFRPX0NPTk5FQ1RJT05fTk9UX0ZPVU5EEAESPQo5",
"UkVBRF9UQUdfVkFMVUVTX0ZBSUxVUkVfS0lORF9EVE9fQ09OTkVDVElPTl9O",
"T1RfQ09OTkVDVEVEEAISLAooUkVBRF9UQUdfVkFMVUVTX0ZBSUxVUkVfS0lO",
"RF9EVE9fVElNRU9VVBADEjEKLVJFQURfVEFHX1ZBTFVFU19GQUlMVVJFX0tJ",
"TkRfRFRPX1NFUlZFUl9FUlJPUhAEKpMCChRWZXJpZnlGYWlsdXJlS2luZER0",
"bxInCiNWRVJJRllfRkFJTFVSRV9LSU5EX0RUT19VTlNQRUNJRklFRBAAEicK",
"I1ZFUklGWV9GQUlMVVJFX0tJTkRfRFRPX1VOUkVBQ0hBQkxFEAESJwojVkVS",
"SUZZX0ZBSUxVUkVfS0lORF9EVE9fQVVUSF9GQUlMRUQQAhIxCi1WRVJJRllf",
"RkFJTFVSRV9LSU5EX0RUT19VTlRSVVNURURfQ0VSVElGSUNBVEUQAxIjCh9W",
"RVJJRllfRkFJTFVSRV9LSU5EX0RUT19USU1FT1VUEAQSKAokVkVSSUZZX0ZB",
"SUxVUkVfS0lORF9EVE9fU0VSVkVSX0VSUk9SEAUq5QEKGlN0b3JlQW5kRm9y",
"d2FyZENhdGVnb3J5RHRvEi4KKlNUT1JFX0FORF9GT1JXQVJEX0NBVEVHT1JZ",
"X0RUT19VTlNQRUNJRklFRBAAEjIKLlNUT1JFX0FORF9GT1JXQVJEX0NBVEVH",
"T1JZX0RUT19FWFRFUk5BTF9TWVNURU0QARIvCitTVE9SRV9BTkRfRk9SV0FS",
"RF9DQVRFR09SWV9EVE9fTk9USUZJQ0FUSU9OEAISMgouU1RPUkVfQU5EX0ZP",
"UldBUkRfQ0FURUdPUllfRFRPX0NBQ0hFRF9EQl9XUklURRADKmgKDUFsYXJt",
"U3RhdGVEdG8SHwobQUxBUk1fU1RBVEVfRFRPX1VOU1BFQ0lGSUVEEAASGgoW",
"QUxBUk1fU1RBVEVfRFRPX0FDVElWRRABEhoKFkFMQVJNX1NUQVRFX0RUT19O",
"T1JNQUwQAiq5AQoNQWxhcm1MZXZlbER0bxIfChtBTEFSTV9MRVZFTF9EVE9f",
"VU5TUEVDSUZJRUQQABIYChRBTEFSTV9MRVZFTF9EVE9fTk9ORRABEhcKE0FM",
"QVJNX0xFVkVMX0RUT19MT1cQAhIbChdBTEFSTV9MRVZFTF9EVE9fTE9XX0xP",
"VxADEhgKFEFMQVJNX0xFVkVMX0RUT19ISUdIEAQSHQoZQUxBUk1fTEVWRUxf",
"RFRPX0hJR0hfSElHSBAFKpIBCgxBbGFybUtpbmREdG8SHgoaQUxBUk1fS0lO",
"RF9EVE9fVU5TUEVDSUZJRUQQABIbChdBTEFSTV9LSU5EX0RUT19DT01QVVRF",
"RBABEiAKHEFMQVJNX0tJTkRfRFRPX05BVElWRV9PUENfVUEQAhIjCh9BTEFS",
"TV9LSU5EX0RUT19OQVRJVkVfTVhfQUNDRVNTEAMq6AEKE0FsYXJtU2hlbHZl",
"U3RhdGVEdG8SJgoiQUxBUk1fU0hFTFZFX1NUQVRFX0RUT19VTlNQRUNJRklF",
"RBAAEiQKIEFMQVJNX1NIRUxWRV9TVEFURV9EVE9fVU5TSEVMVkVEEAESKwon",
"QUxBUk1fU0hFTFZFX1NUQVRFX0RUT19PTkVfU0hPVF9TSEVMVkVEEAISKAok",
"QUxBUk1fU0hFTFZFX1NUQVRFX0RUT19USU1FRF9TSEVMVkVEEAMSLAooQUxB",
"Uk1fU0hFTFZFX1NUQVRFX0RUT19QRVJNQU5FTlRfU0hFTFZFRBAEMoQFChJT",
"aXRlQ29tbWFuZFNlcnZpY2USbAoQRXhlY3V0ZUxpZmVjeWNsZRIsLnNjYWRh",
"YnJpZGdlLnNpdGVjb21tYW5kLnYxLkxpZmVjeWNsZVJlcXVlc3QaKi5zY2Fk",
"YWJyaWRnZS5zaXRlY29tbWFuZC52MS5MaWZlY3ljbGVSZXBseRJgCgxFeGVj",
"dXRlT3BjVWESKC5zY2FkYWJyaWRnZS5zaXRlY29tbWFuZC52MS5PcGNVYVJl",
"cXVlc3QaJi5zY2FkYWJyaWRnZS5zaXRlY29tbWFuZC52MS5PcGNVYVJlcGx5",
"EmAKDEV4ZWN1dGVRdWVyeRIoLnNjYWRhYnJpZGdlLnNpdGVjb21tYW5kLnYx",
"LlF1ZXJ5UmVxdWVzdBomLnNjYWRhYnJpZGdlLnNpdGVjb21tYW5kLnYxLlF1",
"ZXJ5UmVwbHkSYwoNRXhlY3V0ZVBhcmtlZBIpLnNjYWRhYnJpZGdlLnNpdGVj",
"b21tYW5kLnYxLlBhcmtlZFJlcXVlc3QaJy5zY2FkYWJyaWRnZS5zaXRlY29t",
"bWFuZC52MS5QYXJrZWRSZXBseRJgCgxFeGVjdXRlUm91dGUSKC5zY2FkYWJy",
"aWRnZS5zaXRlY29tbWFuZC52MS5Sb3V0ZVJlcXVlc3QaJi5zY2FkYWJyaWRn",
"ZS5zaXRlY29tbWFuZC52MS5Sb3V0ZVJlcGx5EnUKD1RyaWdnZXJGYWlsb3Zl",
"chIyLnNjYWRhYnJpZGdlLnNpdGVjb21tYW5kLnYxLlRyaWdnZXJTaXRlRmFp",
"bG92ZXJEdG8aLi5zY2FkYWJyaWRnZS5zaXRlY29tbWFuZC52MS5TaXRlRmFp",
"bG92ZXJBY2tEdG9CK6oCKFpCLk1PTS5XVy5TY2FkYUJyaWRnZS5Db21tdW5p",
"Y2F0aW9uLkdycGNiBnByb3RvMw=="));
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
new pbr::FileDescriptor[] { global::Google.Protobuf.WellKnownTypes.TimestampReflection.Descriptor, global::Google.Protobuf.WellKnownTypes.DurationReflection.Descriptor, global::Google.Protobuf.WellKnownTypes.WrappersReflection.Descriptor, global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.SitestreamReflection.Descriptor, },
new pbr::GeneratedClrTypeInfo(new[] {typeof(global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.DeploymentStatusDto), typeof(global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.BrowseNodeClassDto), typeof(global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.BrowseFailureKindDto), typeof(global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.ReadTagValuesFailureKindDto), typeof(global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.VerifyFailureKindDto), typeof(global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.StoreAndForwardCategoryDto), typeof(global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.AlarmStateDto), typeof(global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.AlarmLevelDto), typeof(global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.AlarmKindDto), typeof(global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.AlarmShelveStateDto), }, null, new pbr::GeneratedClrTypeInfo[] {
@@ -582,7 +583,7 @@ namespace ZB.MOM.WW.ScadaBridge.Communication.Grpc {
new pbr::GeneratedClrTypeInfo(typeof(global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.UnsubscribeDebugViewAckDto), global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.UnsubscribeDebugViewAckDto.Parser, null, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.AlarmConditionStateDto), global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.AlarmConditionStateDto.Parser, new[]{ "Active", "Acknowledged", "Confirmed", "Shelve", "Suppressed", "Severity" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.DebugAttributeValueDto), global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.DebugAttributeValueDto.Parser, new[]{ "InstanceUniqueName", "AttributePath", "AttributeName", "Value", "Quality", "Timestamp" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.DebugAlarmStateDto), global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.DebugAlarmStateDto.Parser, new[]{ "InstanceUniqueName", "AlarmName", "State", "Priority", "Timestamp", "Level", "Message", "Kind", "Condition", "SourceReference", "AlarmTypeName", "Category", "OperatorUser", "OperatorComment", "OriginalRaiseTime", "CurrentValue", "LimitValue", "NativeSourceCanonicalName", "IsConfiguredPlaceholder", "IsMesReportable" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.DebugAlarmStateDto), global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.DebugAlarmStateDto.Parser, new[]{ "InstanceUniqueName", "AlarmName", "State", "Priority", "Timestamp", "Level", "Message", "Kind", "Condition", "SourceReference", "AlarmTypeName", "Category", "OperatorUser", "OperatorComment", "OriginalRaiseTime", "CurrentValue", "LimitValue", "NativeSourceCanonicalName", "IsConfiguredPlaceholder", "IsMesReportable", "AckTime" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.DebugViewSnapshotDto), global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.DebugViewSnapshotDto.Parser, new[]{ "InstanceUniqueName", "AttributeValues", "AlarmStates", "SnapshotTimestamp", "InstanceNotFound" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.QueryRequest), global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.QueryRequest.Parser, new[]{ "EventLogQuery", "DebugSnapshot", "SubscribeDebugView", "UnsubscribeDebugView" }, new[]{ "Command" }, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.QueryReply), global::ZB.MOM.WW.ScadaBridge.Communication.Grpc.QueryReply.Parser, new[]{ "EventLogQuery", "DebugViewSnapshot", "UnsubscribeDebugView" }, new[]{ "Reply" }, null, null, null),
@@ -22345,6 +22346,7 @@ namespace ZB.MOM.WW.ScadaBridge.Communication.Grpc {
nativeSourceCanonicalName_ = other.nativeSourceCanonicalName_;
isConfiguredPlaceholder_ = other.isConfiguredPlaceholder_;
isMesReportable_ = other.isMesReportable_;
ackTime_ = other.ackTime_ != null ? other.ackTime_.Clone() : null;
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
}
@@ -22606,6 +22608,23 @@ namespace ZB.MOM.WW.ScadaBridge.Communication.Grpc {
}
}
/// <summary>Field number for the "ack_time" field.</summary>
public const int AckTimeFieldNumber = 21;
private global::Google.Protobuf.WellKnownTypes.Timestamp ackTime_;
/// <summary>
/// When the alarm was last acknowledged (AlarmStateChanged.AckTime; mirrors
/// AlarmStateUpdate.ack_time = 24 on the live stream, Gitea #84). Absent => null,
/// including from a pre-#84 site.
/// </summary>
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::Google.Protobuf.WellKnownTypes.Timestamp AckTime {
get { return ackTime_; }
set {
ackTime_ = value;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override bool Equals(object other) {
@@ -22641,6 +22660,7 @@ namespace ZB.MOM.WW.ScadaBridge.Communication.Grpc {
if (NativeSourceCanonicalName != other.NativeSourceCanonicalName) return false;
if (IsConfiguredPlaceholder != other.IsConfiguredPlaceholder) return false;
if (IsMesReportable != other.IsMesReportable) return false;
if (!object.Equals(AckTime, other.AckTime)) return false;
return Equals(_unknownFields, other._unknownFields);
}
@@ -22668,6 +22688,7 @@ namespace ZB.MOM.WW.ScadaBridge.Communication.Grpc {
if (NativeSourceCanonicalName.Length != 0) hash ^= NativeSourceCanonicalName.GetHashCode();
if (IsConfiguredPlaceholder != false) hash ^= IsConfiguredPlaceholder.GetHashCode();
if (IsMesReportable != false) hash ^= IsMesReportable.GetHashCode();
if (ackTime_ != null) hash ^= AckTime.GetHashCode();
if (_unknownFields != null) {
hash ^= _unknownFields.GetHashCode();
}
@@ -22766,6 +22787,10 @@ namespace ZB.MOM.WW.ScadaBridge.Communication.Grpc {
output.WriteRawTag(160, 1);
output.WriteBool(IsMesReportable);
}
if (ackTime_ != null) {
output.WriteRawTag(170, 1);
output.WriteMessage(AckTime);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(output);
}
@@ -22856,6 +22881,10 @@ namespace ZB.MOM.WW.ScadaBridge.Communication.Grpc {
output.WriteRawTag(160, 1);
output.WriteBool(IsMesReportable);
}
if (ackTime_ != null) {
output.WriteRawTag(170, 1);
output.WriteMessage(AckTime);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(ref output);
}
@@ -22926,6 +22955,9 @@ namespace ZB.MOM.WW.ScadaBridge.Communication.Grpc {
if (IsMesReportable != false) {
size += 2 + 1;
}
if (ackTime_ != null) {
size += 2 + pb::CodedOutputStream.ComputeMessageSize(AckTime);
}
if (_unknownFields != null) {
size += _unknownFields.CalculateSize();
}
@@ -23007,6 +23039,12 @@ namespace ZB.MOM.WW.ScadaBridge.Communication.Grpc {
if (other.IsMesReportable != false) {
IsMesReportable = other.IsMesReportable;
}
if (other.ackTime_ != null) {
if (ackTime_ == null) {
AckTime = new global::Google.Protobuf.WellKnownTypes.Timestamp();
}
AckTime.MergeFrom(other.AckTime);
}
_unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
}
@@ -23115,6 +23153,13 @@ namespace ZB.MOM.WW.ScadaBridge.Communication.Grpc {
IsMesReportable = input.ReadBool();
break;
}
case 170: {
if (ackTime_ == null) {
AckTime = new global::Google.Protobuf.WellKnownTypes.Timestamp();
}
input.ReadMessage(AckTime);
break;
}
}
}
#endif
@@ -23223,6 +23268,13 @@ namespace ZB.MOM.WW.ScadaBridge.Communication.Grpc {
IsMesReportable = input.ReadBool();
break;
}
case 170: {
if (ackTime_ == null) {
AckTime = new global::Google.Protobuf.WellKnownTypes.Timestamp();
}
input.ReadMessage(AckTime);
break;
}
}
}
}