VOL-4877: Tx power of transceivers available on the DMI interface
Change-Id: If48d7ac4970459c520ac43463d2ec3bda95b46fe
diff --git a/VERSION b/VERSION
index f8e233b..81c871d 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-1.9.0
+1.10.0
diff --git a/cpp/dmi/hw.pb.cc b/cpp/dmi/hw.pb.cc
index c63704b..ddf179b 100644
--- a/cpp/dmi/hw.pb.cc
+++ b/cpp/dmi/hw.pb.cc
@@ -448,6 +448,8 @@
PROTOBUF_FIELD_OFFSET(::dmi::TransceiverComponentsAttributes, rx_wavelength_),
PROTOBUF_FIELD_OFFSET(::dmi::TransceiverComponentsAttributes, tx_wavelength_),
PROTOBUF_FIELD_OFFSET(::dmi::TransceiverComponentsAttributes, wavelength_scale_),
+ PROTOBUF_FIELD_OFFSET(::dmi::TransceiverComponentsAttributes, tx_power_),
+ PROTOBUF_FIELD_OFFSET(::dmi::TransceiverComponentsAttributes, tx_power_scale_),
~0u, // no _has_bits_
PROTOBUF_FIELD_OFFSET(::dmi::Component, _internal_metadata_),
~0u, // no _extensions_
@@ -516,9 +518,9 @@
{ 74, -1, sizeof(::dmi::ContainerComponentAttributes)},
{ 80, -1, sizeof(::dmi::PsuComponentAttributes)},
{ 86, -1, sizeof(::dmi::TransceiverComponentsAttributes)},
- { 98, -1, sizeof(::dmi::Component)},
- { 128, -1, sizeof(::dmi::Hardware)},
- { 136, -1, sizeof(::dmi::ModifiableComponent)},
+ { 100, -1, sizeof(::dmi::Component)},
+ { 130, -1, sizeof(::dmi::Hardware)},
+ { 138, -1, sizeof(::dmi::ModifiableComponent)},
};
static ::google::protobuf::Message const * const file_default_instances[] = {
@@ -594,121 +596,123 @@
".PsuComponentAttributes.SupportedVoltage"
"\"P\n\020SupportedVoltage\022\037\n\033SUPPORTED_VOLTAG"
"E_UNDEFINED\020\000\022\007\n\003V48\020\001\022\010\n\004V230\020\002\022\010\n\004V115"
- "\020\003\"\360\003\n\037TransceiverComponentsAttributes\022D"
+ "\020\003\"\253\004\n\037TransceiverComponentsAttributes\022D"
"\n\013form_factor\030\001 \001(\0162/.dmi.TransceiverCom"
"ponentsAttributes.FormFactor\022(\n\ntrans_ty"
"pe\030\002 \001(\0162\024.dmi.TransceiverType\022\024\n\014max_di"
"stance\030\003 \001(\r\022+\n\022max_distance_scale\030\004 \001(\016"
"2\017.dmi.ValueScale\022\025\n\rrx_wavelength\030\005 \003(\r"
"\022\025\n\rtx_wavelength\030\006 \003(\r\022)\n\020wavelength_sc"
- "ale\030\007 \001(\0162\017.dmi.ValueScale\"\300\001\n\nFormFacto"
- "r\022\027\n\023FORM_FACTOR_UNKNOWN\020\000\022\010\n\004QSFP\020\001\022\r\n\t"
- "QSFP_PLUS\020\002\022\n\n\006QSFP28\020\003\022\007\n\003SFP\020\004\022\014\n\010SFP_"
- "PLUS\020\005\022\007\n\003XFP\020\006\022\010\n\004CFP4\020\007\022\010\n\004CFP2\020\010\022\010\n\004C"
- "PAK\020\t\022\006\n\002X2\020\n\022\t\n\005OTHER\020\013\022\007\n\003CFP\020\014\022\014\n\010CFP"
- "2_ACO\020\r\022\014\n\010CFP2_DCO\020\016\"\350\005\n\tComponent\022\014\n\004n"
- "ame\030\001 \001(\t\022!\n\005class\030\002 \001(\0162\022.dmi.Component"
- "Type\022\023\n\013description\030\003 \001(\t\022\016\n\006parent\030\004 \001("
- "\t\022\026\n\016parent_rel_pos\030\005 \001(\005\022 \n\010children\030\006 "
- "\003(\0132\016.dmi.Component\022\024\n\014hardware_rev\030\007 \001("
- "\t\022\024\n\014firmware_rev\030\010 \001(\t\022\024\n\014software_rev\030"
- "\t \001(\t\022\022\n\nserial_num\030\n \001(\t\022\020\n\010mfg_name\030\013 "
- "\001(\t\022\022\n\nmodel_name\030\014 \001(\t\022\r\n\005alias\030\r \001(\t\022\020"
- "\n\010asset_id\030\016 \001(\t\022\016\n\006is_fru\030\017 \001(\010\022,\n\010mfg_"
- "date\030\020 \001(\0132\032.google.protobuf.Timestamp\022\025"
- "\n\003uri\030\021 \001(\0132\010.dmi.Uri\022\027\n\004uuid\030\022 \001(\0132\t.dm"
- "i.Uuid\022\"\n\005state\030\023 \001(\0132\023.dmi.ComponentSta"
- "te\022-\n\013sensor_data\030\024 \003(\0132\030.dmi.ComponentS"
- "ensorData\0221\n\tport_attr\0302 \001(\0132\034.dmi.PortC"
- "omponentAttributesH\000\022;\n\016container_attr\0303"
- " \001(\0132!.dmi.ContainerComponentAttributesH"
- "\000\022/\n\010psu_attr\0304 \001(\0132\033.dmi.PsuComponentAt"
- "tributesH\000\022@\n\020transceiver_attr\0305 \001(\0132$.d"
- "mi.TransceiverComponentsAttributesH\000B\n\n\010"
- "specific\"\212\001\n\010Hardware\022/\n\013last_change\030\001 \001"
- "(\0132\032.google.protobuf.Timestamp\022\034\n\004root\030\002"
- " \001(\0132\016.dmi.Component\022/\n\013last_booted\030\003 \001("
- "\0132\032.google.protobuf.Timestamp\"\351\002\n\023Modifi"
- "ableComponent\022\014\n\004name\030\001 \001(\t\022!\n\005class\030\002 \001"
- "(\0162\022.dmi.ComponentType\022\036\n\006parent\030\003 \001(\0132\016"
- ".dmi.Component\022\026\n\016parent_rel_pos\030\004 \001(\005\022\r"
- "\n\005alias\030\005 \001(\t\022\020\n\010asset_id\030\006 \001(\t\022\025\n\003uri\030\007"
- " \001(\0132\010.dmi.Uri\022-\n\013admin_state\030\010 \001(\0162\030.dm"
- "i.ComponentAdminState\0227\n\tport_attr\0302 \001(\013"
- "2\".dmi.PortComponentChangeAttributesH\000\022="
- "\n\010trx_attr\0303 \001(\0132).dmi.TransceiverCompon"
- "entChangeAttributesH\000B\n\n\010specific*\264\003\n\rCo"
- "mponentType\022\034\n\030COMPONENT_TYPE_UNDEFINED\020"
- "\000\022\032\n\026COMPONENT_TYPE_UNKNOWN\020\001\022\032\n\026COMPONE"
- "NT_TYPE_CHASSIS\020\002\022\034\n\030COMPONENT_TYPE_BACK"
- "PLANE\020\003\022\034\n\030COMPONENT_TYPE_CONTAINER\020\004\022\037\n"
- "\033COMPONENT_TYPE_POWER_SUPPLY\020\005\022\026\n\022COMPON"
- "ENT_TYPE_FAN\020\006\022\031\n\025COMPONENT_TYPE_SENSOR\020"
- "\007\022\031\n\025COMPONENT_TYPE_MODULE\020\010\022\027\n\023COMPONEN"
- "T_TYPE_PORT\020\t\022\026\n\022COMPONENT_TYPE_CPU\020\n\022\032\n"
- "\026COMPONENT_TYPE_BATTERY\020\013\022\032\n\026COMPONENT_T"
- "YPE_STORAGE\020\014\022\031\n\025COMPONENT_TYPE_MEMORY\020\r"
- "\022\036\n\032COMPONENT_TYPE_TRANSCEIVER\020\016*\263\001\n\023Com"
- "ponentAdminState\022\036\n\032COMP_ADMIN_STATE_UND"
- "EFINED\020\000\022\034\n\030COMP_ADMIN_STATE_UNKNOWN\020\001\022\033"
- "\n\027COMP_ADMIN_STATE_LOCKED\020\002\022\"\n\036COMP_ADMI"
- "N_STATE_SHUTTING_DOWN\020\003\022\035\n\031COMP_ADMIN_ST"
- "ATE_UNLOCKED\020\004*\250\001\n\022ComponentOperState\022\035\n"
- "\031COMP_OPER_STATE_UNDEFINED\020\000\022\033\n\027COMP_OPE"
- "R_STATE_UNKNOWN\020\001\022\034\n\030COMP_OPER_STATE_DIS"
- "ABLED\020\002\022\033\n\027COMP_OPER_STATE_ENABLED\020\003\022\033\n\027"
- "COMP_OPER_STATE_TESTING\020\004*\246\001\n\023ComponentU"
- "sageState\022\036\n\032COMP_USAGE_STATE_UNDEFINED\020"
- "\000\022\034\n\030COMP_USAGE_STATE_UNKNOWN\020\001\022\031\n\025COMP_"
- "USAGE_STATE_IDLE\020\002\022\033\n\027COMP_USAGE_STATE_A"
- "CTIVE\020\003\022\031\n\025COMP_USAGE_STATE_BUSY\020\004*\217\002\n\023C"
- "omponentAlarmState\022\036\n\032COMP_ALARM_STATE_U"
- "NDEFINED\020\000\022\034\n\030COMP_ALARM_STATE_UNKNOWN\020\001"
- "\022!\n\035COMP_ALARM_STATE_UNDER_REPAIR\020\002\022\035\n\031C"
- "OMP_ALARM_STATE_CRITICAL\020\003\022\032\n\026COMP_ALARM"
- "_STATE_MAJOR\020\004\022\032\n\026COMP_ALARM_STATE_MINOR"
- "\020\005\022\034\n\030COMP_ALARM_STATE_WARNING\020\006\022\"\n\036COMP"
- "_ALARM_STATE_INDETERMINATE\020\007*\274\001\n\025Compone"
- "ntStandbyState\022 \n\034COMP_STANDBY_STATE_UND"
- "EFINED\020\000\022\036\n\032COMP_STANDBY_STATE_UNKNOWN\020\001"
- "\022\032\n\026COMP_STANDBY_STATE_HOT\020\002\022\033\n\027COMP_STA"
- "NDBY_STATE_COLD\020\003\022(\n$COMP_STANDBY_STATE_"
- "PROVIDING_SERVICE\020\004*\235\003\n\rDataValueType\022\030\n"
- "\024VALUE_TYPE_UNDEFINED\020\000\022\024\n\020VALUE_TYPE_OT"
- "HER\020\001\022\026\n\022VALUE_TYPE_UNKNOWN\020\002\022\027\n\023VALUE_T"
- "YPE_VOLTS_AC\020\003\022\027\n\023VALUE_TYPE_VOLTS_DC\020\004\022"
- "\026\n\022VALUE_TYPE_AMPERES\020\005\022\024\n\020VALUE_TYPE_WA"
- "TTS\020\006\022\024\n\020VALUE_TYPE_HERTZ\020\007\022\026\n\022VALUE_TYP"
- "E_CELSIUS\020\010\022\031\n\025VALUE_TYPE_PERCENT_RH\020\t\022\022"
- "\n\016VALUE_TYPE_RPM\020\n\022\022\n\016VALUE_TYPE_CMM\020\013\022\032"
- "\n\026VALUE_TYPE_TRUTH_VALUE\020\014\022\026\n\022VALUE_TYPE"
- "_PERCENT\020\r\022\025\n\021VALUE_TYPE_METERS\020\016\022\024\n\020VAL"
- "UE_TYPE_BYTES\020\017\022\022\n\016VALUE_TYPE_DBM\020\020*\244\003\n\n"
- "ValueScale\022\031\n\025VALUE_SCALE_UNDEFINED\020\000\022\025\n"
- "\021VALUE_SCALE_YOCTO\020\001\022\025\n\021VALUE_SCALE_ZEPT"
- "O\020\002\022\024\n\020VALUE_SCALE_ATTO\020\003\022\025\n\021VALUE_SCALE"
- "_FEMTO\020\004\022\024\n\020VALUE_SCALE_PICO\020\005\022\024\n\020VALUE_"
- "SCALE_NANO\020\006\022\025\n\021VALUE_SCALE_MICRO\020\007\022\025\n\021V"
- "ALUE_SCALE_MILLI\020\010\022\025\n\021VALUE_SCALE_UNITS\020"
- "\t\022\024\n\020VALUE_SCALE_KILO\020\n\022\024\n\020VALUE_SCALE_M"
- "EGA\020\013\022\024\n\020VALUE_SCALE_GIGA\020\014\022\024\n\020VALUE_SCA"
- "LE_TERA\020\r\022\024\n\020VALUE_SCALE_PETA\020\016\022\023\n\017VALUE"
- "_SCALE_EXA\020\017\022\025\n\021VALUE_SCALE_ZETTA\020\020\022\025\n\021V"
- "ALUE_SCALE_YOTTA\020\021*\202\001\n\014SensorStatus\022\033\n\027S"
- "ENSOR_STATUS_UNDEFINED\020\000\022\024\n\020SENSOR_STATU"
- "S_OK\020\001\022\035\n\031SENSOR_STATUS_UNAVAILABLE\020\002\022 \n"
- "\034SENSOR_STATUS_NONOPERATIONAL\020\003*\244\001\n\017Tran"
- "sceiverType\022\022\n\016TYPE_UNDEFINED\020\000\022\014\n\010ETHER"
- "NET\020\001\022\010\n\004GPON\020\002\022\t\n\005XGPON\020\003\022\n\n\006XGSPON\020\004\022\010"
- "\n\004CPON\020\005\022\013\n\007NG_PON2\020\006\022\010\n\004EPON\020\007\022\025\n\021COMBO"
- "_GPON_XGSPON\020\010\022\026\n\021TYPE_NOT_DETECTED\020\377\001B;"
- "Z9github.com/opencord/device-management-"
- "interface/v3/go/dmib\006proto3"
+ "ale\030\007 \001(\0162\017.dmi.ValueScale\022\020\n\010tx_power\030\010"
+ " \003(\005\022\'\n\016tx_power_scale\030\t \001(\0162\017.dmi.Value"
+ "Scale\"\300\001\n\nFormFactor\022\027\n\023FORM_FACTOR_UNKN"
+ "OWN\020\000\022\010\n\004QSFP\020\001\022\r\n\tQSFP_PLUS\020\002\022\n\n\006QSFP28"
+ "\020\003\022\007\n\003SFP\020\004\022\014\n\010SFP_PLUS\020\005\022\007\n\003XFP\020\006\022\010\n\004CF"
+ "P4\020\007\022\010\n\004CFP2\020\010\022\010\n\004CPAK\020\t\022\006\n\002X2\020\n\022\t\n\005OTHE"
+ "R\020\013\022\007\n\003CFP\020\014\022\014\n\010CFP2_ACO\020\r\022\014\n\010CFP2_DCO\020\016"
+ "\"\350\005\n\tComponent\022\014\n\004name\030\001 \001(\t\022!\n\005class\030\002 "
+ "\001(\0162\022.dmi.ComponentType\022\023\n\013description\030\003"
+ " \001(\t\022\016\n\006parent\030\004 \001(\t\022\026\n\016parent_rel_pos\030\005"
+ " \001(\005\022 \n\010children\030\006 \003(\0132\016.dmi.Component\022\024"
+ "\n\014hardware_rev\030\007 \001(\t\022\024\n\014firmware_rev\030\010 \001"
+ "(\t\022\024\n\014software_rev\030\t \001(\t\022\022\n\nserial_num\030\n"
+ " \001(\t\022\020\n\010mfg_name\030\013 \001(\t\022\022\n\nmodel_name\030\014 \001"
+ "(\t\022\r\n\005alias\030\r \001(\t\022\020\n\010asset_id\030\016 \001(\t\022\016\n\006i"
+ "s_fru\030\017 \001(\010\022,\n\010mfg_date\030\020 \001(\0132\032.google.p"
+ "rotobuf.Timestamp\022\025\n\003uri\030\021 \001(\0132\010.dmi.Uri"
+ "\022\027\n\004uuid\030\022 \001(\0132\t.dmi.Uuid\022\"\n\005state\030\023 \001(\013"
+ "2\023.dmi.ComponentState\022-\n\013sensor_data\030\024 \003"
+ "(\0132\030.dmi.ComponentSensorData\0221\n\tport_att"
+ "r\0302 \001(\0132\034.dmi.PortComponentAttributesH\000\022"
+ ";\n\016container_attr\0303 \001(\0132!.dmi.ContainerC"
+ "omponentAttributesH\000\022/\n\010psu_attr\0304 \001(\0132\033"
+ ".dmi.PsuComponentAttributesH\000\022@\n\020transce"
+ "iver_attr\0305 \001(\0132$.dmi.TransceiverCompone"
+ "ntsAttributesH\000B\n\n\010specific\"\212\001\n\010Hardware"
+ "\022/\n\013last_change\030\001 \001(\0132\032.google.protobuf."
+ "Timestamp\022\034\n\004root\030\002 \001(\0132\016.dmi.Component\022"
+ "/\n\013last_booted\030\003 \001(\0132\032.google.protobuf.T"
+ "imestamp\"\351\002\n\023ModifiableComponent\022\014\n\004name"
+ "\030\001 \001(\t\022!\n\005class\030\002 \001(\0162\022.dmi.ComponentTyp"
+ "e\022\036\n\006parent\030\003 \001(\0132\016.dmi.Component\022\026\n\016par"
+ "ent_rel_pos\030\004 \001(\005\022\r\n\005alias\030\005 \001(\t\022\020\n\010asse"
+ "t_id\030\006 \001(\t\022\025\n\003uri\030\007 \001(\0132\010.dmi.Uri\022-\n\013adm"
+ "in_state\030\010 \001(\0162\030.dmi.ComponentAdminState"
+ "\0227\n\tport_attr\0302 \001(\0132\".dmi.PortComponentC"
+ "hangeAttributesH\000\022=\n\010trx_attr\0303 \001(\0132).dm"
+ "i.TransceiverComponentChangeAttributesH\000"
+ "B\n\n\010specific*\264\003\n\rComponentType\022\034\n\030COMPON"
+ "ENT_TYPE_UNDEFINED\020\000\022\032\n\026COMPONENT_TYPE_U"
+ "NKNOWN\020\001\022\032\n\026COMPONENT_TYPE_CHASSIS\020\002\022\034\n\030"
+ "COMPONENT_TYPE_BACKPLANE\020\003\022\034\n\030COMPONENT_"
+ "TYPE_CONTAINER\020\004\022\037\n\033COMPONENT_TYPE_POWER"
+ "_SUPPLY\020\005\022\026\n\022COMPONENT_TYPE_FAN\020\006\022\031\n\025COM"
+ "PONENT_TYPE_SENSOR\020\007\022\031\n\025COMPONENT_TYPE_M"
+ "ODULE\020\010\022\027\n\023COMPONENT_TYPE_PORT\020\t\022\026\n\022COMP"
+ "ONENT_TYPE_CPU\020\n\022\032\n\026COMPONENT_TYPE_BATTE"
+ "RY\020\013\022\032\n\026COMPONENT_TYPE_STORAGE\020\014\022\031\n\025COMP"
+ "ONENT_TYPE_MEMORY\020\r\022\036\n\032COMPONENT_TYPE_TR"
+ "ANSCEIVER\020\016*\263\001\n\023ComponentAdminState\022\036\n\032C"
+ "OMP_ADMIN_STATE_UNDEFINED\020\000\022\034\n\030COMP_ADMI"
+ "N_STATE_UNKNOWN\020\001\022\033\n\027COMP_ADMIN_STATE_LO"
+ "CKED\020\002\022\"\n\036COMP_ADMIN_STATE_SHUTTING_DOWN"
+ "\020\003\022\035\n\031COMP_ADMIN_STATE_UNLOCKED\020\004*\250\001\n\022Co"
+ "mponentOperState\022\035\n\031COMP_OPER_STATE_UNDE"
+ "FINED\020\000\022\033\n\027COMP_OPER_STATE_UNKNOWN\020\001\022\034\n\030"
+ "COMP_OPER_STATE_DISABLED\020\002\022\033\n\027COMP_OPER_"
+ "STATE_ENABLED\020\003\022\033\n\027COMP_OPER_STATE_TESTI"
+ "NG\020\004*\246\001\n\023ComponentUsageState\022\036\n\032COMP_USA"
+ "GE_STATE_UNDEFINED\020\000\022\034\n\030COMP_USAGE_STATE"
+ "_UNKNOWN\020\001\022\031\n\025COMP_USAGE_STATE_IDLE\020\002\022\033\n"
+ "\027COMP_USAGE_STATE_ACTIVE\020\003\022\031\n\025COMP_USAGE"
+ "_STATE_BUSY\020\004*\217\002\n\023ComponentAlarmState\022\036\n"
+ "\032COMP_ALARM_STATE_UNDEFINED\020\000\022\034\n\030COMP_AL"
+ "ARM_STATE_UNKNOWN\020\001\022!\n\035COMP_ALARM_STATE_"
+ "UNDER_REPAIR\020\002\022\035\n\031COMP_ALARM_STATE_CRITI"
+ "CAL\020\003\022\032\n\026COMP_ALARM_STATE_MAJOR\020\004\022\032\n\026COM"
+ "P_ALARM_STATE_MINOR\020\005\022\034\n\030COMP_ALARM_STAT"
+ "E_WARNING\020\006\022\"\n\036COMP_ALARM_STATE_INDETERM"
+ "INATE\020\007*\274\001\n\025ComponentStandbyState\022 \n\034COM"
+ "P_STANDBY_STATE_UNDEFINED\020\000\022\036\n\032COMP_STAN"
+ "DBY_STATE_UNKNOWN\020\001\022\032\n\026COMP_STANDBY_STAT"
+ "E_HOT\020\002\022\033\n\027COMP_STANDBY_STATE_COLD\020\003\022(\n$"
+ "COMP_STANDBY_STATE_PROVIDING_SERVICE\020\004*\235"
+ "\003\n\rDataValueType\022\030\n\024VALUE_TYPE_UNDEFINED"
+ "\020\000\022\024\n\020VALUE_TYPE_OTHER\020\001\022\026\n\022VALUE_TYPE_U"
+ "NKNOWN\020\002\022\027\n\023VALUE_TYPE_VOLTS_AC\020\003\022\027\n\023VAL"
+ "UE_TYPE_VOLTS_DC\020\004\022\026\n\022VALUE_TYPE_AMPERES"
+ "\020\005\022\024\n\020VALUE_TYPE_WATTS\020\006\022\024\n\020VALUE_TYPE_H"
+ "ERTZ\020\007\022\026\n\022VALUE_TYPE_CELSIUS\020\010\022\031\n\025VALUE_"
+ "TYPE_PERCENT_RH\020\t\022\022\n\016VALUE_TYPE_RPM\020\n\022\022\n"
+ "\016VALUE_TYPE_CMM\020\013\022\032\n\026VALUE_TYPE_TRUTH_VA"
+ "LUE\020\014\022\026\n\022VALUE_TYPE_PERCENT\020\r\022\025\n\021VALUE_T"
+ "YPE_METERS\020\016\022\024\n\020VALUE_TYPE_BYTES\020\017\022\022\n\016VA"
+ "LUE_TYPE_DBM\020\020*\244\003\n\nValueScale\022\031\n\025VALUE_S"
+ "CALE_UNDEFINED\020\000\022\025\n\021VALUE_SCALE_YOCTO\020\001\022"
+ "\025\n\021VALUE_SCALE_ZEPTO\020\002\022\024\n\020VALUE_SCALE_AT"
+ "TO\020\003\022\025\n\021VALUE_SCALE_FEMTO\020\004\022\024\n\020VALUE_SCA"
+ "LE_PICO\020\005\022\024\n\020VALUE_SCALE_NANO\020\006\022\025\n\021VALUE"
+ "_SCALE_MICRO\020\007\022\025\n\021VALUE_SCALE_MILLI\020\010\022\025\n"
+ "\021VALUE_SCALE_UNITS\020\t\022\024\n\020VALUE_SCALE_KILO"
+ "\020\n\022\024\n\020VALUE_SCALE_MEGA\020\013\022\024\n\020VALUE_SCALE_"
+ "GIGA\020\014\022\024\n\020VALUE_SCALE_TERA\020\r\022\024\n\020VALUE_SC"
+ "ALE_PETA\020\016\022\023\n\017VALUE_SCALE_EXA\020\017\022\025\n\021VALUE"
+ "_SCALE_ZETTA\020\020\022\025\n\021VALUE_SCALE_YOTTA\020\021*\202\001"
+ "\n\014SensorStatus\022\033\n\027SENSOR_STATUS_UNDEFINE"
+ "D\020\000\022\024\n\020SENSOR_STATUS_OK\020\001\022\035\n\031SENSOR_STAT"
+ "US_UNAVAILABLE\020\002\022 \n\034SENSOR_STATUS_NONOPE"
+ "RATIONAL\020\003*\244\001\n\017TransceiverType\022\022\n\016TYPE_U"
+ "NDEFINED\020\000\022\014\n\010ETHERNET\020\001\022\010\n\004GPON\020\002\022\t\n\005XG"
+ "PON\020\003\022\n\n\006XGSPON\020\004\022\010\n\004CPON\020\005\022\013\n\007NG_PON2\020\006"
+ "\022\010\n\004EPON\020\007\022\025\n\021COMBO_GPON_XGSPON\020\010\022\026\n\021TYP"
+ "E_NOT_DETECTED\020\377\001B;Z9github.com/opencord"
+ "/device-management-interface/v3/go/dmib\006"
+ "proto3"
;
::google::protobuf::internal::DescriptorTable descriptor_table_dmi_2fhw_2eproto = {
false, InitDefaults_dmi_2fhw_2eproto,
descriptor_table_protodef_dmi_2fhw_2eproto,
- "dmi/hw.proto", &assign_descriptors_table_dmi_2fhw_2eproto, 6307,
+ "dmi/hw.proto", &assign_descriptors_table_dmi_2fhw_2eproto, 6366,
};
void AddDescriptors_dmi_2fhw_2eproto() {
@@ -5302,6 +5306,8 @@
const int TransceiverComponentsAttributes::kRxWavelengthFieldNumber;
const int TransceiverComponentsAttributes::kTxWavelengthFieldNumber;
const int TransceiverComponentsAttributes::kWavelengthScaleFieldNumber;
+const int TransceiverComponentsAttributes::kTxPowerFieldNumber;
+const int TransceiverComponentsAttributes::kTxPowerScaleFieldNumber;
#endif // !defined(_MSC_VER) || _MSC_VER >= 1900
TransceiverComponentsAttributes::TransceiverComponentsAttributes()
@@ -5313,18 +5319,19 @@
: ::google::protobuf::Message(),
_internal_metadata_(nullptr),
rx_wavelength_(from.rx_wavelength_),
- tx_wavelength_(from.tx_wavelength_) {
+ tx_wavelength_(from.tx_wavelength_),
+ tx_power_(from.tx_power_) {
_internal_metadata_.MergeFrom(from._internal_metadata_);
::memcpy(&form_factor_, &from.form_factor_,
- static_cast<size_t>(reinterpret_cast<char*>(&wavelength_scale_) -
- reinterpret_cast<char*>(&form_factor_)) + sizeof(wavelength_scale_));
+ static_cast<size_t>(reinterpret_cast<char*>(&tx_power_scale_) -
+ reinterpret_cast<char*>(&form_factor_)) + sizeof(tx_power_scale_));
// @@protoc_insertion_point(copy_constructor:dmi.TransceiverComponentsAttributes)
}
void TransceiverComponentsAttributes::SharedCtor() {
::memset(&form_factor_, 0, static_cast<size_t>(
- reinterpret_cast<char*>(&wavelength_scale_) -
- reinterpret_cast<char*>(&form_factor_)) + sizeof(wavelength_scale_));
+ reinterpret_cast<char*>(&tx_power_scale_) -
+ reinterpret_cast<char*>(&form_factor_)) + sizeof(tx_power_scale_));
}
TransceiverComponentsAttributes::~TransceiverComponentsAttributes() {
@@ -5352,9 +5359,10 @@
rx_wavelength_.Clear();
tx_wavelength_.Clear();
+ tx_power_.Clear();
::memset(&form_factor_, 0, static_cast<size_t>(
- reinterpret_cast<char*>(&wavelength_scale_) -
- reinterpret_cast<char*>(&form_factor_)) + sizeof(wavelength_scale_));
+ reinterpret_cast<char*>(&tx_power_scale_) -
+ reinterpret_cast<char*>(&form_factor_)) + sizeof(tx_power_scale_));
_internal_metadata_.Clear();
}
@@ -5450,6 +5458,34 @@
GOOGLE_PROTOBUF_PARSER_ASSERT(ptr);
break;
}
+ // repeated int32 tx_power = 8;
+ case 8: {
+ if (static_cast<::google::protobuf::uint8>(tag) == 66) {
+ ptr = ::google::protobuf::io::ReadSize(ptr, &size);
+ GOOGLE_PROTOBUF_PARSER_ASSERT(ptr);
+ parser_till_end = ::google::protobuf::internal::PackedInt32Parser;
+ object = msg->mutable_tx_power();
+ if (size > end - ptr) goto len_delim_till_end;
+ auto newend = ptr + size;
+ if (size) ptr = parser_till_end(ptr, newend, object, ctx);
+ GOOGLE_PROTOBUF_PARSER_ASSERT(ptr == newend);
+ break;
+ } else if (static_cast<::google::protobuf::uint8>(tag) != 64) goto handle_unusual;
+ do {
+ msg->add_tx_power(::google::protobuf::internal::ReadVarint(&ptr));
+ GOOGLE_PROTOBUF_PARSER_ASSERT(ptr);
+ if (ptr >= end) break;
+ } while ((::google::protobuf::io::UnalignedLoad<::google::protobuf::uint64>(ptr) & 255) == 64 && (ptr += 1));
+ break;
+ }
+ // .dmi.ValueScale tx_power_scale = 9;
+ case 9: {
+ if (static_cast<::google::protobuf::uint8>(tag) != 72) goto handle_unusual;
+ ::google::protobuf::uint64 val = ::google::protobuf::internal::ReadVarint(&ptr);
+ msg->set_tx_power_scale(static_cast<::dmi::ValueScale>(val));
+ GOOGLE_PROTOBUF_PARSER_ASSERT(ptr);
+ break;
+ }
default: {
handle_unusual:
if ((tag & 7) == 4 || tag == 0) {
@@ -5581,6 +5617,36 @@
break;
}
+ // repeated int32 tx_power = 8;
+ case 8: {
+ if (static_cast< ::google::protobuf::uint8>(tag) == (66 & 0xFF)) {
+ DO_((::google::protobuf::internal::WireFormatLite::ReadPackedPrimitive<
+ ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
+ input, this->mutable_tx_power())));
+ } else if (static_cast< ::google::protobuf::uint8>(tag) == (64 & 0xFF)) {
+ DO_((::google::protobuf::internal::WireFormatLite::ReadRepeatedPrimitiveNoInline<
+ ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
+ 1, 66u, input, this->mutable_tx_power())));
+ } else {
+ goto handle_unusual;
+ }
+ break;
+ }
+
+ // .dmi.ValueScale tx_power_scale = 9;
+ case 9: {
+ if (static_cast< ::google::protobuf::uint8>(tag) == (72 & 0xFF)) {
+ int value = 0;
+ DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
+ int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
+ input, &value)));
+ set_tx_power_scale(static_cast< ::dmi::ValueScale >(value));
+ } else {
+ goto handle_unusual;
+ }
+ break;
+ }
+
default: {
handle_unusual:
if (tag == 0) {
@@ -5659,6 +5725,23 @@
7, this->wavelength_scale(), output);
}
+ // repeated int32 tx_power = 8;
+ if (this->tx_power_size() > 0) {
+ ::google::protobuf::internal::WireFormatLite::WriteTag(8, ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED, output);
+ output->WriteVarint32(_tx_power_cached_byte_size_.load(
+ std::memory_order_relaxed));
+ }
+ for (int i = 0, n = this->tx_power_size(); i < n; i++) {
+ ::google::protobuf::internal::WireFormatLite::WriteInt32NoTag(
+ this->tx_power(i), output);
+ }
+
+ // .dmi.ValueScale tx_power_scale = 9;
+ if (this->tx_power_scale() != 0) {
+ ::google::protobuf::internal::WireFormatLite::WriteEnum(
+ 9, this->tx_power_scale(), output);
+ }
+
if (_internal_metadata_.have_unknown_fields()) {
::google::protobuf::internal::WireFormat::SerializeUnknownFields(
_internal_metadata_.unknown_fields(), output);
@@ -5727,6 +5810,25 @@
7, this->wavelength_scale(), target);
}
+ // repeated int32 tx_power = 8;
+ if (this->tx_power_size() > 0) {
+ target = ::google::protobuf::internal::WireFormatLite::WriteTagToArray(
+ 8,
+ ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED,
+ target);
+ target = ::google::protobuf::io::CodedOutputStream::WriteVarint32ToArray(
+ _tx_power_cached_byte_size_.load(std::memory_order_relaxed),
+ target);
+ target = ::google::protobuf::internal::WireFormatLite::
+ WriteInt32NoTagToArray(this->tx_power_, target);
+ }
+
+ // .dmi.ValueScale tx_power_scale = 9;
+ if (this->tx_power_scale() != 0) {
+ target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
+ 9, this->tx_power_scale(), target);
+ }
+
if (_internal_metadata_.have_unknown_fields()) {
target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
_internal_metadata_.unknown_fields(), target);
@@ -5778,6 +5880,21 @@
total_size += data_size;
}
+ // repeated int32 tx_power = 8;
+ {
+ size_t data_size = ::google::protobuf::internal::WireFormatLite::
+ Int32Size(this->tx_power_);
+ if (data_size > 0) {
+ total_size += 1 +
+ ::google::protobuf::internal::WireFormatLite::Int32Size(
+ static_cast<::google::protobuf::int32>(data_size));
+ }
+ int cached_size = ::google::protobuf::internal::ToCachedSize(data_size);
+ _tx_power_cached_byte_size_.store(cached_size,
+ std::memory_order_relaxed);
+ total_size += data_size;
+ }
+
// .dmi.TransceiverComponentsAttributes.FormFactor form_factor = 1;
if (this->form_factor() != 0) {
total_size += 1 +
@@ -5809,6 +5926,12 @@
::google::protobuf::internal::WireFormatLite::EnumSize(this->wavelength_scale());
}
+ // .dmi.ValueScale tx_power_scale = 9;
+ if (this->tx_power_scale() != 0) {
+ total_size += 1 +
+ ::google::protobuf::internal::WireFormatLite::EnumSize(this->tx_power_scale());
+ }
+
int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
SetCachedSize(cached_size);
return total_size;
@@ -5838,6 +5961,7 @@
rx_wavelength_.MergeFrom(from.rx_wavelength_);
tx_wavelength_.MergeFrom(from.tx_wavelength_);
+ tx_power_.MergeFrom(from.tx_power_);
if (from.form_factor() != 0) {
set_form_factor(from.form_factor());
}
@@ -5853,6 +5977,9 @@
if (from.wavelength_scale() != 0) {
set_wavelength_scale(from.wavelength_scale());
}
+ if (from.tx_power_scale() != 0) {
+ set_tx_power_scale(from.tx_power_scale());
+ }
}
void TransceiverComponentsAttributes::CopyFrom(const ::google::protobuf::Message& from) {
@@ -5882,11 +6009,13 @@
_internal_metadata_.Swap(&other->_internal_metadata_);
rx_wavelength_.InternalSwap(&other->rx_wavelength_);
tx_wavelength_.InternalSwap(&other->tx_wavelength_);
+ tx_power_.InternalSwap(&other->tx_power_);
swap(form_factor_, other->form_factor_);
swap(trans_type_, other->trans_type_);
swap(max_distance_, other->max_distance_);
swap(max_distance_scale_, other->max_distance_scale_);
swap(wavelength_scale_, other->wavelength_scale_);
+ swap(tx_power_scale_, other->tx_power_scale_);
}
::google::protobuf::Metadata TransceiverComponentsAttributes::GetMetadata() const {
diff --git a/cpp/dmi/hw.pb.h b/cpp/dmi/hw.pb.h
index c2fd5fa..cff4653 100644
--- a/cpp/dmi/hw.pb.h
+++ b/cpp/dmi/hw.pb.h
@@ -2309,6 +2309,18 @@
::google::protobuf::RepeatedField< ::google::protobuf::uint32 >*
mutable_tx_wavelength();
+ // repeated int32 tx_power = 8;
+ int tx_power_size() const;
+ void clear_tx_power();
+ static const int kTxPowerFieldNumber = 8;
+ ::google::protobuf::int32 tx_power(int index) const;
+ void set_tx_power(int index, ::google::protobuf::int32 value);
+ void add_tx_power(::google::protobuf::int32 value);
+ const ::google::protobuf::RepeatedField< ::google::protobuf::int32 >&
+ tx_power() const;
+ ::google::protobuf::RepeatedField< ::google::protobuf::int32 >*
+ mutable_tx_power();
+
// .dmi.TransceiverComponentsAttributes.FormFactor form_factor = 1;
void clear_form_factor();
static const int kFormFactorFieldNumber = 1;
@@ -2339,6 +2351,12 @@
::dmi::ValueScale wavelength_scale() const;
void set_wavelength_scale(::dmi::ValueScale value);
+ // .dmi.ValueScale tx_power_scale = 9;
+ void clear_tx_power_scale();
+ static const int kTxPowerScaleFieldNumber = 9;
+ ::dmi::ValueScale tx_power_scale() const;
+ void set_tx_power_scale(::dmi::ValueScale value);
+
// @@protoc_insertion_point(class_scope:dmi.TransceiverComponentsAttributes)
private:
class HasBitSetters;
@@ -2348,11 +2366,14 @@
mutable std::atomic<int> _rx_wavelength_cached_byte_size_;
::google::protobuf::RepeatedField< ::google::protobuf::uint32 > tx_wavelength_;
mutable std::atomic<int> _tx_wavelength_cached_byte_size_;
+ ::google::protobuf::RepeatedField< ::google::protobuf::int32 > tx_power_;
+ mutable std::atomic<int> _tx_power_cached_byte_size_;
int form_factor_;
int trans_type_;
::google::protobuf::uint32 max_distance_;
int max_distance_scale_;
int wavelength_scale_;
+ int tx_power_scale_;
mutable ::google::protobuf::internal::CachedSize _cached_size_;
friend struct ::TableStruct_dmi_2fhw_2eproto;
};
@@ -4245,6 +4266,50 @@
// @@protoc_insertion_point(field_set:dmi.TransceiverComponentsAttributes.wavelength_scale)
}
+// repeated int32 tx_power = 8;
+inline int TransceiverComponentsAttributes::tx_power_size() const {
+ return tx_power_.size();
+}
+inline void TransceiverComponentsAttributes::clear_tx_power() {
+ tx_power_.Clear();
+}
+inline ::google::protobuf::int32 TransceiverComponentsAttributes::tx_power(int index) const {
+ // @@protoc_insertion_point(field_get:dmi.TransceiverComponentsAttributes.tx_power)
+ return tx_power_.Get(index);
+}
+inline void TransceiverComponentsAttributes::set_tx_power(int index, ::google::protobuf::int32 value) {
+ tx_power_.Set(index, value);
+ // @@protoc_insertion_point(field_set:dmi.TransceiverComponentsAttributes.tx_power)
+}
+inline void TransceiverComponentsAttributes::add_tx_power(::google::protobuf::int32 value) {
+ tx_power_.Add(value);
+ // @@protoc_insertion_point(field_add:dmi.TransceiverComponentsAttributes.tx_power)
+}
+inline const ::google::protobuf::RepeatedField< ::google::protobuf::int32 >&
+TransceiverComponentsAttributes::tx_power() const {
+ // @@protoc_insertion_point(field_list:dmi.TransceiverComponentsAttributes.tx_power)
+ return tx_power_;
+}
+inline ::google::protobuf::RepeatedField< ::google::protobuf::int32 >*
+TransceiverComponentsAttributes::mutable_tx_power() {
+ // @@protoc_insertion_point(field_mutable_list:dmi.TransceiverComponentsAttributes.tx_power)
+ return &tx_power_;
+}
+
+// .dmi.ValueScale tx_power_scale = 9;
+inline void TransceiverComponentsAttributes::clear_tx_power_scale() {
+ tx_power_scale_ = 0;
+}
+inline ::dmi::ValueScale TransceiverComponentsAttributes::tx_power_scale() const {
+ // @@protoc_insertion_point(field_get:dmi.TransceiverComponentsAttributes.tx_power_scale)
+ return static_cast< ::dmi::ValueScale >(tx_power_scale_);
+}
+inline void TransceiverComponentsAttributes::set_tx_power_scale(::dmi::ValueScale value) {
+
+ tx_power_scale_ = value;
+ // @@protoc_insertion_point(field_set:dmi.TransceiverComponentsAttributes.tx_power_scale)
+}
+
// -------------------------------------------------------------------
// Component
diff --git a/dmi.pb b/dmi.pb
index 6f1f575..0da2781 100644
--- a/dmi.pb
+++ b/dmi.pb
Binary files differ
diff --git a/go/dmi/hw.pb.go b/go/dmi/hw.pb.go
index 8916174..c41bac2 100644
--- a/go/dmi/hw.pb.go
+++ b/go/dmi/hw.pb.go
@@ -1318,9 +1318,14 @@
MaxDistance uint32 `protobuf:"varint,3,opt,name=max_distance,json=maxDistance,proto3" json:"max_distance,omitempty"`
MaxDistanceScale ValueScale `protobuf:"varint,4,opt,name=max_distance_scale,json=maxDistanceScale,proto3,enum=dmi.ValueScale" json:"max_distance_scale,omitempty"`
// The receive and transmit wavelengths that the transeiver operates on
- RxWavelength []uint32 `protobuf:"varint,5,rep,packed,name=rx_wavelength,json=rxWavelength,proto3" json:"rx_wavelength,omitempty"`
- TxWavelength []uint32 `protobuf:"varint,6,rep,packed,name=tx_wavelength,json=txWavelength,proto3" json:"tx_wavelength,omitempty"`
- WavelengthScale ValueScale `protobuf:"varint,7,opt,name=wavelength_scale,json=wavelengthScale,proto3,enum=dmi.ValueScale" json:"wavelength_scale,omitempty"`
+ RxWavelength []uint32 `protobuf:"varint,5,rep,packed,name=rx_wavelength,json=rxWavelength,proto3" json:"rx_wavelength,omitempty"`
+ TxWavelength []uint32 `protobuf:"varint,6,rep,packed,name=tx_wavelength,json=txWavelength,proto3" json:"tx_wavelength,omitempty"`
+ WavelengthScale ValueScale `protobuf:"varint,7,opt,name=wavelength_scale,json=wavelengthScale,proto3,enum=dmi.ValueScale" json:"wavelength_scale,omitempty"`
+ // The tx powers on the transceiver; the value type of tx_power should be dBm.
+ // Note: When there are multiple rx/tx wavelengths and powers
+ // each of the corresponding ones should be aligned on the same index of the array
+ TxPower []int32 `protobuf:"varint,8,rep,packed,name=tx_power,json=txPower,proto3" json:"tx_power,omitempty"`
+ TxPowerScale ValueScale `protobuf:"varint,9,opt,name=tx_power_scale,json=txPowerScale,proto3,enum=dmi.ValueScale" json:"tx_power_scale,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
@@ -1400,6 +1405,20 @@
return ValueScale_VALUE_SCALE_UNDEFINED
}
+func (m *TransceiverComponentsAttributes) GetTxPower() []int32 {
+ if m != nil {
+ return m.TxPower
+ }
+ return nil
+}
+
+func (m *TransceiverComponentsAttributes) GetTxPowerScale() ValueScale {
+ if m != nil {
+ return m.TxPowerScale
+ }
+ return ValueScale_VALUE_SCALE_UNDEFINED
+}
+
type Component struct {
// The name of a component uniquely identifies a component within the hardware
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
@@ -1921,182 +1940,184 @@
func init() { proto.RegisterFile("dmi/hw.proto", fileDescriptor_d7c33d745c4ab367) }
var fileDescriptor_d7c33d745c4ab367 = []byte{
- // 2830 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcd, 0x92, 0xdb, 0xc6,
- 0xf1, 0x17, 0xbf, 0xc9, 0x26, 0xb9, 0x3b, 0x3b, 0xfa, 0xa2, 0xf5, 0x61, 0xcb, 0xfc, 0xcb, 0x2e,
- 0x79, 0xff, 0xf1, 0xee, 0x8a, 0x92, 0x52, 0x72, 0x5c, 0xae, 0x14, 0x08, 0x82, 0xbb, 0xb0, 0x48,
- 0x00, 0x1e, 0x80, 0x2b, 0xad, 0x73, 0x40, 0x61, 0x49, 0x2c, 0x85, 0x2a, 0x12, 0x60, 0x01, 0xe0,
- 0x5a, 0xaa, 0xca, 0x29, 0x95, 0x7b, 0x9e, 0x20, 0x37, 0x57, 0xca, 0xa7, 0x5c, 0x92, 0x63, 0x0e,
- 0xce, 0x21, 0x4f, 0x90, 0x53, 0x9e, 0x21, 0x0f, 0x91, 0xd4, 0xcc, 0x00, 0x24, 0x08, 0x62, 0x65,
- 0xb9, 0x2a, 0xb7, 0x99, 0xee, 0x5f, 0xf7, 0xf4, 0x74, 0xf7, 0xf4, 0x4c, 0x0f, 0x34, 0x26, 0x73,
- 0xe7, 0xf0, 0xf5, 0x77, 0x07, 0x0b, 0xdf, 0x0b, 0x3d, 0x5c, 0x98, 0xcc, 0x9d, 0x3b, 0x1f, 0x4d,
- 0x3d, 0x6f, 0x3a, 0xb3, 0x0f, 0x19, 0xe9, 0x7c, 0x79, 0x71, 0x18, 0x3a, 0x73, 0x3b, 0x08, 0xad,
- 0xf9, 0x82, 0xa3, 0xda, 0x77, 0xa0, 0x38, 0x5a, 0x3a, 0x13, 0x8c, 0xa1, 0xb8, 0x5c, 0x3a, 0x93,
- 0x56, 0xee, 0x41, 0xee, 0x51, 0x8d, 0xb0, 0x71, 0xfb, 0xff, 0x01, 0x4e, 0x2c, 0x7f, 0xf2, 0x9d,
- 0xe5, 0xdb, 0x72, 0x0f, 0xdf, 0x4f, 0x20, 0xea, 0x9d, 0xda, 0xc1, 0x64, 0xee, 0x1c, 0x50, 0xd1,
- 0x08, 0x7c, 0x1b, 0x0a, 0x23, 0xdf, 0xc1, 0x08, 0x0a, 0x4b, 0xdf, 0x89, 0xd4, 0xd0, 0x61, 0xfb,
- 0xf7, 0x05, 0xd8, 0x11, 0xbd, 0xf9, 0xc2, 0x73, 0x6d, 0x37, 0xd4, 0x43, 0x2b, 0xb4, 0xf1, 0x09,
- 0xe0, 0x80, 0x0e, 0xcc, 0x99, 0x15, 0x84, 0xe6, 0xf8, 0xb5, 0xe5, 0x4e, 0xed, 0x58, 0xf1, 0x9d,
- 0x03, 0x6e, 0xf2, 0x41, 0x6c, 0xf2, 0x81, 0x11, 0x9b, 0x4c, 0x10, 0x93, 0x1a, 0x58, 0x41, 0x28,
- 0x72, 0x19, 0xfc, 0x05, 0xd4, 0xad, 0xc9, 0xdc, 0x71, 0x4d, 0xc6, 0x69, 0xe5, 0x1f, 0xe4, 0x1e,
- 0xed, 0x74, 0x5a, 0xcc, 0xb6, 0xd5, 0x9a, 0x02, 0x05, 0xb0, 0x85, 0x09, 0x58, 0xab, 0x31, 0xfe,
- 0x25, 0x80, 0xb7, 0xb0, 0xfd, 0x48, 0xb2, 0xc0, 0x24, 0x6f, 0x6f, 0x4a, 0xaa, 0x0b, 0xdb, 0xe7,
- 0x82, 0x35, 0x2f, 0x1e, 0xd2, 0x25, 0x97, 0x81, 0x35, 0xb5, 0x23, 0xc1, 0x62, 0xd6, 0x92, 0x23,
- 0x0a, 0x88, 0x96, 0x5c, 0xae, 0xc6, 0xcc, 0xda, 0x99, 0xe5, 0xcf, 0x23, 0xd1, 0x52, 0xa6, 0xb5,
- 0x14, 0x10, 0x5b, 0xbb, 0x1a, 0xe3, 0x5f, 0x43, 0x33, 0x08, 0x2d, 0x77, 0x72, 0xfe, 0x36, 0x12,
- 0x2e, 0x33, 0xe1, 0x3b, 0x9b, 0xc2, 0x3a, 0x87, 0x70, 0xf1, 0x46, 0x90, 0x98, 0xb5, 0xff, 0x9d,
- 0x87, 0xeb, 0x6b, 0x9c, 0xed, 0x06, 0x9e, 0xdf, 0xb3, 0x42, 0x0b, 0xdf, 0x80, 0xd2, 0xa5, 0x35,
- 0x5b, 0xda, 0xcc, 0xfd, 0x25, 0xc2, 0x27, 0xf8, 0x53, 0x28, 0x86, 0x6f, 0x17, 0xb1, 0x43, 0x31,
- 0x5b, 0x85, 0xc2, 0x4f, 0x29, 0xd7, 0x78, 0xbb, 0xb0, 0x09, 0xe3, 0xe3, 0x4f, 0xa0, 0x14, 0x8c,
- 0xad, 0x59, 0xec, 0xbf, 0x5d, 0x06, 0x64, 0x20, 0x9d, 0x92, 0x09, 0xe7, 0xe2, 0x7b, 0x50, 0x5b,
- 0xf8, 0xf6, 0xd8, 0x09, 0x1c, 0xcf, 0x65, 0x1e, 0x2b, 0x91, 0x35, 0x01, 0x7f, 0x06, 0x65, 0xba,
- 0xa7, 0x65, 0x10, 0x79, 0x64, 0x8f, 0x69, 0xe1, 0x36, 0xea, 0x8c, 0x41, 0x22, 0x00, 0xfe, 0x3f,
- 0x68, 0x2e, 0x5d, 0x27, 0x0c, 0xcc, 0x89, 0x13, 0x2c, 0x66, 0xd6, 0x5b, 0xe6, 0x86, 0x1a, 0x69,
- 0x30, 0x62, 0x8f, 0xd3, 0xf0, 0x73, 0xa8, 0xad, 0xd2, 0xbc, 0x55, 0xf9, 0xc9, 0xac, 0x5a, 0x83,
- 0xf1, 0x3e, 0xec, 0xb1, 0xfd, 0x9b, 0xcb, 0xc5, 0x84, 0xe6, 0xa7, 0x4f, 0x3d, 0x5d, 0x7d, 0x90,
- 0x7b, 0xd4, 0x24, 0xbb, 0x8c, 0x31, 0x62, 0x74, 0x42, 0x23, 0x72, 0x17, 0x6a, 0x13, 0x2b, 0xb4,
- 0x4c, 0xe6, 0xa7, 0x1a, 0x33, 0xa3, 0x4a, 0x09, 0xd4, 0x3b, 0xed, 0xbf, 0x97, 0xe1, 0xb6, 0xe6,
- 0xf9, 0xe1, 0x3a, 0xac, 0x61, 0xe8, 0x3b, 0xe7, 0xcb, 0xd0, 0x0e, 0xf0, 0x37, 0xb0, 0x33, 0xf6,
- 0x5c, 0xd7, 0x1e, 0x87, 0x9e, 0xcf, 0xa5, 0x73, 0x6c, 0xdb, 0xfb, 0x6c, 0xdb, 0x57, 0x48, 0x1d,
- 0x88, 0xb1, 0x08, 0xf3, 0x7e, 0x73, 0x9c, 0x9c, 0xe2, 0xe7, 0x50, 0x0a, 0x16, 0xb6, 0x3d, 0x89,
- 0xe2, 0xd5, 0x7e, 0xa7, 0x26, 0x9d, 0x22, 0x09, 0x17, 0xc0, 0x02, 0x54, 0x99, 0x4b, 0xc6, 0xde,
- 0x2c, 0x8a, 0xe1, 0x27, 0xef, 0x14, 0xd6, 0x22, 0x30, 0x59, 0x89, 0xe1, 0x4f, 0x60, 0x67, 0xf1,
- 0xfa, 0x6d, 0xe0, 0x8c, 0xad, 0x99, 0x39, 0xb3, 0xce, 0xed, 0x19, 0x8b, 0x70, 0x8d, 0x34, 0x63,
- 0xea, 0x80, 0x12, 0x69, 0xe8, 0xe6, 0xd6, 0x62, 0xe1, 0xb8, 0xd3, 0x08, 0x55, 0xe2, 0xa1, 0x8b,
- 0x88, 0x1c, 0xf4, 0x14, 0x9a, 0x0b, 0xcf, 0x35, 0x9d, 0x89, 0x39, 0xf6, 0xdc, 0x0b, 0x67, 0xca,
- 0xe2, 0x5b, 0xef, 0xa0, 0xc8, 0x26, 0x57, 0x9e, 0x88, 0x8c, 0x4e, 0xea, 0x8b, 0xf5, 0x04, 0x3f,
- 0x81, 0x9b, 0x6c, 0x37, 0xa6, 0xb5, 0x0c, 0x3d, 0xd7, 0x9e, 0x7a, 0xa1, 0x63, 0x85, 0x34, 0xd5,
- 0x68, 0xf0, 0xab, 0xe4, 0x06, 0x63, 0x0a, 0x9b, 0xbc, 0xf6, 0x02, 0x9a, 0x1b, 0x3e, 0xc5, 0xf7,
- 0xa0, 0x25, 0xaa, 0x8a, 0x22, 0x89, 0x86, 0x4a, 0x4c, 0xe3, 0x4c, 0x93, 0xcc, 0x91, 0xd2, 0x93,
- 0xfa, 0xb2, 0x22, 0xf5, 0xd0, 0x35, 0x5c, 0x85, 0x22, 0xf9, 0xfa, 0xe9, 0x33, 0x94, 0xc3, 0x0d,
- 0xa8, 0xf6, 0xe5, 0xae, 0x44, 0xcc, 0x81, 0x88, 0xf2, 0x78, 0x17, 0xea, 0x7c, 0xa6, 0x8b, 0xa6,
- 0x26, 0xa2, 0x02, 0x6e, 0x42, 0x8d, 0x13, 0x86, 0x9a, 0x8a, 0x8a, 0xb8, 0x06, 0x25, 0xa2, 0x77,
- 0x9e, 0x74, 0x50, 0xa9, 0xfd, 0xe7, 0x1c, 0x94, 0x98, 0xf3, 0xf1, 0x75, 0xd8, 0xd5, 0x35, 0x49,
- 0xea, 0x6d, 0xac, 0x50, 0x87, 0x4a, 0xef, 0x4c, 0x11, 0x86, 0xb2, 0x88, 0x72, 0x54, 0xcb, 0xb1,
- 0x7c, 0x2c, 0x74, 0x65, 0xc3, 0x7c, 0x8c, 0xf2, 0x78, 0x07, 0x60, 0x35, 0x3d, 0x42, 0x85, 0xe4,
- 0xbc, 0xf3, 0x0c, 0x15, 0x93, 0xf3, 0xa7, 0x47, 0xa8, 0x44, 0xad, 0x5a, 0xe3, 0x8f, 0x50, 0x39,
- 0x49, 0x78, 0x7a, 0x74, 0x84, 0x2a, 0x18, 0x41, 0x63, 0x28, 0xc5, 0x1a, 0x8e, 0x8e, 0x50, 0x35,
- 0x49, 0x79, 0xdc, 0x79, 0x76, 0x84, 0x6a, 0xed, 0xdf, 0x42, 0x35, 0x8e, 0x37, 0xbe, 0x05, 0x58,
- 0x23, 0xaa, 0xa1, 0x8a, 0xea, 0x60, 0xc3, 0xea, 0x06, 0x54, 0x25, 0xe3, 0x44, 0x22, 0x8a, 0x64,
- 0xa0, 0x1c, 0xf5, 0xd2, 0xb1, 0xa6, 0x2a, 0x28, 0x4f, 0xf7, 0xfd, 0x8a, 0x0d, 0x0b, 0x18, 0xa0,
- 0xfc, 0xea, 0x58, 0xa7, 0x63, 0xe6, 0x8e, 0xe3, 0xbe, 0xa0, 0x1b, 0xa8, 0x44, 0xc9, 0xba, 0x44,
- 0x64, 0x61, 0x80, 0xca, 0x54, 0x4e, 0xa2, 0x80, 0x0a, 0x1d, 0x75, 0x65, 0x43, 0x47, 0xd5, 0xf6,
- 0x08, 0xee, 0x6f, 0x64, 0x21, 0xaf, 0xf9, 0x89, 0x83, 0xb4, 0x95, 0x2c, 0xb9, 0xf7, 0x48, 0x96,
- 0xf6, 0x6f, 0xe0, 0xa1, 0xe1, 0x5b, 0x6e, 0x30, 0xb6, 0x9d, 0x4b, 0xdb, 0xbf, 0x5a, 0xfb, 0x13,
- 0x80, 0x90, 0xe2, 0x92, 0x47, 0xf4, 0x06, 0x53, 0x9d, 0x10, 0x67, 0x87, 0xb1, 0xc6, 0x70, 0xec,
- 0xdc, 0x8f, 0xa1, 0x9e, 0x58, 0x18, 0xdf, 0x84, 0x32, 0xb7, 0x90, 0xc9, 0x37, 0x48, 0x89, 0x19,
- 0x82, 0xbf, 0x82, 0xbb, 0x91, 0xe1, 0x4c, 0x72, 0xee, 0x84, 0xe6, 0xc2, 0xf6, 0x1d, 0x6f, 0xe2,
- 0x8c, 0x9d, 0xf0, 0x2d, 0x3b, 0xc4, 0x4d, 0xd2, 0x62, 0x58, 0x23, 0x02, 0x68, 0x6b, 0x7e, 0x5b,
- 0x82, 0x7b, 0xa2, 0xe7, 0x86, 0x96, 0xe3, 0x26, 0xec, 0x4f, 0x58, 0xbe, 0x7d, 0x20, 0x73, 0x19,
- 0x07, 0xb2, 0xfd, 0x8f, 0x1c, 0xdc, 0xd2, 0x82, 0x65, 0x96, 0x86, 0x33, 0xd8, 0x0b, 0x96, 0x8b,
- 0x85, 0xe7, 0x87, 0xf6, 0xc4, 0xbc, 0xf4, 0x66, 0xa1, 0x35, 0x8d, 0x5d, 0xf0, 0x0b, 0xee, 0xdd,
- 0x4c, 0xb9, 0x03, 0x3d, 0x16, 0x3a, 0xe5, 0x32, 0x04, 0x05, 0x29, 0x4a, 0x5b, 0x03, 0x94, 0x46,
- 0xe1, 0x8f, 0xe0, 0xae, 0x3e, 0xd2, 0x34, 0x95, 0x18, 0x52, 0xcf, 0x3c, 0x55, 0x07, 0x86, 0x70,
- 0xbc, 0x79, 0xf8, 0x2a, 0x50, 0x38, 0x7d, 0xfa, 0x9c, 0xe7, 0xd7, 0x69, 0xe7, 0xc9, 0x11, 0xca,
- 0xb3, 0xd1, 0xe3, 0xc7, 0xcf, 0x50, 0xa1, 0xfd, 0xcf, 0x22, 0x7c, 0x94, 0x15, 0xd1, 0x20, 0xb1,
- 0x21, 0x0d, 0xea, 0x17, 0x9e, 0x3f, 0x37, 0x2f, 0x2c, 0x7a, 0xdc, 0xa3, 0xad, 0x1c, 0xa6, 0xa3,
- 0x99, 0x25, 0x7a, 0xd0, 0xf7, 0xfc, 0x79, 0x9f, 0x89, 0x11, 0xb8, 0x58, 0x8d, 0x53, 0xe9, 0x91,
- 0x7f, 0xaf, 0xf4, 0xc0, 0x1f, 0x43, 0x63, 0x6e, 0xbd, 0xa1, 0x97, 0x57, 0x68, 0xb9, 0x63, 0x7e,
- 0x6b, 0x36, 0x49, 0x7d, 0x6e, 0xbd, 0xe9, 0x45, 0x24, 0xfc, 0x15, 0xe0, 0x24, 0xc4, 0xe4, 0xd7,
- 0x6b, 0x31, 0xfb, 0x7a, 0x45, 0x09, 0x49, 0x46, 0xa1, 0x55, 0xd6, 0x7f, 0x63, 0x7e, 0x67, 0x5d,
- 0xda, 0x33, 0xdb, 0x9d, 0x86, 0xaf, 0x5b, 0xa5, 0x07, 0x85, 0x47, 0x4d, 0xd2, 0xf0, 0xdf, 0xbc,
- 0x5c, 0xd1, 0x28, 0x28, 0xdc, 0x00, 0x95, 0x39, 0x28, 0x4c, 0x82, 0x7e, 0x05, 0x68, 0x8d, 0x88,
- 0xcc, 0xa8, 0x64, 0x9b, 0xb1, 0xbb, 0x06, 0x32, 0x42, 0xfb, 0xc7, 0x1c, 0xc0, 0xda, 0x6f, 0xf8,
- 0x36, 0x5c, 0xef, 0xab, 0x64, 0x68, 0xf6, 0x05, 0x56, 0x5b, 0x47, 0xca, 0x0b, 0x45, 0x7d, 0xa9,
- 0xf0, 0xa2, 0xfa, 0x8d, 0xde, 0xd7, 0x78, 0xbd, 0xa3, 0x23, 0x53, 0x1b, 0x8c, 0x74, 0x94, 0xa7,
- 0xb5, 0x81, 0x4e, 0x3b, 0xcf, 0x51, 0x81, 0x06, 0x9f, 0x62, 0x8a, 0xb4, 0xd4, 0xac, 0x20, 0x25,
- 0x4a, 0x7e, 0xd5, 0xd7, 0x78, 0xed, 0x10, 0xfb, 0xda, 0x53, 0x5e, 0x3b, 0xc4, 0xbe, 0xd6, 0x41,
- 0x55, 0x36, 0xd2, 0x84, 0x17, 0xa8, 0x86, 0xcb, 0x90, 0x7f, 0xd5, 0x41, 0x40, 0x0b, 0x8f, 0x4a,
- 0xeb, 0x14, 0xaa, 0x53, 0x49, 0xb1, 0xaf, 0xa1, 0x06, 0x55, 0x48, 0xf1, 0xa6, 0x20, 0xaa, 0xa8,
- 0xb9, 0x9a, 0xf5, 0x44, 0x15, 0xed, 0xb4, 0xff, 0x55, 0x81, 0xda, 0x2a, 0x1f, 0xe8, 0xf3, 0xd8,
- 0xb5, 0xe6, 0x76, 0xfc, 0x3c, 0xa6, 0x63, 0xfc, 0x08, 0x4a, 0xe3, 0x99, 0x15, 0x04, 0x1b, 0x8f,
- 0xa4, 0x95, 0x08, 0x0b, 0x3d, 0x07, 0xe0, 0x07, 0x50, 0x9f, 0xd8, 0xc1, 0xd8, 0x77, 0x16, 0xec,
- 0x56, 0x2a, 0x30, 0x25, 0x49, 0x12, 0xbe, 0x05, 0xe5, 0x85, 0xe5, 0xdb, 0x6e, 0x18, 0xdd, 0x9d,
- 0xd1, 0x0c, 0x3f, 0x84, 0x1d, 0x3e, 0x32, 0x7d, 0x7b, 0x66, 0x2e, 0x3c, 0xfe, 0x44, 0x2a, 0x91,
- 0x06, 0xa7, 0x12, 0x7b, 0xa6, 0x79, 0x01, 0xde, 0x87, 0xea, 0xf8, 0xb5, 0x33, 0x9b, 0xf8, 0xb6,
- 0xcb, 0x42, 0x59, 0xef, 0xec, 0x6c, 0x1a, 0x43, 0x56, 0x7c, 0x9a, 0x82, 0xaf, 0xa3, 0x47, 0xbd,
- 0xe9, 0xdb, 0x97, 0x2c, 0xa4, 0x35, 0x52, 0x8f, 0x69, 0xc4, 0xbe, 0xa4, 0x90, 0x0b, 0xc7, 0x9f,
- 0xaf, 0x20, 0x55, 0x0e, 0x89, 0x69, 0x11, 0x24, 0xf0, 0x2e, 0xc2, 0x15, 0x84, 0xbf, 0x7f, 0xea,
- 0x31, 0x8d, 0x42, 0xee, 0x03, 0x04, 0xb6, 0xef, 0x58, 0x33, 0xd3, 0x5d, 0xce, 0x5b, 0xc0, 0x00,
- 0x35, 0x4e, 0x51, 0x96, 0x73, 0xfc, 0x01, 0x54, 0xe7, 0x17, 0x53, 0x93, 0x79, 0xb5, 0xce, 0x98,
- 0x95, 0xf9, 0xc5, 0x54, 0xa1, 0x8e, 0xbd, 0x0f, 0x30, 0xf7, 0x26, 0xf6, 0x8c, 0x33, 0x1b, 0x5c,
- 0x92, 0x51, 0x18, 0xfb, 0x06, 0x94, 0xac, 0x99, 0x63, 0x05, 0xad, 0x26, 0xe3, 0xf0, 0x09, 0xd5,
- 0x67, 0x05, 0x81, 0x1d, 0xd2, 0x62, 0xbb, 0xc3, 0xf5, 0xb1, 0xb9, 0x3c, 0xa1, 0x55, 0xd8, 0x09,
- 0xcc, 0x0b, 0x7f, 0xd9, 0xda, 0x65, 0xef, 0x81, 0x92, 0x13, 0xf4, 0xfd, 0x25, 0x7e, 0xc6, 0x2d,
- 0xa0, 0x0f, 0xba, 0x16, 0xfa, 0xc9, 0x57, 0x22, 0xb5, 0xae, 0x47, 0xdf, 0x7d, 0x77, 0x78, 0x87,
- 0xb3, 0xc7, 0x24, 0xaa, 0xbc, 0x0d, 0xf2, 0x1d, 0xd6, 0xeb, 0xac, 0x7a, 0x24, 0x9c, 0xd9, 0x23,
- 0xe1, 0xcf, 0xa0, 0xc4, 0x1f, 0xef, 0xd7, 0x19, 0xff, 0xfa, 0xd6, 0xe3, 0x3d, 0xa4, 0x2f, 0xe6,
- 0xb8, 0x55, 0x08, 0xd8, 0x03, 0x98, 0xda, 0x67, 0xb5, 0x6e, 0xb0, 0xa8, 0xa6, 0x5a, 0x85, 0xf5,
- 0x2b, 0x9e, 0x40, 0xb0, 0x7e, 0xd1, 0x7f, 0x09, 0x35, 0x5a, 0x5e, 0x4d, 0x2b, 0x0c, 0xfd, 0x56,
- 0x87, 0xad, 0x74, 0xef, 0x5d, 0x6f, 0xba, 0x93, 0x6b, 0xa4, 0x4a, 0x05, 0x28, 0x05, 0x7f, 0xcd,
- 0x1e, 0xa7, 0xfc, 0x6e, 0xe1, 0x1a, 0x9e, 0x30, 0x0d, 0x1f, 0x47, 0x4b, 0x5f, 0x7d, 0xed, 0x9c,
- 0x5c, 0x63, 0xaf, 0x52, 0xce, 0x67, 0xba, 0x9e, 0x43, 0x75, 0x11, 0x2c, 0xb9, 0x96, 0xa7, 0x4c,
- 0xcb, 0xdd, 0x77, 0x5c, 0x1e, 0x27, 0xd7, 0x48, 0x65, 0x11, 0x2c, 0x99, 0xe4, 0x37, 0x80, 0xc2,
- 0x75, 0x15, 0xe5, 0x1a, 0x9e, 0x31, 0x0d, 0x0f, 0xdf, 0xa7, 0x66, 0x9f, 0x5c, 0x23, 0xbb, 0x09,
- 0x79, 0xca, 0xe8, 0x02, 0x54, 0x83, 0x85, 0x3d, 0x76, 0x2e, 0x9c, 0x71, 0xfb, 0x87, 0x1c, 0x54,
- 0xe3, 0xce, 0x16, 0x7f, 0x09, 0xf5, 0x44, 0x1b, 0xfa, 0x1e, 0x5d, 0x28, 0xcc, 0x56, 0x0d, 0x28,
- 0x6e, 0x43, 0xd1, 0xf7, 0xbc, 0x90, 0x95, 0x80, 0xed, 0x53, 0xc7, 0x78, 0xab, 0x05, 0xce, 0x3d,
- 0x2f, 0xb4, 0x27, 0xec, 0xf4, 0xbf, 0xc7, 0x02, 0x5d, 0x86, 0x6e, 0xff, 0x58, 0x80, 0xeb, 0x43,
- 0x6f, 0xe2, 0x5c, 0x38, 0xd6, 0xf9, 0xcc, 0xfe, 0x5f, 0x15, 0xa4, 0x4f, 0x57, 0xe5, 0xa6, 0x90,
- 0x69, 0xf8, 0xd5, 0xe5, 0xa7, 0x98, 0x51, 0x7e, 0x56, 0x07, 0xb2, 0x74, 0xd5, 0x81, 0x2c, 0x6f,
- 0x1e, 0xc8, 0xe8, 0x08, 0x55, 0xb2, 0x8e, 0x50, 0xaa, 0xa3, 0xaf, 0xfe, 0x8c, 0x8e, 0x5e, 0xd8,
- 0x4e, 0xfc, 0x8c, 0x4e, 0x28, 0xfd, 0xd0, 0xdb, 0x48, 0xff, 0x3e, 0x54, 0x43, 0xff, 0x4d, 0x32,
- 0xf1, 0x3f, 0xbb, 0x32, 0xe1, 0x32, 0x14, 0x55, 0x42, 0xff, 0x4d, 0x3a, 0xdb, 0xf6, 0xff, 0x5a,
- 0xa0, 0x9d, 0x46, 0x22, 0x0a, 0xbc, 0xd3, 0x18, 0x6a, 0xaa, 0x22, 0x29, 0xc6, 0x76, 0xa7, 0x71,
- 0x07, 0x6e, 0x6d, 0x71, 0xf9, 0x85, 0x99, 0xcb, 0xe0, 0x89, 0x27, 0x82, 0xae, 0xcb, 0xf4, 0xce,
- 0xdc, 0xd6, 0xda, 0x15, 0xc4, 0x17, 0xda, 0x40, 0x50, 0x24, 0x54, 0xc8, 0xe0, 0x8a, 0xaa, 0x62,
- 0x08, 0xb2, 0x22, 0x11, 0x54, 0xa4, 0x2f, 0xb0, 0x14, 0x57, 0x53, 0x5f, 0xd2, 0xa6, 0x66, 0xa4,
- 0x69, 0x83, 0x33, 0x54, 0xa2, 0xcf, 0xff, 0x14, 0xa0, 0x2f, 0x28, 0xa8, 0x8c, 0x3f, 0x80, 0x9b,
- 0x29, 0xba, 0x2e, 0x29, 0xba, 0x4a, 0x50, 0x25, 0x83, 0x35, 0x54, 0x7b, 0xa3, 0x81, 0x84, 0xaa,
- 0xf4, 0x41, 0xb0, 0xb5, 0x1c, 0x31, 0x50, 0x2d, 0x63, 0x19, 0x51, 0x1b, 0x21, 0xc8, 0xd8, 0x77,
- 0x57, 0x30, 0x0c, 0x89, 0x9c, 0xa1, 0x7a, 0x06, 0x4f, 0x37, 0x54, 0x22, 0x1c, 0x4b, 0xa8, 0x91,
- 0x65, 0x83, 0x34, 0x54, 0xc9, 0x19, 0x6a, 0xe2, 0x0f, 0xe1, 0x4e, 0x8a, 0x65, 0x10, 0x41, 0xd1,
- 0x45, 0x49, 0x3e, 0x95, 0x08, 0xda, 0xd9, 0xff, 0x4b, 0x2e, 0xf1, 0x61, 0xb2, 0xce, 0xb8, 0x58,
- 0xce, 0x14, 0x7a, 0x43, 0x59, 0x31, 0x75, 0x43, 0x30, 0x36, 0xc3, 0x17, 0x39, 0x3a, 0xc5, 0x8f,
- 0x03, 0x78, 0x17, 0x6e, 0x6f, 0x71, 0x07, 0xaa, 0xf8, 0x42, 0xea, 0xa1, 0x3c, 0x6e, 0xc3, 0x87,
- 0x5b, 0x4c, 0xfd, 0x64, 0x64, 0x18, 0xb2, 0x72, 0x6c, 0xf6, 0xa8, 0x82, 0x02, 0xbe, 0x0f, 0x1f,
- 0x64, 0xa8, 0x8f, 0x54, 0x14, 0xf7, 0x7f, 0xc8, 0x01, 0xde, 0xfe, 0xbf, 0x5a, 0x49, 0xa9, 0x1a,
- 0x0d, 0xea, 0x96, 0xcd, 0xb1, 0x55, 0x1b, 0xec, 0xd8, 0xe4, 0x78, 0x43, 0x09, 0x66, 0x4f, 0xd6,
- 0x85, 0xee, 0x80, 0xd9, 0x9c, 0x21, 0x2a, 0x29, 0x9c, 0x59, 0xc8, 0x62, 0x1a, 0x92, 0x4e, 0xb7,
- 0x83, 0x8a, 0xfb, 0x7f, 0x4a, 0x3a, 0x78, 0xfd, 0x63, 0xb6, 0x72, 0xf0, 0x48, 0xa7, 0x6d, 0xc0,
- 0xd5, 0x0e, 0xde, 0xe4, 0xc7, 0xd6, 0x46, 0x11, 0xdf, 0xe0, 0xca, 0xbd, 0x81, 0x94, 0x30, 0x35,
- 0xc9, 0x12, 0x44, 0x43, 0x3e, 0xa5, 0xe7, 0x23, 0x4b, 0xae, 0x3b, 0xd2, 0xcf, 0x50, 0x71, 0xff,
- 0x0f, 0xc9, 0xaf, 0xb3, 0xf5, 0xff, 0xdc, 0x3a, 0x13, 0x06, 0x02, 0x19, 0xbe, 0x2b, 0x13, 0x36,
- 0xf8, 0xb1, 0xa1, 0x1f, 0xc3, 0xfd, 0x4c, 0x69, 0x62, 0x12, 0x49, 0x13, 0x64, 0x82, 0xf2, 0xeb,
- 0x58, 0x27, 0x20, 0x22, 0x91, 0x0d, 0x59, 0x14, 0x06, 0xa8, 0x10, 0x27, 0xfe, 0x06, 0x7b, 0x28,
- 0x7c, 0xad, 0xd2, 0x03, 0x9d, 0xc9, 0x93, 0x15, 0x95, 0xa0, 0x52, 0xa6, 0x5d, 0x2f, 0x05, 0xa2,
- 0xd0, 0xb0, 0x94, 0xd7, 0x49, 0x98, 0xe0, 0xca, 0x4a, 0x4f, 0x32, 0x24, 0x32, 0x94, 0x15, 0xc1,
- 0x90, 0x50, 0x65, 0xff, 0x6f, 0x39, 0xb8, 0x99, 0xf9, 0xe9, 0x88, 0x1f, 0xc0, 0x3d, 0x26, 0xad,
- 0x1b, 0x82, 0xd2, 0xeb, 0x9e, 0x65, 0x78, 0x25, 0xf6, 0x5a, 0x1a, 0x91, 0x2a, 0x71, 0x29, 0xfe,
- 0x89, 0x6a, 0x24, 0x22, 0xb8, 0xc9, 0x13, 0xd5, 0x01, 0x4d, 0xb6, 0x47, 0xf0, 0x30, 0x83, 0xa9,
- 0x11, 0xf5, 0x54, 0xee, 0xd1, 0x03, 0xa4, 0x4b, 0xe4, 0x54, 0x16, 0x25, 0x54, 0xdc, 0xff, 0x63,
- 0x01, 0x9a, 0x1b, 0xbf, 0x99, 0xb8, 0x05, 0x37, 0x4e, 0x85, 0xc1, 0x48, 0xda, 0xae, 0xc6, 0x37,
- 0x00, 0x25, 0x38, 0xbc, 0x85, 0xc8, 0xd1, 0x3a, 0xb5, 0x81, 0xe7, 0xc6, 0xe7, 0x69, 0x61, 0x4b,
- 0xd0, 0x69, 0x2b, 0xab, 0x9b, 0x82, 0x88, 0x0a, 0x99, 0x8c, 0x9e, 0x88, 0x8a, 0x29, 0x4d, 0xc2,
- 0x50, 0x93, 0x88, 0x44, 0xdb, 0x9b, 0xcd, 0x75, 0x5f, 0x0a, 0x86, 0xa1, 0xa3, 0x72, 0x8a, 0x7a,
- 0x22, 0x11, 0xe3, 0x5b, 0x54, 0x49, 0xe9, 0x10, 0xa5, 0x81, 0x2e, 0x8f, 0x74, 0x54, 0xa5, 0x39,
- 0x9d, 0xa0, 0x6b, 0x12, 0x11, 0x69, 0xad, 0x23, 0x27, 0xa8, 0x86, 0x31, 0xec, 0x24, 0x58, 0x44,
- 0x1b, 0x22, 0x48, 0xd1, 0xc4, 0xe1, 0x90, 0x17, 0xd7, 0x04, 0xcd, 0x20, 0x23, 0xe3, 0xc4, 0x64,
- 0x04, 0xd4, 0x48, 0x2d, 0x1b, 0xa9, 0x47, 0x4d, 0x7c, 0x13, 0xf6, 0x12, 0xf4, 0x21, 0xcd, 0x1c,
- 0x1d, 0xed, 0xa4, 0x6c, 0xef, 0x9e, 0x19, 0x92, 0x8e, 0x76, 0x53, 0x8b, 0xf6, 0xba, 0x43, 0x84,
- 0xf6, 0xbf, 0x2f, 0x00, 0xac, 0xdb, 0xcb, 0xf5, 0x36, 0x74, 0x51, 0x18, 0x6c, 0x46, 0x67, 0xb5,
- 0x14, 0x67, 0x9d, 0xa9, 0xa2, 0xa1, 0xa2, 0x5c, 0x9a, 0xfc, 0xad, 0xa4, 0x19, 0x2a, 0xca, 0xaf,
- 0x2d, 0xe0, 0x64, 0xc1, 0x30, 0x54, 0x54, 0x48, 0x83, 0xfb, 0xd2, 0xd0, 0x50, 0x51, 0x31, 0x0d,
- 0xd6, 0x64, 0x51, 0x4d, 0x86, 0x85, 0x53, 0x15, 0x41, 0x51, 0x51, 0x39, 0xad, 0x62, 0x28, 0x8b,
- 0x44, 0x45, 0x95, 0x6d, 0xf2, 0x60, 0x20, 0xa3, 0x6a, 0x9a, 0x3c, 0x52, 0x64, 0x43, 0x47, 0xb5,
- 0xb4, 0xea, 0x17, 0xf2, 0x40, 0x45, 0x90, 0xa6, 0x0e, 0xa5, 0x63, 0x01, 0xd5, 0xd3, 0xd4, 0x63,
- 0xf9, 0x58, 0x40, 0x8d, 0x34, 0xd5, 0x90, 0x88, 0x80, 0x9a, 0x5b, 0x1b, 0x91, 0x0c, 0x01, 0xed,
- 0xe0, 0xeb, 0xb0, 0x9b, 0xa4, 0x4a, 0xaf, 0x04, 0xb4, 0xbb, 0xed, 0x37, 0xc3, 0x10, 0x10, 0xda,
- 0xf6, 0x32, 0x25, 0xef, 0xed, 0xff, 0x2e, 0x07, 0x8d, 0xe4, 0x2f, 0x3d, 0x3d, 0x9e, 0xfc, 0xf6,
- 0x67, 0x67, 0x6f, 0xa4, 0xa7, 0x0f, 0xd2, 0x26, 0x53, 0x7d, 0x81, 0x72, 0xb4, 0xc4, 0xa5, 0x45,
- 0x84, 0x53, 0x41, 0x1e, 0xd0, 0x1b, 0x04, 0xe5, 0x69, 0x39, 0xd9, 0x64, 0x2b, 0xaa, 0x42, 0x2f,
- 0x13, 0xc1, 0x90, 0x55, 0x85, 0x16, 0xc1, 0xfd, 0xef, 0x73, 0xb0, 0x9b, 0xfa, 0x71, 0xa1, 0x39,
- 0xb5, 0x75, 0x8e, 0x7f, 0xe6, 0x3f, 0x25, 0xfb, 0x40, 0x50, 0x15, 0x54, 0xc2, 0x75, 0xa8, 0x28,
- 0xc7, 0xa6, 0xa6, 0x2a, 0x9d, 0x8d, 0x7f, 0xca, 0x9b, 0xb0, 0x27, 0xaa, 0xc3, 0xae, 0x6a, 0x52,
- 0x61, 0x33, 0x92, 0xab, 0xe2, 0x5b, 0xb0, 0xc7, 0x96, 0x56, 0x54, 0xc3, 0xa4, 0x35, 0x53, 0x34,
- 0xa4, 0x1e, 0xfa, 0x4f, 0xae, 0xfb, 0xe5, 0xb7, 0x5f, 0x4c, 0x9d, 0xf0, 0xf5, 0xf2, 0xfc, 0x60,
- 0xec, 0xcd, 0x0f, 0xbd, 0x85, 0xed, 0x8e, 0x3d, 0x7f, 0x72, 0x38, 0xb1, 0x2f, 0x9d, 0xb1, 0xfd,
- 0xf9, 0xdc, 0x72, 0xad, 0xa9, 0x3d, 0xb7, 0xdd, 0xf0, 0x73, 0xc7, 0x0d, 0x6d, 0xff, 0xc2, 0x1a,
- 0xdb, 0x87, 0x97, 0x4f, 0x0e, 0xa7, 0xde, 0xe1, 0x64, 0xee, 0x9c, 0x97, 0x59, 0x93, 0xf0, 0xe4,
- 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff, 0xc1, 0x38, 0x6f, 0xd5, 0xe1, 0x1b, 0x00, 0x00,
+ // 2864 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4f, 0x93, 0xdb, 0xc6,
+ 0xb1, 0x17, 0x97, 0xff, 0x9b, 0xe4, 0xee, 0xec, 0xe8, 0x1f, 0xad, 0x3f, 0xb6, 0xcc, 0x27, 0xbb,
+ 0xe4, 0x7d, 0xcf, 0xbb, 0xab, 0x95, 0xf4, 0x4a, 0x7e, 0x2e, 0xd7, 0x2b, 0x10, 0x04, 0x77, 0x61,
+ 0x91, 0x00, 0x3c, 0x00, 0x57, 0x5a, 0xe7, 0x80, 0xc2, 0x92, 0x58, 0x0a, 0x55, 0x24, 0x80, 0x02,
+ 0xc0, 0xd5, 0xaa, 0x2a, 0xa7, 0x54, 0xee, 0xf9, 0x04, 0xb9, 0x39, 0x29, 0x9f, 0x72, 0x49, 0x8e,
+ 0x39, 0x38, 0x87, 0x7c, 0x88, 0x7c, 0x86, 0x7c, 0x88, 0xa4, 0x66, 0x06, 0x20, 0x41, 0x10, 0x92,
+ 0xe5, 0xaa, 0xdc, 0x66, 0xba, 0x7f, 0xdd, 0xd3, 0xd3, 0xdd, 0xd3, 0x33, 0x3d, 0xd0, 0x9c, 0xcc,
+ 0x9d, 0x83, 0xd7, 0x6f, 0xf6, 0xfd, 0xc0, 0x8b, 0x3c, 0x5c, 0x9c, 0xcc, 0x9d, 0x3b, 0x9f, 0x4c,
+ 0x3d, 0x6f, 0x3a, 0xb3, 0x0f, 0x18, 0xe9, 0x7c, 0x71, 0x71, 0x10, 0x39, 0x73, 0x3b, 0x8c, 0xac,
+ 0xb9, 0xcf, 0x51, 0x9d, 0x3b, 0x50, 0x1a, 0x2d, 0x9c, 0x09, 0xc6, 0x50, 0x5a, 0x2c, 0x9c, 0x49,
+ 0xbb, 0xf0, 0xa0, 0xf0, 0xa8, 0x4e, 0xd8, 0xb8, 0xf3, 0xdf, 0x00, 0x27, 0x56, 0x30, 0x79, 0x63,
+ 0x05, 0xb6, 0xdc, 0xc3, 0xf7, 0x53, 0x88, 0xc6, 0x51, 0x7d, 0x7f, 0x32, 0x77, 0xf6, 0xa9, 0x68,
+ 0x0c, 0xbe, 0x0d, 0xc5, 0x51, 0xe0, 0x60, 0x04, 0xc5, 0x45, 0xe0, 0xc4, 0x6a, 0xe8, 0xb0, 0xf3,
+ 0xdb, 0x22, 0x6c, 0x8b, 0xde, 0xdc, 0xf7, 0x5c, 0xdb, 0x8d, 0xf4, 0xc8, 0x8a, 0x6c, 0x7c, 0x02,
+ 0x38, 0xa4, 0x03, 0x73, 0x66, 0x85, 0x91, 0x39, 0x7e, 0x6d, 0xb9, 0x53, 0x3b, 0x51, 0x7c, 0x67,
+ 0x9f, 0x9b, 0xbc, 0x9f, 0x98, 0xbc, 0x6f, 0x24, 0x26, 0x13, 0xc4, 0xa4, 0x06, 0x56, 0x18, 0x89,
+ 0x5c, 0x06, 0x7f, 0x05, 0x0d, 0x6b, 0x32, 0x77, 0x5c, 0x93, 0x71, 0xda, 0x5b, 0x0f, 0x0a, 0x8f,
+ 0xb6, 0x8f, 0xda, 0xcc, 0xb6, 0xe5, 0x9a, 0x02, 0x05, 0xb0, 0x85, 0x09, 0x58, 0xcb, 0x31, 0xfe,
+ 0x5f, 0x00, 0xcf, 0xb7, 0x83, 0x58, 0xb2, 0xc8, 0x24, 0x6f, 0xaf, 0x4b, 0xaa, 0xbe, 0x1d, 0x70,
+ 0xc1, 0xba, 0x97, 0x0c, 0xe9, 0x92, 0x8b, 0xd0, 0x9a, 0xda, 0xb1, 0x60, 0x29, 0x6f, 0xc9, 0x11,
+ 0x05, 0xc4, 0x4b, 0x2e, 0x96, 0x63, 0x66, 0xed, 0xcc, 0x0a, 0xe6, 0xb1, 0x68, 0x39, 0xd7, 0x5a,
+ 0x0a, 0x48, 0xac, 0x5d, 0x8e, 0xf1, 0xff, 0x43, 0x2b, 0x8c, 0x2c, 0x77, 0x72, 0xfe, 0x36, 0x16,
+ 0xae, 0x30, 0xe1, 0x3b, 0xeb, 0xc2, 0x3a, 0x87, 0x70, 0xf1, 0x66, 0x98, 0x9a, 0x75, 0xfe, 0xb9,
+ 0x05, 0xd7, 0x57, 0x38, 0xdb, 0x0d, 0xbd, 0xa0, 0x67, 0x45, 0x16, 0xbe, 0x01, 0xe5, 0x4b, 0x6b,
+ 0xb6, 0xb0, 0x99, 0xfb, 0xcb, 0x84, 0x4f, 0xf0, 0xe7, 0x50, 0x8a, 0xde, 0xfa, 0x89, 0x43, 0x31,
+ 0x5b, 0x85, 0xc2, 0x4f, 0x29, 0xd7, 0x78, 0xeb, 0xdb, 0x84, 0xf1, 0xf1, 0x67, 0x50, 0x0e, 0xc7,
+ 0xd6, 0x2c, 0xf1, 0xdf, 0x0e, 0x03, 0x32, 0x90, 0x4e, 0xc9, 0x84, 0x73, 0xf1, 0x3d, 0xa8, 0xfb,
+ 0x81, 0x3d, 0x76, 0x42, 0xc7, 0x73, 0x99, 0xc7, 0xca, 0x64, 0x45, 0xc0, 0x5f, 0x40, 0x85, 0xee,
+ 0x69, 0x11, 0xc6, 0x1e, 0xd9, 0x65, 0x5a, 0xb8, 0x8d, 0x3a, 0x63, 0x90, 0x18, 0x80, 0xff, 0x0b,
+ 0x5a, 0x0b, 0xd7, 0x89, 0x42, 0x73, 0xe2, 0x84, 0xfe, 0xcc, 0x7a, 0xcb, 0xdc, 0x50, 0x27, 0x4d,
+ 0x46, 0xec, 0x71, 0x1a, 0x7e, 0x0e, 0xf5, 0x65, 0x9a, 0xb7, 0xab, 0x3f, 0x9b, 0x55, 0x2b, 0x30,
+ 0xde, 0x83, 0x5d, 0xb6, 0x7f, 0x73, 0xe1, 0x4f, 0x68, 0x7e, 0x06, 0xd4, 0xd3, 0xb5, 0x07, 0x85,
+ 0x47, 0x2d, 0xb2, 0xc3, 0x18, 0x23, 0x46, 0x27, 0x34, 0x22, 0x77, 0xa1, 0x3e, 0xb1, 0x22, 0xcb,
+ 0x64, 0x7e, 0xaa, 0x33, 0x33, 0x6a, 0x94, 0x40, 0xbd, 0xd3, 0xf9, 0x5b, 0x05, 0x6e, 0x6b, 0x5e,
+ 0x10, 0xad, 0xc2, 0x1a, 0x45, 0x81, 0x73, 0xbe, 0x88, 0xec, 0x10, 0x7f, 0x07, 0xdb, 0x63, 0xcf,
+ 0x75, 0xed, 0x71, 0xe4, 0x05, 0x5c, 0xba, 0xc0, 0xb6, 0xbd, 0xc7, 0xb6, 0xfd, 0x0e, 0xa9, 0x7d,
+ 0x31, 0x11, 0x61, 0xde, 0x6f, 0x8d, 0xd3, 0x53, 0xfc, 0x1c, 0xca, 0xa1, 0x6f, 0xdb, 0x93, 0x38,
+ 0x5e, 0x9d, 0xf7, 0x6a, 0xd2, 0x29, 0x92, 0x70, 0x01, 0x2c, 0x40, 0x8d, 0xb9, 0x64, 0xec, 0xcd,
+ 0xe2, 0x18, 0x7e, 0xf6, 0x5e, 0x61, 0x2d, 0x06, 0x93, 0xa5, 0x18, 0xfe, 0x0c, 0xb6, 0xfd, 0xd7,
+ 0x6f, 0x43, 0x67, 0x6c, 0xcd, 0xcc, 0x99, 0x75, 0x6e, 0xcf, 0x58, 0x84, 0xeb, 0xa4, 0x95, 0x50,
+ 0x07, 0x94, 0x48, 0x43, 0x37, 0xb7, 0x7c, 0xdf, 0x71, 0xa7, 0x31, 0xaa, 0xcc, 0x43, 0x17, 0x13,
+ 0x39, 0xe8, 0x29, 0xb4, 0x7c, 0xcf, 0x35, 0x9d, 0x89, 0x39, 0xf6, 0xdc, 0x0b, 0x67, 0xca, 0xe2,
+ 0xdb, 0x38, 0x42, 0xb1, 0x4d, 0xae, 0x3c, 0x11, 0x19, 0x9d, 0x34, 0xfc, 0xd5, 0x04, 0x3f, 0x81,
+ 0x9b, 0x6c, 0x37, 0xa6, 0xb5, 0x88, 0x3c, 0xd7, 0x9e, 0x7a, 0x91, 0x63, 0x45, 0x34, 0xd5, 0x68,
+ 0xf0, 0x6b, 0xe4, 0x06, 0x63, 0x0a, 0xeb, 0xbc, 0x8e, 0x0f, 0xad, 0x35, 0x9f, 0xe2, 0x7b, 0xd0,
+ 0x16, 0x55, 0x45, 0x91, 0x44, 0x43, 0x25, 0xa6, 0x71, 0xa6, 0x49, 0xe6, 0x48, 0xe9, 0x49, 0x7d,
+ 0x59, 0x91, 0x7a, 0xe8, 0x1a, 0xae, 0x41, 0x89, 0x7c, 0xfb, 0xf4, 0x19, 0x2a, 0xe0, 0x26, 0xd4,
+ 0xfa, 0x72, 0x57, 0x22, 0xe6, 0x40, 0x44, 0x5b, 0x78, 0x07, 0x1a, 0x7c, 0xa6, 0x8b, 0xa6, 0x26,
+ 0xa2, 0x22, 0x6e, 0x41, 0x9d, 0x13, 0x86, 0x9a, 0x8a, 0x4a, 0xb8, 0x0e, 0x65, 0xa2, 0x1f, 0x3d,
+ 0x39, 0x42, 0xe5, 0xce, 0x9f, 0x0a, 0x50, 0x66, 0xce, 0xc7, 0xd7, 0x61, 0x47, 0xd7, 0x24, 0xa9,
+ 0xb7, 0xb6, 0x42, 0x03, 0xaa, 0xbd, 0x33, 0x45, 0x18, 0xca, 0x22, 0x2a, 0x50, 0x2d, 0xc7, 0xf2,
+ 0xb1, 0xd0, 0x95, 0x0d, 0xf3, 0x31, 0xda, 0xc2, 0xdb, 0x00, 0xcb, 0xe9, 0x21, 0x2a, 0xa6, 0xe7,
+ 0x47, 0xcf, 0x50, 0x29, 0x3d, 0x7f, 0x7a, 0x88, 0xca, 0xd4, 0xaa, 0x15, 0xfe, 0x10, 0x55, 0xd2,
+ 0x84, 0xa7, 0x87, 0x87, 0xa8, 0x8a, 0x11, 0x34, 0x87, 0x52, 0xa2, 0xe1, 0xf0, 0x10, 0xd5, 0xd2,
+ 0x94, 0xc7, 0x47, 0xcf, 0x0e, 0x51, 0xbd, 0xf3, 0x6b, 0xa8, 0x25, 0xf1, 0xc6, 0xb7, 0x00, 0x6b,
+ 0x44, 0x35, 0x54, 0x51, 0x1d, 0xac, 0x59, 0xdd, 0x84, 0x9a, 0x64, 0x9c, 0x48, 0x44, 0x91, 0x0c,
+ 0x54, 0xa0, 0x5e, 0x3a, 0xd6, 0x54, 0x05, 0x6d, 0xd1, 0x7d, 0xbf, 0x62, 0xc3, 0x22, 0x06, 0xa8,
+ 0xbc, 0x3a, 0xd6, 0xe9, 0x98, 0xb9, 0xe3, 0xb8, 0x2f, 0xe8, 0x06, 0x2a, 0x53, 0xb2, 0x2e, 0x11,
+ 0x59, 0x18, 0xa0, 0x0a, 0x95, 0x93, 0x28, 0xa0, 0x4a, 0x47, 0x5d, 0xd9, 0xd0, 0x51, 0xad, 0x33,
+ 0x82, 0xfb, 0x6b, 0x59, 0xc8, 0x6b, 0x7e, 0xea, 0x20, 0x6d, 0x24, 0x4b, 0xe1, 0x03, 0x92, 0xa5,
+ 0xf3, 0x2b, 0x78, 0x68, 0x04, 0x96, 0x1b, 0x8e, 0x6d, 0xe7, 0xd2, 0x0e, 0xde, 0xad, 0xfd, 0x09,
+ 0x40, 0x44, 0x71, 0xe9, 0x23, 0x7a, 0x83, 0xa9, 0x4e, 0x89, 0xb3, 0xc3, 0x58, 0x67, 0x38, 0x76,
+ 0xee, 0xc7, 0xd0, 0x48, 0x2d, 0x8c, 0x6f, 0x42, 0x85, 0x5b, 0xc8, 0xe4, 0x9b, 0xa4, 0xcc, 0x0c,
+ 0xc1, 0xdf, 0xc0, 0xdd, 0xd8, 0x70, 0x26, 0x39, 0x77, 0x22, 0xd3, 0xb7, 0x03, 0xc7, 0x9b, 0x38,
+ 0x63, 0x27, 0x7a, 0xcb, 0x0e, 0x71, 0x8b, 0xb4, 0x19, 0xd6, 0x88, 0x01, 0xda, 0x8a, 0xdf, 0x91,
+ 0xe0, 0x9e, 0xe8, 0xb9, 0x91, 0xe5, 0xb8, 0x29, 0xfb, 0x53, 0x96, 0x6f, 0x1e, 0xc8, 0x42, 0xce,
+ 0x81, 0xec, 0xfc, 0xbd, 0x00, 0xb7, 0xb4, 0x70, 0x91, 0xa7, 0xe1, 0x0c, 0x76, 0xc3, 0x85, 0xef,
+ 0x7b, 0x41, 0x64, 0x4f, 0xcc, 0x4b, 0x6f, 0x16, 0x59, 0xd3, 0xc4, 0x05, 0xff, 0xc3, 0xbd, 0x9b,
+ 0x2b, 0xb7, 0xaf, 0x27, 0x42, 0xa7, 0x5c, 0x86, 0xa0, 0x30, 0x43, 0xe9, 0x68, 0x80, 0xb2, 0x28,
+ 0xfc, 0x09, 0xdc, 0xd5, 0x47, 0x9a, 0xa6, 0x12, 0x43, 0xea, 0x99, 0xa7, 0xea, 0xc0, 0x10, 0x8e,
+ 0xd7, 0x0f, 0x5f, 0x15, 0x8a, 0xa7, 0x4f, 0x9f, 0xf3, 0xfc, 0x3a, 0x3d, 0x7a, 0x72, 0x88, 0xb6,
+ 0xd8, 0xe8, 0xf1, 0xe3, 0x67, 0xa8, 0xd8, 0xf9, 0x43, 0x19, 0x3e, 0xc9, 0x8b, 0x68, 0x98, 0xda,
+ 0x90, 0x06, 0x8d, 0x0b, 0x2f, 0x98, 0x9b, 0x17, 0x16, 0x3d, 0xee, 0xf1, 0x56, 0x0e, 0xb2, 0xd1,
+ 0xcc, 0x13, 0xdd, 0xef, 0x7b, 0xc1, 0xbc, 0xcf, 0xc4, 0x08, 0x5c, 0x2c, 0xc7, 0x99, 0xf4, 0xd8,
+ 0xfa, 0xa0, 0xf4, 0xc0, 0x9f, 0x42, 0x73, 0x6e, 0x5d, 0xd1, 0xcb, 0x2b, 0xb2, 0xdc, 0x31, 0xbf,
+ 0x35, 0x5b, 0xa4, 0x31, 0xb7, 0xae, 0x7a, 0x31, 0x09, 0x7f, 0x03, 0x38, 0x0d, 0x31, 0xf9, 0xf5,
+ 0x5a, 0xca, 0xbf, 0x5e, 0x51, 0x4a, 0x92, 0x51, 0x68, 0x95, 0x0d, 0xae, 0xcc, 0x37, 0xd6, 0xa5,
+ 0x3d, 0xb3, 0xdd, 0x69, 0xf4, 0xba, 0x5d, 0x7e, 0x50, 0x7c, 0xd4, 0x22, 0xcd, 0xe0, 0xea, 0xe5,
+ 0x92, 0x46, 0x41, 0xd1, 0x1a, 0xa8, 0xc2, 0x41, 0x51, 0x1a, 0xf4, 0x7f, 0x80, 0x56, 0x88, 0xd8,
+ 0x8c, 0x6a, 0xbe, 0x19, 0x3b, 0x2b, 0x20, 0xb7, 0xe2, 0x23, 0xa8, 0x45, 0x57, 0xa6, 0xef, 0xbd,
+ 0xb1, 0x83, 0x76, 0xed, 0x41, 0xf1, 0x51, 0x99, 0x54, 0xa3, 0x2b, 0x8d, 0x4e, 0xf1, 0x33, 0xd8,
+ 0x4e, 0x58, 0xb1, 0xd2, 0x7a, 0xbe, 0xd2, 0x66, 0x2c, 0xc1, 0x66, 0x9d, 0x9f, 0x0a, 0x00, 0xab,
+ 0x48, 0xe0, 0xdb, 0x70, 0xbd, 0xaf, 0x92, 0xa1, 0xd9, 0x17, 0x58, 0xb5, 0x1e, 0x29, 0x2f, 0x14,
+ 0xf5, 0xa5, 0xc2, 0xcb, 0xf4, 0x77, 0x7a, 0x5f, 0xe3, 0x15, 0x94, 0x8e, 0x4c, 0x6d, 0x30, 0xd2,
+ 0xd1, 0x16, 0xad, 0x36, 0x74, 0x7a, 0xf4, 0x1c, 0x15, 0x69, 0x3a, 0x51, 0x4c, 0x89, 0x16, 0xaf,
+ 0x25, 0xa4, 0x4c, 0xc9, 0xaf, 0xfa, 0x1a, 0xaf, 0x46, 0x62, 0x5f, 0x7b, 0xca, 0xab, 0x91, 0xd8,
+ 0xd7, 0x8e, 0x50, 0x8d, 0x8d, 0x34, 0xe1, 0x05, 0xaa, 0xe3, 0x0a, 0x6c, 0xbd, 0x3a, 0x42, 0x40,
+ 0x4b, 0x99, 0x4a, 0x2b, 0x1f, 0x6a, 0x50, 0x49, 0xb1, 0xaf, 0xa1, 0x26, 0x55, 0x48, 0xf1, 0xa6,
+ 0x20, 0xaa, 0xa8, 0xb5, 0x9c, 0xf5, 0x44, 0x15, 0x6d, 0x77, 0xfe, 0x51, 0x85, 0xfa, 0x32, 0xc3,
+ 0xe8, 0x83, 0xdb, 0xb5, 0xe6, 0x76, 0xf2, 0xe0, 0xa6, 0x63, 0xfc, 0x08, 0xca, 0xe3, 0x99, 0x15,
+ 0x86, 0x6b, 0xcf, 0xae, 0xa5, 0x08, 0x4b, 0x26, 0x0e, 0xc0, 0x0f, 0xa0, 0x31, 0xb1, 0xc3, 0x71,
+ 0xe0, 0xf8, 0xec, 0x9e, 0x2b, 0x32, 0x25, 0x69, 0x12, 0xbe, 0x05, 0x15, 0xdf, 0x0a, 0x6c, 0x37,
+ 0x8a, 0x6f, 0xe3, 0x78, 0x86, 0x1f, 0xc2, 0x36, 0x1f, 0x99, 0x81, 0x3d, 0x33, 0x7d, 0x8f, 0x3f,
+ 0xba, 0xca, 0xa4, 0xc9, 0xa9, 0xc4, 0x9e, 0x69, 0x5e, 0x88, 0xf7, 0xa0, 0x36, 0x7e, 0xed, 0xcc,
+ 0x26, 0x81, 0xed, 0xb2, 0xe4, 0x68, 0x1c, 0x6d, 0xaf, 0x1b, 0x43, 0x96, 0x7c, 0x9a, 0xd4, 0xaf,
+ 0xe3, 0x36, 0xc1, 0x0c, 0xec, 0x4b, 0x96, 0x24, 0x75, 0xd2, 0x48, 0x68, 0xc4, 0xbe, 0xa4, 0x90,
+ 0x0b, 0x27, 0x98, 0x2f, 0x21, 0x35, 0x0e, 0x49, 0x68, 0x31, 0x24, 0xf4, 0x2e, 0xa2, 0x25, 0x84,
+ 0xbf, 0xa8, 0x1a, 0x09, 0x8d, 0x42, 0xee, 0x03, 0x84, 0x76, 0xe0, 0x58, 0x33, 0xd3, 0x5d, 0xcc,
+ 0xdb, 0xc0, 0x00, 0x75, 0x4e, 0x51, 0x16, 0x73, 0x9a, 0x74, 0xf3, 0x8b, 0xa9, 0xc9, 0xbc, 0xda,
+ 0x60, 0xcc, 0xea, 0xfc, 0x62, 0xaa, 0x50, 0xc7, 0xde, 0x07, 0x98, 0x7b, 0x13, 0x7b, 0xc6, 0x99,
+ 0x4d, 0x2e, 0xc9, 0x28, 0x8c, 0x7d, 0x03, 0xca, 0xd6, 0xcc, 0xb1, 0xc2, 0x76, 0x8b, 0x71, 0xf8,
+ 0x84, 0xea, 0xb3, 0xc2, 0xd0, 0x8e, 0x68, 0xf9, 0xde, 0xe6, 0xfa, 0xd8, 0x5c, 0x9e, 0xd0, 0xba,
+ 0xee, 0x84, 0xe6, 0x45, 0xb0, 0x68, 0xef, 0xb0, 0x17, 0x46, 0xd9, 0x09, 0xfb, 0xc1, 0x02, 0x3f,
+ 0xe3, 0x16, 0xd0, 0x27, 0x62, 0x1b, 0xfd, 0xec, 0xbb, 0x93, 0x5a, 0xd7, 0xa3, 0x2f, 0xc9, 0x3b,
+ 0xbc, 0x67, 0xda, 0x65, 0x12, 0x35, 0xde, 0x58, 0x05, 0x0e, 0xeb, 0x9e, 0x96, 0x5d, 0x17, 0xce,
+ 0xed, 0xba, 0xf0, 0x17, 0x50, 0xe6, 0xed, 0xc0, 0x75, 0xc6, 0xbf, 0xbe, 0xd1, 0x0e, 0x44, 0xf4,
+ 0x0d, 0x9e, 0x34, 0x1f, 0x21, 0x7b, 0x52, 0x53, 0xfb, 0xac, 0xf6, 0x0d, 0x16, 0xd5, 0x4c, 0xf3,
+ 0xb1, 0xea, 0x0b, 0x08, 0x84, 0xab, 0x1e, 0xe1, 0x6b, 0xa8, 0xd3, 0x82, 0x6d, 0x5a, 0x51, 0x14,
+ 0xb4, 0x8f, 0xd8, 0x4a, 0xf7, 0xde, 0xf7, 0x4a, 0x3c, 0xb9, 0x46, 0x6a, 0x54, 0x80, 0x52, 0xf0,
+ 0xb7, 0xec, 0xb9, 0xcb, 0x6f, 0x2b, 0xae, 0xe1, 0x09, 0xd3, 0xf0, 0x69, 0xbc, 0xf4, 0xbb, 0x2f,
+ 0xb2, 0x93, 0x6b, 0xec, 0x9d, 0xcb, 0xf9, 0x4c, 0xd7, 0x73, 0xa8, 0xf9, 0xe1, 0x82, 0x6b, 0x79,
+ 0xca, 0xb4, 0xdc, 0x7d, 0xcf, 0x75, 0x74, 0x72, 0x8d, 0x54, 0xfd, 0x70, 0xc1, 0x24, 0xbf, 0x03,
+ 0x14, 0xad, 0xea, 0x32, 0xd7, 0xf0, 0x8c, 0x69, 0x78, 0xf8, 0x21, 0xb7, 0xc0, 0xc9, 0x35, 0xb2,
+ 0x93, 0x92, 0xa7, 0x8c, 0x2e, 0x40, 0x2d, 0xf4, 0xed, 0xb1, 0x73, 0xe1, 0x8c, 0x3b, 0x3f, 0x16,
+ 0xa0, 0x96, 0xf4, 0xca, 0xf8, 0x6b, 0x68, 0xa4, 0x1a, 0xdb, 0x0f, 0xe8, 0x6b, 0x61, 0xb6, 0x6c,
+ 0x69, 0x71, 0x07, 0x4a, 0x81, 0xe7, 0x45, 0xac, 0x04, 0x6c, 0x9e, 0x3a, 0xc6, 0x5b, 0x2e, 0x70,
+ 0xee, 0x79, 0x91, 0x3d, 0x61, 0xa7, 0xff, 0x03, 0x16, 0xe8, 0x32, 0x74, 0xe7, 0xa7, 0x22, 0x5c,
+ 0x1f, 0x7a, 0x13, 0xe7, 0xc2, 0xb1, 0xce, 0x67, 0xf6, 0x7f, 0xaa, 0x20, 0x7d, 0xbe, 0x2c, 0x37,
+ 0xc5, 0x5c, 0xc3, 0xdf, 0x5d, 0x7e, 0x4a, 0x39, 0xe5, 0x67, 0x79, 0x20, 0xcb, 0xef, 0x3a, 0x90,
+ 0x95, 0xf5, 0x03, 0x19, 0x1f, 0xa1, 0x6a, 0xde, 0x11, 0xca, 0xfc, 0x11, 0xd4, 0x7e, 0xc1, 0x1f,
+ 0x81, 0xb0, 0x99, 0xf8, 0x39, 0xbd, 0x55, 0xf6, 0xe9, 0xb8, 0x96, 0xfe, 0x7d, 0xa8, 0x45, 0xc1,
+ 0x55, 0x3a, 0xf1, 0xbf, 0x78, 0x67, 0xc2, 0xe5, 0x28, 0xaa, 0x46, 0xc1, 0x55, 0x36, 0xdb, 0xf6,
+ 0xfe, 0x52, 0xa4, 0xbd, 0x4b, 0x2a, 0x0a, 0xbc, 0x77, 0x19, 0x6a, 0xaa, 0x22, 0x29, 0xc6, 0x66,
+ 0xef, 0x72, 0x07, 0x6e, 0x6d, 0x70, 0xf9, 0x85, 0x59, 0xc8, 0xe1, 0x89, 0x27, 0x82, 0xae, 0xcb,
+ 0xf4, 0xce, 0xdc, 0xd4, 0xda, 0x15, 0xc4, 0x17, 0xda, 0x40, 0x50, 0x24, 0x54, 0xcc, 0xe1, 0x8a,
+ 0xaa, 0x62, 0x08, 0xb2, 0x22, 0x11, 0x54, 0xa2, 0x6f, 0xba, 0x0c, 0x57, 0x53, 0x5f, 0xd2, 0x36,
+ 0x69, 0xa4, 0x69, 0x83, 0x33, 0x54, 0xa6, 0x0d, 0x45, 0x06, 0xd0, 0x17, 0x14, 0x54, 0xc1, 0x1f,
+ 0xc1, 0xcd, 0x0c, 0x5d, 0x97, 0x14, 0x5d, 0x25, 0xa8, 0x9a, 0xc3, 0x1a, 0xaa, 0xbd, 0xd1, 0x40,
+ 0x42, 0x35, 0xfa, 0x20, 0xd8, 0x58, 0x8e, 0x18, 0xa8, 0x9e, 0xb3, 0x8c, 0xa8, 0x8d, 0x10, 0xe4,
+ 0xec, 0xbb, 0x2b, 0x18, 0x86, 0x44, 0xce, 0x50, 0x23, 0x87, 0xa7, 0x1b, 0x2a, 0x11, 0x8e, 0x25,
+ 0xd4, 0xcc, 0xb3, 0x41, 0x1a, 0xaa, 0xe4, 0x0c, 0xb5, 0xf0, 0xc7, 0x70, 0x27, 0xc3, 0x32, 0x88,
+ 0xa0, 0xe8, 0xa2, 0x24, 0x9f, 0x4a, 0x04, 0x6d, 0xef, 0xfd, 0xb9, 0x90, 0xfa, 0x82, 0x59, 0x65,
+ 0x5c, 0x22, 0x67, 0x0a, 0xbd, 0xa1, 0xac, 0x98, 0xba, 0x21, 0x18, 0xeb, 0xe1, 0x8b, 0x1d, 0x9d,
+ 0xe1, 0x27, 0x01, 0xbc, 0x0b, 0xb7, 0x37, 0xb8, 0x03, 0x55, 0x7c, 0x21, 0xf5, 0xd0, 0x16, 0xee,
+ 0xc0, 0xc7, 0x1b, 0x4c, 0xfd, 0x64, 0x64, 0x18, 0xb2, 0x72, 0x6c, 0xf6, 0xa8, 0x82, 0x22, 0xbe,
+ 0x0f, 0x1f, 0xe5, 0xa8, 0x8f, 0x55, 0x94, 0xf6, 0x7e, 0x2c, 0x00, 0xde, 0xfc, 0x11, 0x5b, 0x4a,
+ 0xa9, 0x1a, 0x0d, 0xea, 0x86, 0xcd, 0x89, 0x55, 0x6b, 0xec, 0xc4, 0xe4, 0x64, 0x43, 0x29, 0x66,
+ 0x4f, 0xd6, 0x85, 0xee, 0x80, 0xd9, 0x9c, 0x23, 0x2a, 0x29, 0x9c, 0x59, 0xcc, 0x63, 0x1a, 0x92,
+ 0x4e, 0xb7, 0x83, 0x4a, 0x7b, 0x7f, 0x4c, 0x3b, 0x78, 0xf5, 0x07, 0xb7, 0x74, 0xf0, 0x48, 0xa7,
+ 0x8d, 0xc5, 0xbb, 0x1d, 0xbc, 0xce, 0x4f, 0xac, 0x8d, 0x23, 0xbe, 0xc6, 0x95, 0x7b, 0x03, 0x29,
+ 0x65, 0x6a, 0x9a, 0x25, 0x88, 0x86, 0x7c, 0x4a, 0xcf, 0x47, 0x9e, 0x5c, 0x77, 0xa4, 0x9f, 0xa1,
+ 0xd2, 0xde, 0xef, 0xd2, 0x9f, 0x71, 0xab, 0x1f, 0xbf, 0x55, 0x26, 0x0c, 0x04, 0x32, 0x7c, 0x5f,
+ 0x26, 0xac, 0xf1, 0x13, 0x43, 0x3f, 0x85, 0xfb, 0xb9, 0xd2, 0xc4, 0x24, 0x92, 0x26, 0xc8, 0x04,
+ 0x6d, 0xad, 0x62, 0x9d, 0x82, 0x88, 0x44, 0x36, 0x64, 0x51, 0x18, 0xa0, 0x62, 0x92, 0xf8, 0x6b,
+ 0xec, 0xa1, 0xf0, 0xad, 0x4a, 0x0f, 0x74, 0x2e, 0x4f, 0x56, 0x54, 0x82, 0xca, 0xb9, 0x76, 0xbd,
+ 0x14, 0x88, 0x42, 0xc3, 0x52, 0x59, 0x25, 0x61, 0x8a, 0x2b, 0x2b, 0x3d, 0xc9, 0x90, 0xc8, 0x50,
+ 0x56, 0x04, 0x43, 0x42, 0xd5, 0xbd, 0xbf, 0x16, 0xe0, 0x66, 0xee, 0x37, 0x26, 0x7e, 0x00, 0xf7,
+ 0x98, 0xb4, 0x6e, 0x08, 0x4a, 0xaf, 0x7b, 0x96, 0xe3, 0x95, 0xc4, 0x6b, 0x59, 0x44, 0xa6, 0xc4,
+ 0x65, 0xf8, 0x27, 0xaa, 0x91, 0x8a, 0xe0, 0x3a, 0x4f, 0x54, 0x07, 0x34, 0xd9, 0x1e, 0xc1, 0xc3,
+ 0x1c, 0xa6, 0x46, 0xd4, 0x53, 0xb9, 0x47, 0x0f, 0x90, 0x2e, 0x91, 0x53, 0x59, 0x94, 0x50, 0x69,
+ 0xef, 0xf7, 0x45, 0x68, 0xad, 0xfd, 0x8f, 0xe2, 0x36, 0xdc, 0x38, 0x15, 0x06, 0x23, 0x69, 0xb3,
+ 0x1a, 0xdf, 0x00, 0x94, 0xe2, 0xf0, 0x16, 0xa2, 0x40, 0xeb, 0xd4, 0x1a, 0x9e, 0x1b, 0xbf, 0x45,
+ 0x0b, 0x5b, 0x8a, 0x4e, 0x9b, 0x63, 0xdd, 0x14, 0x44, 0x54, 0xcc, 0x65, 0xf4, 0x44, 0x54, 0xca,
+ 0x68, 0x12, 0x86, 0x9a, 0x44, 0x24, 0xda, 0xde, 0xac, 0xaf, 0xfb, 0x52, 0x30, 0x0c, 0x1d, 0x55,
+ 0x32, 0xd4, 0x13, 0x89, 0x18, 0xdf, 0xa3, 0x6a, 0x46, 0x87, 0x28, 0x0d, 0x74, 0x79, 0xa4, 0xa3,
+ 0x1a, 0xcd, 0xe9, 0x14, 0x5d, 0x93, 0x88, 0x48, 0x6b, 0x1d, 0x39, 0x41, 0x75, 0x8c, 0x61, 0x3b,
+ 0xc5, 0x22, 0xda, 0x10, 0x41, 0x86, 0x26, 0x0e, 0x87, 0xbc, 0xb8, 0xa6, 0x68, 0x06, 0x19, 0x19,
+ 0x27, 0x26, 0x23, 0xa0, 0x66, 0x66, 0xd9, 0x58, 0x3d, 0x6a, 0xe1, 0x9b, 0xb0, 0x9b, 0xa2, 0x0f,
+ 0x69, 0xe6, 0xe8, 0x68, 0x3b, 0x63, 0x7b, 0xf7, 0xcc, 0x90, 0x74, 0xb4, 0x93, 0x59, 0xb4, 0xd7,
+ 0x1d, 0x22, 0xb4, 0xf7, 0x43, 0x11, 0x60, 0xd5, 0x5b, 0xae, 0xb6, 0xa1, 0x8b, 0xc2, 0x60, 0x3d,
+ 0x3a, 0xcb, 0xa5, 0x38, 0xeb, 0x4c, 0x15, 0x0d, 0x15, 0x15, 0xb2, 0xe4, 0xef, 0x25, 0xcd, 0x50,
+ 0xd1, 0xd6, 0xca, 0x02, 0x4e, 0x16, 0x0c, 0x43, 0x45, 0xc5, 0x2c, 0xb8, 0x2f, 0x0d, 0x0d, 0x15,
+ 0x95, 0xb2, 0x60, 0x4d, 0x16, 0xd5, 0x74, 0x58, 0x38, 0x55, 0x11, 0x14, 0x15, 0x55, 0xb2, 0x2a,
+ 0x86, 0xb2, 0x48, 0x54, 0x54, 0xdd, 0x24, 0x0f, 0x06, 0x32, 0xaa, 0x65, 0xc9, 0x23, 0x45, 0x36,
+ 0x74, 0x54, 0xcf, 0xaa, 0x7e, 0x21, 0x0f, 0x54, 0x04, 0x59, 0xea, 0x50, 0x3a, 0x16, 0x50, 0x23,
+ 0x4b, 0x3d, 0x96, 0x8f, 0x05, 0xd4, 0xcc, 0x52, 0x0d, 0x89, 0x08, 0xa8, 0xb5, 0xb1, 0x11, 0xc9,
+ 0x10, 0xd0, 0x36, 0xbe, 0x0e, 0x3b, 0x69, 0xaa, 0xf4, 0x4a, 0x40, 0x3b, 0x9b, 0x7e, 0x33, 0x0c,
+ 0x01, 0xa1, 0x4d, 0x2f, 0x53, 0xf2, 0xee, 0xde, 0x6f, 0x0a, 0xd0, 0x4c, 0xff, 0xfb, 0xd3, 0xe3,
+ 0xc9, 0x6f, 0x7f, 0x76, 0xf6, 0x46, 0x7a, 0xf6, 0x20, 0xad, 0x33, 0xd5, 0x17, 0xa8, 0x40, 0x4b,
+ 0x5c, 0x56, 0x44, 0x38, 0x15, 0xe4, 0x01, 0xbd, 0x41, 0xd0, 0x16, 0x2d, 0x27, 0xeb, 0x6c, 0x45,
+ 0x55, 0xe8, 0x65, 0x22, 0x18, 0xb2, 0xaa, 0xd0, 0x22, 0xb8, 0xf7, 0x43, 0x01, 0x76, 0x32, 0x7f,
+ 0x38, 0x34, 0xa7, 0x36, 0xce, 0xf1, 0x2f, 0xfc, 0xf9, 0x64, 0x1f, 0x08, 0xaa, 0x82, 0xca, 0xb8,
+ 0x01, 0x55, 0xe5, 0xd8, 0xd4, 0x54, 0xe5, 0x68, 0xed, 0xe7, 0xf3, 0x26, 0xec, 0x8a, 0xea, 0xb0,
+ 0xab, 0x9a, 0x54, 0xd8, 0x8c, 0xe5, 0x6a, 0xf8, 0x16, 0xec, 0xb2, 0xa5, 0x15, 0xd5, 0x30, 0x69,
+ 0xcd, 0x14, 0x0d, 0xa9, 0x87, 0xfe, 0x55, 0xe8, 0x7e, 0xfd, 0xfd, 0x57, 0x53, 0x27, 0x7a, 0xbd,
+ 0x38, 0xdf, 0x1f, 0x7b, 0xf3, 0x03, 0xcf, 0xb7, 0xdd, 0xb1, 0x17, 0x4c, 0x0e, 0x26, 0xf6, 0xa5,
+ 0x33, 0xb6, 0xbf, 0x9c, 0x5b, 0xae, 0x35, 0xb5, 0xe7, 0xb6, 0x1b, 0x7d, 0xe9, 0xb8, 0x91, 0x1d,
+ 0x5c, 0x58, 0x63, 0xfb, 0xe0, 0xf2, 0xc9, 0xc1, 0xd4, 0x3b, 0x98, 0xcc, 0x9d, 0xf3, 0x0a, 0x6b,
+ 0x12, 0x9e, 0xfc, 0x3b, 0x00, 0x00, 0xff, 0xff, 0xd9, 0xff, 0x19, 0x03, 0x33, 0x1c, 0x00, 0x00,
}
diff --git a/protos/dmi/hw.proto b/protos/dmi/hw.proto
index d8a70dc..c41d8a2 100644
--- a/protos/dmi/hw.proto
+++ b/protos/dmi/hw.proto
@@ -268,6 +268,12 @@
repeated uint32 rx_wavelength = 5;
repeated uint32 tx_wavelength = 6;
ValueScale wavelength_scale = 7;
+ // The tx powers on the transceiver; the value type of tx_power should be dBm.
+ // Note: When there are multiple rx/tx wavelengths and powers
+ // each of the corresponding ones should be aligned on the same index of the array
+ repeated int32 tx_power = 8;
+ ValueScale tx_power_scale = 9;
+
}
message Component {
diff --git a/python/dmi/hw_pb2.py b/python/dmi/hw_pb2.py
index c44e035..d838136 100644
--- a/python/dmi/hw_pb2.py
+++ b/python/dmi/hw_pb2.py
@@ -16,7 +16,7 @@
from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
-DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0c\x64mi/hw.proto\x12\x03\x64mi\x1a\x1fgoogle/protobuf/timestamp.proto\"\x14\n\x04Uuid\x12\x0c\n\x04uuid\x18\x01 \x01(\t\"%\n\nHardwareID\x12\x17\n\x04uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\"\x12\n\x03Uri\x12\x0b\n\x03uri\x18\x01 \x01(\t\"\xb5\x02\n\x0e\x43omponentState\x12\x36\n\x12state_last_changed\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12-\n\x0b\x61\x64min_state\x18\x02 \x01(\x0e\x32\x18.dmi.ComponentAdminState\x12+\n\noper_state\x18\x03 \x01(\x0e\x32\x17.dmi.ComponentOperState\x12-\n\x0busage_state\x18\x04 \x01(\x0e\x32\x18.dmi.ComponentUsageState\x12-\n\x0b\x61larm_state\x18\x05 \x01(\x0e\x32\x18.dmi.ComponentAlarmState\x12\x31\n\rstandby_state\x18\x06 \x01(\x0e\x32\x1a.dmi.ComponentStandbyState\"\x90\x02\n\x13\x43omponentSensorData\x12\r\n\x05value\x18\x01 \x01(\x05\x12 \n\x04type\x18\x02 \x01(\x0e\x32\x12.dmi.DataValueType\x12\x1e\n\x05scale\x18\x03 \x01(\x0e\x32\x0f.dmi.ValueScale\x12\x11\n\tprecision\x18\x04 \x01(\x05\x12!\n\x06status\x18\x05 \x01(\x0e\x32\x11.dmi.SensorStatus\x12\x15\n\runits_display\x18\x06 \x01(\t\x12-\n\ttimestamp\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x19\n\x11value_update_rate\x18\x08 \x01(\r\x12\x11\n\tdata_type\x18\t \x01(\t\"\xe1\x05\n\x17PortComponentAttributes\x12\x42\n\x0e\x63onnector_type\x18\x01 \x01(\x0e\x32*.dmi.PortComponentAttributes.ConnectorType\x12\x31\n\x05speed\x18\x02 \x01(\x0e\x32\".dmi.PortComponentAttributes.Speed\x12\x37\n\x08protocol\x18\x03 \x01(\x0e\x32%.dmi.PortComponentAttributes.Protocol\x12\x16\n\x0ephysical_label\x18\x04 \x01(\t\x12\x15\n\rmapping_label\x18\x05 \x01(\t\x12\'\n\rpon_id_config\x18\x06 \x01(\x0b\x32\x10.dmi.PonIdConfig\x12\x1d\n\x15speed_autonegotiation\x18\x07 \x01(\x08\"p\n\rConnectorType\x12\x1c\n\x18\x43ONNECTOR_TYPE_UNDEFINED\x10\x00\x12\x08\n\x04RJ45\x10\x01\x12\x0c\n\x08\x46IBER_LC\x10\x02\x12\x0f\n\x0b\x46IBER_SC_PC\x10\x03\x12\r\n\tFIBER_MPO\x10\x04\x12\t\n\x05RS232\x10\x05\"\xae\x01\n\x05Speed\x12\x13\n\x0fSPEED_UNDEFINED\x10\x00\x12\x0b\n\x07\x44YNAMIC\x10\x01\x12\r\n\tGIGABIT_1\x10\x02\x12\x0e\n\nGIGABIT_10\x10\x03\x12\x0e\n\nGIGABIT_25\x10\x04\x12\x0e\n\nGIGABIT_40\x10\x05\x12\x0f\n\x0bGIGABIT_100\x10\x06\x12\x0f\n\x0bGIGABIT_400\x10\x07\x12\x10\n\x0cMEGABIT_2500\x10\x08\x12\x10\n\x0cMEGABIT_1250\x10\t\"|\n\x08Protocol\x12\x16\n\x12PROTOCOL_UNDEFINED\x10\x00\x12\x0c\n\x08\x45THERNET\x10\x01\x12\x08\n\x04GPON\x10\x02\x12\t\n\x05XGPON\x10\x03\x12\n\n\x06XGSPON\x10\x04\x12\t\n\x05GFAST\x10\x05\x12\n\n\x06SERIAL\x10\x06\x12\x08\n\x04\x45PON\x10\x07\x12\x08\n\x04\x42ITS\x10\x08\"H\n\x1dPortComponentChangeAttributes\x12\'\n\rpon_id_config\x18\x01 \x01(\x0b\x32\x10.dmi.PonIdConfig\"P\n$TransceiverComponentChangeAttributes\x12(\n\ntrans_type\x18\x01 \x01(\x0e\x32\x14.dmi.TransceiverType\"B\n\x0bPonIdConfig\x12\x0e\n\x06pon_id\x18\x01 \x01(\x0c\x12#\n\x1bpon_id_transmit_periodicity\x18\x02 \x01(\r\"6\n\x1c\x43ontainerComponentAttributes\x12\x16\n\x0ephysical_label\x18\x01 \x01(\t\"\xb3\x01\n\x16PsuComponentAttributes\x12G\n\x11supported_voltage\x18\x01 \x01(\x0e\x32,.dmi.PsuComponentAttributes.SupportedVoltage\"P\n\x10SupportedVoltage\x12\x1f\n\x1bSUPPORTED_VOLTAGE_UNDEFINED\x10\x00\x12\x07\n\x03V48\x10\x01\x12\x08\n\x04V230\x10\x02\x12\x08\n\x04V115\x10\x03\"\xf0\x03\n\x1fTransceiverComponentsAttributes\x12\x44\n\x0b\x66orm_factor\x18\x01 \x01(\x0e\x32/.dmi.TransceiverComponentsAttributes.FormFactor\x12(\n\ntrans_type\x18\x02 \x01(\x0e\x32\x14.dmi.TransceiverType\x12\x14\n\x0cmax_distance\x18\x03 \x01(\r\x12+\n\x12max_distance_scale\x18\x04 \x01(\x0e\x32\x0f.dmi.ValueScale\x12\x15\n\rrx_wavelength\x18\x05 \x03(\r\x12\x15\n\rtx_wavelength\x18\x06 \x03(\r\x12)\n\x10wavelength_scale\x18\x07 \x01(\x0e\x32\x0f.dmi.ValueScale\"\xc0\x01\n\nFormFactor\x12\x17\n\x13\x46ORM_FACTOR_UNKNOWN\x10\x00\x12\x08\n\x04QSFP\x10\x01\x12\r\n\tQSFP_PLUS\x10\x02\x12\n\n\x06QSFP28\x10\x03\x12\x07\n\x03SFP\x10\x04\x12\x0c\n\x08SFP_PLUS\x10\x05\x12\x07\n\x03XFP\x10\x06\x12\x08\n\x04\x43\x46P4\x10\x07\x12\x08\n\x04\x43\x46P2\x10\x08\x12\x08\n\x04\x43PAK\x10\t\x12\x06\n\x02X2\x10\n\x12\t\n\x05OTHER\x10\x0b\x12\x07\n\x03\x43\x46P\x10\x0c\x12\x0c\n\x08\x43\x46P2_ACO\x10\r\x12\x0c\n\x08\x43\x46P2_DCO\x10\x0e\"\xe8\x05\n\tComponent\x12\x0c\n\x04name\x18\x01 \x01(\t\x12!\n\x05\x63lass\x18\x02 \x01(\x0e\x32\x12.dmi.ComponentType\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12\x0e\n\x06parent\x18\x04 \x01(\t\x12\x16\n\x0eparent_rel_pos\x18\x05 \x01(\x05\x12 \n\x08\x63hildren\x18\x06 \x03(\x0b\x32\x0e.dmi.Component\x12\x14\n\x0chardware_rev\x18\x07 \x01(\t\x12\x14\n\x0c\x66irmware_rev\x18\x08 \x01(\t\x12\x14\n\x0csoftware_rev\x18\t \x01(\t\x12\x12\n\nserial_num\x18\n \x01(\t\x12\x10\n\x08mfg_name\x18\x0b \x01(\t\x12\x12\n\nmodel_name\x18\x0c \x01(\t\x12\r\n\x05\x61lias\x18\r \x01(\t\x12\x10\n\x08\x61sset_id\x18\x0e \x01(\t\x12\x0e\n\x06is_fru\x18\x0f \x01(\x08\x12,\n\x08mfg_date\x18\x10 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x15\n\x03uri\x18\x11 \x01(\x0b\x32\x08.dmi.Uri\x12\x17\n\x04uuid\x18\x12 \x01(\x0b\x32\t.dmi.Uuid\x12\"\n\x05state\x18\x13 \x01(\x0b\x32\x13.dmi.ComponentState\x12-\n\x0bsensor_data\x18\x14 \x03(\x0b\x32\x18.dmi.ComponentSensorData\x12\x31\n\tport_attr\x18\x32 \x01(\x0b\x32\x1c.dmi.PortComponentAttributesH\x00\x12;\n\x0e\x63ontainer_attr\x18\x33 \x01(\x0b\x32!.dmi.ContainerComponentAttributesH\x00\x12/\n\x08psu_attr\x18\x34 \x01(\x0b\x32\x1b.dmi.PsuComponentAttributesH\x00\x12@\n\x10transceiver_attr\x18\x35 \x01(\x0b\x32$.dmi.TransceiverComponentsAttributesH\x00\x42\n\n\x08specific\"\x8a\x01\n\x08Hardware\x12/\n\x0blast_change\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x1c\n\x04root\x18\x02 \x01(\x0b\x32\x0e.dmi.Component\x12/\n\x0blast_booted\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\xe9\x02\n\x13ModifiableComponent\x12\x0c\n\x04name\x18\x01 \x01(\t\x12!\n\x05\x63lass\x18\x02 \x01(\x0e\x32\x12.dmi.ComponentType\x12\x1e\n\x06parent\x18\x03 \x01(\x0b\x32\x0e.dmi.Component\x12\x16\n\x0eparent_rel_pos\x18\x04 \x01(\x05\x12\r\n\x05\x61lias\x18\x05 \x01(\t\x12\x10\n\x08\x61sset_id\x18\x06 \x01(\t\x12\x15\n\x03uri\x18\x07 \x01(\x0b\x32\x08.dmi.Uri\x12-\n\x0b\x61\x64min_state\x18\x08 \x01(\x0e\x32\x18.dmi.ComponentAdminState\x12\x37\n\tport_attr\x18\x32 \x01(\x0b\x32\".dmi.PortComponentChangeAttributesH\x00\x12=\n\x08trx_attr\x18\x33 \x01(\x0b\x32).dmi.TransceiverComponentChangeAttributesH\x00\x42\n\n\x08specific*\xb4\x03\n\rComponentType\x12\x1c\n\x18\x43OMPONENT_TYPE_UNDEFINED\x10\x00\x12\x1a\n\x16\x43OMPONENT_TYPE_UNKNOWN\x10\x01\x12\x1a\n\x16\x43OMPONENT_TYPE_CHASSIS\x10\x02\x12\x1c\n\x18\x43OMPONENT_TYPE_BACKPLANE\x10\x03\x12\x1c\n\x18\x43OMPONENT_TYPE_CONTAINER\x10\x04\x12\x1f\n\x1b\x43OMPONENT_TYPE_POWER_SUPPLY\x10\x05\x12\x16\n\x12\x43OMPONENT_TYPE_FAN\x10\x06\x12\x19\n\x15\x43OMPONENT_TYPE_SENSOR\x10\x07\x12\x19\n\x15\x43OMPONENT_TYPE_MODULE\x10\x08\x12\x17\n\x13\x43OMPONENT_TYPE_PORT\x10\t\x12\x16\n\x12\x43OMPONENT_TYPE_CPU\x10\n\x12\x1a\n\x16\x43OMPONENT_TYPE_BATTERY\x10\x0b\x12\x1a\n\x16\x43OMPONENT_TYPE_STORAGE\x10\x0c\x12\x19\n\x15\x43OMPONENT_TYPE_MEMORY\x10\r\x12\x1e\n\x1a\x43OMPONENT_TYPE_TRANSCEIVER\x10\x0e*\xb3\x01\n\x13\x43omponentAdminState\x12\x1e\n\x1a\x43OMP_ADMIN_STATE_UNDEFINED\x10\x00\x12\x1c\n\x18\x43OMP_ADMIN_STATE_UNKNOWN\x10\x01\x12\x1b\n\x17\x43OMP_ADMIN_STATE_LOCKED\x10\x02\x12\"\n\x1e\x43OMP_ADMIN_STATE_SHUTTING_DOWN\x10\x03\x12\x1d\n\x19\x43OMP_ADMIN_STATE_UNLOCKED\x10\x04*\xa8\x01\n\x12\x43omponentOperState\x12\x1d\n\x19\x43OMP_OPER_STATE_UNDEFINED\x10\x00\x12\x1b\n\x17\x43OMP_OPER_STATE_UNKNOWN\x10\x01\x12\x1c\n\x18\x43OMP_OPER_STATE_DISABLED\x10\x02\x12\x1b\n\x17\x43OMP_OPER_STATE_ENABLED\x10\x03\x12\x1b\n\x17\x43OMP_OPER_STATE_TESTING\x10\x04*\xa6\x01\n\x13\x43omponentUsageState\x12\x1e\n\x1a\x43OMP_USAGE_STATE_UNDEFINED\x10\x00\x12\x1c\n\x18\x43OMP_USAGE_STATE_UNKNOWN\x10\x01\x12\x19\n\x15\x43OMP_USAGE_STATE_IDLE\x10\x02\x12\x1b\n\x17\x43OMP_USAGE_STATE_ACTIVE\x10\x03\x12\x19\n\x15\x43OMP_USAGE_STATE_BUSY\x10\x04*\x8f\x02\n\x13\x43omponentAlarmState\x12\x1e\n\x1a\x43OMP_ALARM_STATE_UNDEFINED\x10\x00\x12\x1c\n\x18\x43OMP_ALARM_STATE_UNKNOWN\x10\x01\x12!\n\x1d\x43OMP_ALARM_STATE_UNDER_REPAIR\x10\x02\x12\x1d\n\x19\x43OMP_ALARM_STATE_CRITICAL\x10\x03\x12\x1a\n\x16\x43OMP_ALARM_STATE_MAJOR\x10\x04\x12\x1a\n\x16\x43OMP_ALARM_STATE_MINOR\x10\x05\x12\x1c\n\x18\x43OMP_ALARM_STATE_WARNING\x10\x06\x12\"\n\x1e\x43OMP_ALARM_STATE_INDETERMINATE\x10\x07*\xbc\x01\n\x15\x43omponentStandbyState\x12 \n\x1c\x43OMP_STANDBY_STATE_UNDEFINED\x10\x00\x12\x1e\n\x1a\x43OMP_STANDBY_STATE_UNKNOWN\x10\x01\x12\x1a\n\x16\x43OMP_STANDBY_STATE_HOT\x10\x02\x12\x1b\n\x17\x43OMP_STANDBY_STATE_COLD\x10\x03\x12(\n$COMP_STANDBY_STATE_PROVIDING_SERVICE\x10\x04*\x9d\x03\n\rDataValueType\x12\x18\n\x14VALUE_TYPE_UNDEFINED\x10\x00\x12\x14\n\x10VALUE_TYPE_OTHER\x10\x01\x12\x16\n\x12VALUE_TYPE_UNKNOWN\x10\x02\x12\x17\n\x13VALUE_TYPE_VOLTS_AC\x10\x03\x12\x17\n\x13VALUE_TYPE_VOLTS_DC\x10\x04\x12\x16\n\x12VALUE_TYPE_AMPERES\x10\x05\x12\x14\n\x10VALUE_TYPE_WATTS\x10\x06\x12\x14\n\x10VALUE_TYPE_HERTZ\x10\x07\x12\x16\n\x12VALUE_TYPE_CELSIUS\x10\x08\x12\x19\n\x15VALUE_TYPE_PERCENT_RH\x10\t\x12\x12\n\x0eVALUE_TYPE_RPM\x10\n\x12\x12\n\x0eVALUE_TYPE_CMM\x10\x0b\x12\x1a\n\x16VALUE_TYPE_TRUTH_VALUE\x10\x0c\x12\x16\n\x12VALUE_TYPE_PERCENT\x10\r\x12\x15\n\x11VALUE_TYPE_METERS\x10\x0e\x12\x14\n\x10VALUE_TYPE_BYTES\x10\x0f\x12\x12\n\x0eVALUE_TYPE_DBM\x10\x10*\xa4\x03\n\nValueScale\x12\x19\n\x15VALUE_SCALE_UNDEFINED\x10\x00\x12\x15\n\x11VALUE_SCALE_YOCTO\x10\x01\x12\x15\n\x11VALUE_SCALE_ZEPTO\x10\x02\x12\x14\n\x10VALUE_SCALE_ATTO\x10\x03\x12\x15\n\x11VALUE_SCALE_FEMTO\x10\x04\x12\x14\n\x10VALUE_SCALE_PICO\x10\x05\x12\x14\n\x10VALUE_SCALE_NANO\x10\x06\x12\x15\n\x11VALUE_SCALE_MICRO\x10\x07\x12\x15\n\x11VALUE_SCALE_MILLI\x10\x08\x12\x15\n\x11VALUE_SCALE_UNITS\x10\t\x12\x14\n\x10VALUE_SCALE_KILO\x10\n\x12\x14\n\x10VALUE_SCALE_MEGA\x10\x0b\x12\x14\n\x10VALUE_SCALE_GIGA\x10\x0c\x12\x14\n\x10VALUE_SCALE_TERA\x10\r\x12\x14\n\x10VALUE_SCALE_PETA\x10\x0e\x12\x13\n\x0fVALUE_SCALE_EXA\x10\x0f\x12\x15\n\x11VALUE_SCALE_ZETTA\x10\x10\x12\x15\n\x11VALUE_SCALE_YOTTA\x10\x11*\x82\x01\n\x0cSensorStatus\x12\x1b\n\x17SENSOR_STATUS_UNDEFINED\x10\x00\x12\x14\n\x10SENSOR_STATUS_OK\x10\x01\x12\x1d\n\x19SENSOR_STATUS_UNAVAILABLE\x10\x02\x12 \n\x1cSENSOR_STATUS_NONOPERATIONAL\x10\x03*\xa4\x01\n\x0fTransceiverType\x12\x12\n\x0eTYPE_UNDEFINED\x10\x00\x12\x0c\n\x08\x45THERNET\x10\x01\x12\x08\n\x04GPON\x10\x02\x12\t\n\x05XGPON\x10\x03\x12\n\n\x06XGSPON\x10\x04\x12\x08\n\x04\x43PON\x10\x05\x12\x0b\n\x07NG_PON2\x10\x06\x12\x08\n\x04\x45PON\x10\x07\x12\x15\n\x11\x43OMBO_GPON_XGSPON\x10\x08\x12\x16\n\x11TYPE_NOT_DETECTED\x10\xff\x01\x42;Z9github.com/opencord/device-management-interface/v3/go/dmib\x06proto3')
+DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0c\x64mi/hw.proto\x12\x03\x64mi\x1a\x1fgoogle/protobuf/timestamp.proto\"\x14\n\x04Uuid\x12\x0c\n\x04uuid\x18\x01 \x01(\t\"%\n\nHardwareID\x12\x17\n\x04uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\"\x12\n\x03Uri\x12\x0b\n\x03uri\x18\x01 \x01(\t\"\xb5\x02\n\x0e\x43omponentState\x12\x36\n\x12state_last_changed\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12-\n\x0b\x61\x64min_state\x18\x02 \x01(\x0e\x32\x18.dmi.ComponentAdminState\x12+\n\noper_state\x18\x03 \x01(\x0e\x32\x17.dmi.ComponentOperState\x12-\n\x0busage_state\x18\x04 \x01(\x0e\x32\x18.dmi.ComponentUsageState\x12-\n\x0b\x61larm_state\x18\x05 \x01(\x0e\x32\x18.dmi.ComponentAlarmState\x12\x31\n\rstandby_state\x18\x06 \x01(\x0e\x32\x1a.dmi.ComponentStandbyState\"\x90\x02\n\x13\x43omponentSensorData\x12\r\n\x05value\x18\x01 \x01(\x05\x12 \n\x04type\x18\x02 \x01(\x0e\x32\x12.dmi.DataValueType\x12\x1e\n\x05scale\x18\x03 \x01(\x0e\x32\x0f.dmi.ValueScale\x12\x11\n\tprecision\x18\x04 \x01(\x05\x12!\n\x06status\x18\x05 \x01(\x0e\x32\x11.dmi.SensorStatus\x12\x15\n\runits_display\x18\x06 \x01(\t\x12-\n\ttimestamp\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x19\n\x11value_update_rate\x18\x08 \x01(\r\x12\x11\n\tdata_type\x18\t \x01(\t\"\xe1\x05\n\x17PortComponentAttributes\x12\x42\n\x0e\x63onnector_type\x18\x01 \x01(\x0e\x32*.dmi.PortComponentAttributes.ConnectorType\x12\x31\n\x05speed\x18\x02 \x01(\x0e\x32\".dmi.PortComponentAttributes.Speed\x12\x37\n\x08protocol\x18\x03 \x01(\x0e\x32%.dmi.PortComponentAttributes.Protocol\x12\x16\n\x0ephysical_label\x18\x04 \x01(\t\x12\x15\n\rmapping_label\x18\x05 \x01(\t\x12\'\n\rpon_id_config\x18\x06 \x01(\x0b\x32\x10.dmi.PonIdConfig\x12\x1d\n\x15speed_autonegotiation\x18\x07 \x01(\x08\"p\n\rConnectorType\x12\x1c\n\x18\x43ONNECTOR_TYPE_UNDEFINED\x10\x00\x12\x08\n\x04RJ45\x10\x01\x12\x0c\n\x08\x46IBER_LC\x10\x02\x12\x0f\n\x0b\x46IBER_SC_PC\x10\x03\x12\r\n\tFIBER_MPO\x10\x04\x12\t\n\x05RS232\x10\x05\"\xae\x01\n\x05Speed\x12\x13\n\x0fSPEED_UNDEFINED\x10\x00\x12\x0b\n\x07\x44YNAMIC\x10\x01\x12\r\n\tGIGABIT_1\x10\x02\x12\x0e\n\nGIGABIT_10\x10\x03\x12\x0e\n\nGIGABIT_25\x10\x04\x12\x0e\n\nGIGABIT_40\x10\x05\x12\x0f\n\x0bGIGABIT_100\x10\x06\x12\x0f\n\x0bGIGABIT_400\x10\x07\x12\x10\n\x0cMEGABIT_2500\x10\x08\x12\x10\n\x0cMEGABIT_1250\x10\t\"|\n\x08Protocol\x12\x16\n\x12PROTOCOL_UNDEFINED\x10\x00\x12\x0c\n\x08\x45THERNET\x10\x01\x12\x08\n\x04GPON\x10\x02\x12\t\n\x05XGPON\x10\x03\x12\n\n\x06XGSPON\x10\x04\x12\t\n\x05GFAST\x10\x05\x12\n\n\x06SERIAL\x10\x06\x12\x08\n\x04\x45PON\x10\x07\x12\x08\n\x04\x42ITS\x10\x08\"H\n\x1dPortComponentChangeAttributes\x12\'\n\rpon_id_config\x18\x01 \x01(\x0b\x32\x10.dmi.PonIdConfig\"P\n$TransceiverComponentChangeAttributes\x12(\n\ntrans_type\x18\x01 \x01(\x0e\x32\x14.dmi.TransceiverType\"B\n\x0bPonIdConfig\x12\x0e\n\x06pon_id\x18\x01 \x01(\x0c\x12#\n\x1bpon_id_transmit_periodicity\x18\x02 \x01(\r\"6\n\x1c\x43ontainerComponentAttributes\x12\x16\n\x0ephysical_label\x18\x01 \x01(\t\"\xb3\x01\n\x16PsuComponentAttributes\x12G\n\x11supported_voltage\x18\x01 \x01(\x0e\x32,.dmi.PsuComponentAttributes.SupportedVoltage\"P\n\x10SupportedVoltage\x12\x1f\n\x1bSUPPORTED_VOLTAGE_UNDEFINED\x10\x00\x12\x07\n\x03V48\x10\x01\x12\x08\n\x04V230\x10\x02\x12\x08\n\x04V115\x10\x03\"\xab\x04\n\x1fTransceiverComponentsAttributes\x12\x44\n\x0b\x66orm_factor\x18\x01 \x01(\x0e\x32/.dmi.TransceiverComponentsAttributes.FormFactor\x12(\n\ntrans_type\x18\x02 \x01(\x0e\x32\x14.dmi.TransceiverType\x12\x14\n\x0cmax_distance\x18\x03 \x01(\r\x12+\n\x12max_distance_scale\x18\x04 \x01(\x0e\x32\x0f.dmi.ValueScale\x12\x15\n\rrx_wavelength\x18\x05 \x03(\r\x12\x15\n\rtx_wavelength\x18\x06 \x03(\r\x12)\n\x10wavelength_scale\x18\x07 \x01(\x0e\x32\x0f.dmi.ValueScale\x12\x10\n\x08tx_power\x18\x08 \x03(\x05\x12\'\n\x0etx_power_scale\x18\t \x01(\x0e\x32\x0f.dmi.ValueScale\"\xc0\x01\n\nFormFactor\x12\x17\n\x13\x46ORM_FACTOR_UNKNOWN\x10\x00\x12\x08\n\x04QSFP\x10\x01\x12\r\n\tQSFP_PLUS\x10\x02\x12\n\n\x06QSFP28\x10\x03\x12\x07\n\x03SFP\x10\x04\x12\x0c\n\x08SFP_PLUS\x10\x05\x12\x07\n\x03XFP\x10\x06\x12\x08\n\x04\x43\x46P4\x10\x07\x12\x08\n\x04\x43\x46P2\x10\x08\x12\x08\n\x04\x43PAK\x10\t\x12\x06\n\x02X2\x10\n\x12\t\n\x05OTHER\x10\x0b\x12\x07\n\x03\x43\x46P\x10\x0c\x12\x0c\n\x08\x43\x46P2_ACO\x10\r\x12\x0c\n\x08\x43\x46P2_DCO\x10\x0e\"\xe8\x05\n\tComponent\x12\x0c\n\x04name\x18\x01 \x01(\t\x12!\n\x05\x63lass\x18\x02 \x01(\x0e\x32\x12.dmi.ComponentType\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12\x0e\n\x06parent\x18\x04 \x01(\t\x12\x16\n\x0eparent_rel_pos\x18\x05 \x01(\x05\x12 \n\x08\x63hildren\x18\x06 \x03(\x0b\x32\x0e.dmi.Component\x12\x14\n\x0chardware_rev\x18\x07 \x01(\t\x12\x14\n\x0c\x66irmware_rev\x18\x08 \x01(\t\x12\x14\n\x0csoftware_rev\x18\t \x01(\t\x12\x12\n\nserial_num\x18\n \x01(\t\x12\x10\n\x08mfg_name\x18\x0b \x01(\t\x12\x12\n\nmodel_name\x18\x0c \x01(\t\x12\r\n\x05\x61lias\x18\r \x01(\t\x12\x10\n\x08\x61sset_id\x18\x0e \x01(\t\x12\x0e\n\x06is_fru\x18\x0f \x01(\x08\x12,\n\x08mfg_date\x18\x10 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x15\n\x03uri\x18\x11 \x01(\x0b\x32\x08.dmi.Uri\x12\x17\n\x04uuid\x18\x12 \x01(\x0b\x32\t.dmi.Uuid\x12\"\n\x05state\x18\x13 \x01(\x0b\x32\x13.dmi.ComponentState\x12-\n\x0bsensor_data\x18\x14 \x03(\x0b\x32\x18.dmi.ComponentSensorData\x12\x31\n\tport_attr\x18\x32 \x01(\x0b\x32\x1c.dmi.PortComponentAttributesH\x00\x12;\n\x0e\x63ontainer_attr\x18\x33 \x01(\x0b\x32!.dmi.ContainerComponentAttributesH\x00\x12/\n\x08psu_attr\x18\x34 \x01(\x0b\x32\x1b.dmi.PsuComponentAttributesH\x00\x12@\n\x10transceiver_attr\x18\x35 \x01(\x0b\x32$.dmi.TransceiverComponentsAttributesH\x00\x42\n\n\x08specific\"\x8a\x01\n\x08Hardware\x12/\n\x0blast_change\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x1c\n\x04root\x18\x02 \x01(\x0b\x32\x0e.dmi.Component\x12/\n\x0blast_booted\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\xe9\x02\n\x13ModifiableComponent\x12\x0c\n\x04name\x18\x01 \x01(\t\x12!\n\x05\x63lass\x18\x02 \x01(\x0e\x32\x12.dmi.ComponentType\x12\x1e\n\x06parent\x18\x03 \x01(\x0b\x32\x0e.dmi.Component\x12\x16\n\x0eparent_rel_pos\x18\x04 \x01(\x05\x12\r\n\x05\x61lias\x18\x05 \x01(\t\x12\x10\n\x08\x61sset_id\x18\x06 \x01(\t\x12\x15\n\x03uri\x18\x07 \x01(\x0b\x32\x08.dmi.Uri\x12-\n\x0b\x61\x64min_state\x18\x08 \x01(\x0e\x32\x18.dmi.ComponentAdminState\x12\x37\n\tport_attr\x18\x32 \x01(\x0b\x32\".dmi.PortComponentChangeAttributesH\x00\x12=\n\x08trx_attr\x18\x33 \x01(\x0b\x32).dmi.TransceiverComponentChangeAttributesH\x00\x42\n\n\x08specific*\xb4\x03\n\rComponentType\x12\x1c\n\x18\x43OMPONENT_TYPE_UNDEFINED\x10\x00\x12\x1a\n\x16\x43OMPONENT_TYPE_UNKNOWN\x10\x01\x12\x1a\n\x16\x43OMPONENT_TYPE_CHASSIS\x10\x02\x12\x1c\n\x18\x43OMPONENT_TYPE_BACKPLANE\x10\x03\x12\x1c\n\x18\x43OMPONENT_TYPE_CONTAINER\x10\x04\x12\x1f\n\x1b\x43OMPONENT_TYPE_POWER_SUPPLY\x10\x05\x12\x16\n\x12\x43OMPONENT_TYPE_FAN\x10\x06\x12\x19\n\x15\x43OMPONENT_TYPE_SENSOR\x10\x07\x12\x19\n\x15\x43OMPONENT_TYPE_MODULE\x10\x08\x12\x17\n\x13\x43OMPONENT_TYPE_PORT\x10\t\x12\x16\n\x12\x43OMPONENT_TYPE_CPU\x10\n\x12\x1a\n\x16\x43OMPONENT_TYPE_BATTERY\x10\x0b\x12\x1a\n\x16\x43OMPONENT_TYPE_STORAGE\x10\x0c\x12\x19\n\x15\x43OMPONENT_TYPE_MEMORY\x10\r\x12\x1e\n\x1a\x43OMPONENT_TYPE_TRANSCEIVER\x10\x0e*\xb3\x01\n\x13\x43omponentAdminState\x12\x1e\n\x1a\x43OMP_ADMIN_STATE_UNDEFINED\x10\x00\x12\x1c\n\x18\x43OMP_ADMIN_STATE_UNKNOWN\x10\x01\x12\x1b\n\x17\x43OMP_ADMIN_STATE_LOCKED\x10\x02\x12\"\n\x1e\x43OMP_ADMIN_STATE_SHUTTING_DOWN\x10\x03\x12\x1d\n\x19\x43OMP_ADMIN_STATE_UNLOCKED\x10\x04*\xa8\x01\n\x12\x43omponentOperState\x12\x1d\n\x19\x43OMP_OPER_STATE_UNDEFINED\x10\x00\x12\x1b\n\x17\x43OMP_OPER_STATE_UNKNOWN\x10\x01\x12\x1c\n\x18\x43OMP_OPER_STATE_DISABLED\x10\x02\x12\x1b\n\x17\x43OMP_OPER_STATE_ENABLED\x10\x03\x12\x1b\n\x17\x43OMP_OPER_STATE_TESTING\x10\x04*\xa6\x01\n\x13\x43omponentUsageState\x12\x1e\n\x1a\x43OMP_USAGE_STATE_UNDEFINED\x10\x00\x12\x1c\n\x18\x43OMP_USAGE_STATE_UNKNOWN\x10\x01\x12\x19\n\x15\x43OMP_USAGE_STATE_IDLE\x10\x02\x12\x1b\n\x17\x43OMP_USAGE_STATE_ACTIVE\x10\x03\x12\x19\n\x15\x43OMP_USAGE_STATE_BUSY\x10\x04*\x8f\x02\n\x13\x43omponentAlarmState\x12\x1e\n\x1a\x43OMP_ALARM_STATE_UNDEFINED\x10\x00\x12\x1c\n\x18\x43OMP_ALARM_STATE_UNKNOWN\x10\x01\x12!\n\x1d\x43OMP_ALARM_STATE_UNDER_REPAIR\x10\x02\x12\x1d\n\x19\x43OMP_ALARM_STATE_CRITICAL\x10\x03\x12\x1a\n\x16\x43OMP_ALARM_STATE_MAJOR\x10\x04\x12\x1a\n\x16\x43OMP_ALARM_STATE_MINOR\x10\x05\x12\x1c\n\x18\x43OMP_ALARM_STATE_WARNING\x10\x06\x12\"\n\x1e\x43OMP_ALARM_STATE_INDETERMINATE\x10\x07*\xbc\x01\n\x15\x43omponentStandbyState\x12 \n\x1c\x43OMP_STANDBY_STATE_UNDEFINED\x10\x00\x12\x1e\n\x1a\x43OMP_STANDBY_STATE_UNKNOWN\x10\x01\x12\x1a\n\x16\x43OMP_STANDBY_STATE_HOT\x10\x02\x12\x1b\n\x17\x43OMP_STANDBY_STATE_COLD\x10\x03\x12(\n$COMP_STANDBY_STATE_PROVIDING_SERVICE\x10\x04*\x9d\x03\n\rDataValueType\x12\x18\n\x14VALUE_TYPE_UNDEFINED\x10\x00\x12\x14\n\x10VALUE_TYPE_OTHER\x10\x01\x12\x16\n\x12VALUE_TYPE_UNKNOWN\x10\x02\x12\x17\n\x13VALUE_TYPE_VOLTS_AC\x10\x03\x12\x17\n\x13VALUE_TYPE_VOLTS_DC\x10\x04\x12\x16\n\x12VALUE_TYPE_AMPERES\x10\x05\x12\x14\n\x10VALUE_TYPE_WATTS\x10\x06\x12\x14\n\x10VALUE_TYPE_HERTZ\x10\x07\x12\x16\n\x12VALUE_TYPE_CELSIUS\x10\x08\x12\x19\n\x15VALUE_TYPE_PERCENT_RH\x10\t\x12\x12\n\x0eVALUE_TYPE_RPM\x10\n\x12\x12\n\x0eVALUE_TYPE_CMM\x10\x0b\x12\x1a\n\x16VALUE_TYPE_TRUTH_VALUE\x10\x0c\x12\x16\n\x12VALUE_TYPE_PERCENT\x10\r\x12\x15\n\x11VALUE_TYPE_METERS\x10\x0e\x12\x14\n\x10VALUE_TYPE_BYTES\x10\x0f\x12\x12\n\x0eVALUE_TYPE_DBM\x10\x10*\xa4\x03\n\nValueScale\x12\x19\n\x15VALUE_SCALE_UNDEFINED\x10\x00\x12\x15\n\x11VALUE_SCALE_YOCTO\x10\x01\x12\x15\n\x11VALUE_SCALE_ZEPTO\x10\x02\x12\x14\n\x10VALUE_SCALE_ATTO\x10\x03\x12\x15\n\x11VALUE_SCALE_FEMTO\x10\x04\x12\x14\n\x10VALUE_SCALE_PICO\x10\x05\x12\x14\n\x10VALUE_SCALE_NANO\x10\x06\x12\x15\n\x11VALUE_SCALE_MICRO\x10\x07\x12\x15\n\x11VALUE_SCALE_MILLI\x10\x08\x12\x15\n\x11VALUE_SCALE_UNITS\x10\t\x12\x14\n\x10VALUE_SCALE_KILO\x10\n\x12\x14\n\x10VALUE_SCALE_MEGA\x10\x0b\x12\x14\n\x10VALUE_SCALE_GIGA\x10\x0c\x12\x14\n\x10VALUE_SCALE_TERA\x10\r\x12\x14\n\x10VALUE_SCALE_PETA\x10\x0e\x12\x13\n\x0fVALUE_SCALE_EXA\x10\x0f\x12\x15\n\x11VALUE_SCALE_ZETTA\x10\x10\x12\x15\n\x11VALUE_SCALE_YOTTA\x10\x11*\x82\x01\n\x0cSensorStatus\x12\x1b\n\x17SENSOR_STATUS_UNDEFINED\x10\x00\x12\x14\n\x10SENSOR_STATUS_OK\x10\x01\x12\x1d\n\x19SENSOR_STATUS_UNAVAILABLE\x10\x02\x12 \n\x1cSENSOR_STATUS_NONOPERATIONAL\x10\x03*\xa4\x01\n\x0fTransceiverType\x12\x12\n\x0eTYPE_UNDEFINED\x10\x00\x12\x0c\n\x08\x45THERNET\x10\x01\x12\x08\n\x04GPON\x10\x02\x12\t\n\x05XGPON\x10\x03\x12\n\n\x06XGSPON\x10\x04\x12\x08\n\x04\x43PON\x10\x05\x12\x0b\n\x07NG_PON2\x10\x06\x12\x08\n\x04\x45PON\x10\x07\x12\x15\n\x11\x43OMBO_GPON_XGSPON\x10\x08\x12\x16\n\x11TYPE_NOT_DETECTED\x10\xff\x01\x42;Z9github.com/opencord/device-management-interface/v3/go/dmib\x06proto3')
_COMPONENTTYPE = DESCRIPTOR.enum_types_by_name['ComponentType']
ComponentType = enum_type_wrapper.EnumTypeWrapper(_COMPONENTTYPE)
@@ -261,26 +261,26 @@
DESCRIPTOR._options = None
DESCRIPTOR._serialized_options = b'Z9github.com/opencord/device-management-interface/v3/go/dmi'
- _COMPONENTTYPE._serialized_start=3676
- _COMPONENTTYPE._serialized_end=4112
- _COMPONENTADMINSTATE._serialized_start=4115
- _COMPONENTADMINSTATE._serialized_end=4294
- _COMPONENTOPERSTATE._serialized_start=4297
- _COMPONENTOPERSTATE._serialized_end=4465
- _COMPONENTUSAGESTATE._serialized_start=4468
- _COMPONENTUSAGESTATE._serialized_end=4634
- _COMPONENTALARMSTATE._serialized_start=4637
- _COMPONENTALARMSTATE._serialized_end=4908
- _COMPONENTSTANDBYSTATE._serialized_start=4911
- _COMPONENTSTANDBYSTATE._serialized_end=5099
- _DATAVALUETYPE._serialized_start=5102
- _DATAVALUETYPE._serialized_end=5515
- _VALUESCALE._serialized_start=5518
- _VALUESCALE._serialized_end=5938
- _SENSORSTATUS._serialized_start=5941
- _SENSORSTATUS._serialized_end=6071
- _TRANSCEIVERTYPE._serialized_start=6074
- _TRANSCEIVERTYPE._serialized_end=6238
+ _COMPONENTTYPE._serialized_start=3735
+ _COMPONENTTYPE._serialized_end=4171
+ _COMPONENTADMINSTATE._serialized_start=4174
+ _COMPONENTADMINSTATE._serialized_end=4353
+ _COMPONENTOPERSTATE._serialized_start=4356
+ _COMPONENTOPERSTATE._serialized_end=4524
+ _COMPONENTUSAGESTATE._serialized_start=4527
+ _COMPONENTUSAGESTATE._serialized_end=4693
+ _COMPONENTALARMSTATE._serialized_start=4696
+ _COMPONENTALARMSTATE._serialized_end=4967
+ _COMPONENTSTANDBYSTATE._serialized_start=4970
+ _COMPONENTSTANDBYSTATE._serialized_end=5158
+ _DATAVALUETYPE._serialized_start=5161
+ _DATAVALUETYPE._serialized_end=5574
+ _VALUESCALE._serialized_start=5577
+ _VALUESCALE._serialized_end=5997
+ _SENSORSTATUS._serialized_start=6000
+ _SENSORSTATUS._serialized_end=6130
+ _TRANSCEIVERTYPE._serialized_start=6133
+ _TRANSCEIVERTYPE._serialized_end=6297
_UUID._serialized_start=54
_UUID._serialized_end=74
_HARDWAREID._serialized_start=76
@@ -312,13 +312,13 @@
_PSUCOMPONENTATTRIBUTES_SUPPORTEDVOLTAGE._serialized_start=1842
_PSUCOMPONENTATTRIBUTES_SUPPORTEDVOLTAGE._serialized_end=1922
_TRANSCEIVERCOMPONENTSATTRIBUTES._serialized_start=1925
- _TRANSCEIVERCOMPONENTSATTRIBUTES._serialized_end=2421
- _TRANSCEIVERCOMPONENTSATTRIBUTES_FORMFACTOR._serialized_start=2229
- _TRANSCEIVERCOMPONENTSATTRIBUTES_FORMFACTOR._serialized_end=2421
- _COMPONENT._serialized_start=2424
- _COMPONENT._serialized_end=3168
- _HARDWARE._serialized_start=3171
- _HARDWARE._serialized_end=3309
- _MODIFIABLECOMPONENT._serialized_start=3312
- _MODIFIABLECOMPONENT._serialized_end=3673
+ _TRANSCEIVERCOMPONENTSATTRIBUTES._serialized_end=2480
+ _TRANSCEIVERCOMPONENTSATTRIBUTES_FORMFACTOR._serialized_start=2288
+ _TRANSCEIVERCOMPONENTSATTRIBUTES_FORMFACTOR._serialized_end=2480
+ _COMPONENT._serialized_start=2483
+ _COMPONENT._serialized_end=3227
+ _HARDWARE._serialized_start=3230
+ _HARDWARE._serialized_end=3368
+ _MODIFIABLECOMPONENT._serialized_start=3371
+ _MODIFIABLECOMPONENT._serialized_end=3732
# @@protoc_insertion_point(module_scope)