Merge "Fix bitmask arithmetic to match up with decoding."
diff --git a/car-lib/src/android/car/hardware/CarDiagnosticEvent.java b/car-lib/src/android/car/hardware/CarDiagnosticEvent.java
index b970b23..303ad53 100644
--- a/car-lib/src/android/car/hardware/CarDiagnosticEvent.java
+++ b/car-lib/src/android/car/hardware/CarDiagnosticEvent.java
@@ -21,8 +21,10 @@
 import android.car.annotation.FutureFeature;
 import android.os.Parcel;
 import android.os.Parcelable;
+import android.util.JsonWriter;
 import android.util.SparseArray;
 import android.util.SparseIntArray;
+import java.io.IOException;
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
 import java.util.Objects;
@@ -78,7 +80,7 @@
             int value = in.readInt();
             intValues.put(key, value);
         }
-        dtc = (String)in.readValue(String.class.getClassLoader());
+        dtc = (String) in.readValue(String.class.getClassLoader());
         // version 1 up to here
     }
 
@@ -106,6 +108,48 @@
         dest.writeValue(dtc);
     }
 
+    public void writeToJson(JsonWriter jsonWriter) throws IOException {
+        jsonWriter.beginObject();
+
+        jsonWriter.name("type");
+        switch (frameType) {
+            case CarDiagnosticManager.FRAME_TYPE_FLAG_LIVE:
+                jsonWriter.value("live");
+                break;
+            case CarDiagnosticManager.FRAME_TYPE_FLAG_FREEZE:
+                jsonWriter.value("freeze");
+                break;
+            default:
+                throw new IllegalStateException("unknown frameType " + frameType);
+        }
+
+        jsonWriter.name("timestamp").value(timestamp);
+
+        jsonWriter.name("intValues").beginArray();
+        for (int i = 0; i < intValues.size(); ++i) {
+            jsonWriter.beginObject();
+            jsonWriter.name("id").value(intValues.keyAt(i));
+            jsonWriter.name("value").value(intValues.valueAt(i));
+            jsonWriter.endObject();
+        }
+        jsonWriter.endArray();
+
+        jsonWriter.name("floatValues").beginArray();
+        for (int i = 0; i < floatValues.size(); ++i) {
+            jsonWriter.beginObject();
+            jsonWriter.name("id").value(floatValues.keyAt(i));
+            jsonWriter.name("value").value(floatValues.valueAt(i));
+            jsonWriter.endObject();
+        }
+        jsonWriter.endArray();
+
+        if (dtc != null) {
+            jsonWriter.name("stringValue").value(dtc);
+        }
+
+        jsonWriter.endObject();
+    }
+
     public static final Parcelable.Creator<CarDiagnosticEvent> CREATOR =
             new Parcelable.Creator<CarDiagnosticEvent>() {
                 public CarDiagnosticEvent createFromParcel(Parcel in) {
@@ -176,18 +220,19 @@
 
     /**
      * Returns a copy of this CarDiagnosticEvent with all vendor-specific sensors removed.
+     *
      * @hide
      */
     public CarDiagnosticEvent withVendorSensorsRemoved() {
         SparseIntArray newIntValues = intValues.clone();
         SparseArray<Float> newFloatValues = floatValues.clone();
-        for(int i = 0; i < intValues.size(); ++i) {
+        for (int i = 0; i < intValues.size(); ++i) {
             int key = intValues.keyAt(i);
             if (key >= CarDiagnosticSensorIndices.Obd2IntegerSensorIndex.LAST_SYSTEM) {
                 newIntValues.delete(key);
             }
         }
-        for(int i = 0; i < floatValues.size(); ++i) {
+        for (int i = 0; i < floatValues.size(); ++i) {
             int key = floatValues.keyAt(i);
             if (key >= CarDiagnosticSensorIndices.Obd2FloatSensorIndex.LAST_SYSTEM) {
                 newFloatValues.delete(key);
@@ -244,11 +289,13 @@
                 floatValues.toString());
     }
 
-    public int getSystemIntegerSensor(@CarDiagnosticSensorIndices.IntegerSensorIndex int sensor, int defaultValue) {
+    public int getSystemIntegerSensor(
+            @CarDiagnosticSensorIndices.IntegerSensorIndex int sensor, int defaultValue) {
         return intValues.get(sensor, defaultValue);
     }
 
-    public float getSystemFloatSensor(@CarDiagnosticSensorIndices.FloatSensorIndex int sensor, float defaultValue) {
+    public float getSystemFloatSensor(
+            @CarDiagnosticSensorIndices.FloatSensorIndex int sensor, float defaultValue) {
         return floatValues.get(sensor, defaultValue);
     }
 
@@ -260,33 +307,35 @@
         return floatValues.get(sensor, defaultValue);
     }
 
-    public @Nullable Integer getSystemIntegerSensor(@CarDiagnosticSensorIndices.IntegerSensorIndex int sensor) {
+    public @Nullable Integer getSystemIntegerSensor(
+            @CarDiagnosticSensorIndices.IntegerSensorIndex int sensor) {
         int index = intValues.indexOfKey(sensor);
-        if(index < 0) return null;
+        if (index < 0) return null;
         return intValues.valueAt(index);
     }
 
-    public @Nullable Float getSystemFloatSensor(@CarDiagnosticSensorIndices.FloatSensorIndex int sensor) {
+    public @Nullable Float getSystemFloatSensor(
+            @CarDiagnosticSensorIndices.FloatSensorIndex int sensor) {
         int index = floatValues.indexOfKey(sensor);
-        if(index < 0) return null;
+        if (index < 0) return null;
         return floatValues.valueAt(index);
     }
 
     public @Nullable Integer getVendorIntegerSensor(int sensor) {
         int index = intValues.indexOfKey(sensor);
-        if(index < 0) return null;
+        if (index < 0) return null;
         return intValues.valueAt(index);
     }
 
     public @Nullable Float getVendorFloatSensor(int sensor) {
         int index = floatValues.indexOfKey(sensor);
-        if(index < 0) return null;
+        if (index < 0) return null;
         return floatValues.valueAt(index);
     }
 
     /**
-     * Represents possible states of the fuel system;
-     * see {@link CarDiagnosticSensorIndices.Obd2IntegerSensorIndex#FUEL_SYSTEM_STATUS}
+     * Represents possible states of the fuel system; see {@link
+     * CarDiagnosticSensorIndices.Obd2IntegerSensorIndex#FUEL_SYSTEM_STATUS}
      */
     public static final class FuelSystemStatus {
         private FuelSystemStatus() {}
@@ -309,8 +358,8 @@
     }
 
     /**
-     * Represents possible states of the secondary air system;
-     * see {@link CarDiagnosticSensorIndices.Obd2IntegerSensorIndex#COMMANDED_SECONDARY_AIR_STATUS}
+     * Represents possible states of the secondary air system; see {@link
+     * CarDiagnosticSensorIndices.Obd2IntegerSensorIndex#COMMANDED_SECONDARY_AIR_STATUS}
      */
     public static final class SecondaryAirStatus {
         private SecondaryAirStatus() {}
@@ -331,8 +380,8 @@
     }
 
     /**
-     * Represents possible types of fuel;
-     * see {@link CarDiagnosticSensorIndices.Obd2IntegerSensorIndex#FUEL_TYPE}
+     * Represents possible types of fuel; see {@link
+     * CarDiagnosticSensorIndices.Obd2IntegerSensorIndex#FUEL_TYPE}
      */
     public static final class FuelType {
         private FuelType() {}
@@ -393,9 +442,9 @@
     }
 
     /**
-     * Represents possible states of the ignition monitors on the vehicle;
-     * see {@link CarDiagnosticSensorIndices.Obd2IntegerSensorIndex#IGNITION_MONITORS_SUPPORTED}
-     * see {@link CarDiagnosticSensorIndices.Obd2IntegerSensorIndex#IGNITION_SPECIFIC_MONITORS}
+     * Represents possible states of the ignition monitors on the vehicle; see {@link
+     * CarDiagnosticSensorIndices.Obd2IntegerSensorIndex#IGNITION_MONITORS_SUPPORTED} see {@link
+     * CarDiagnosticSensorIndices.Obd2IntegerSensorIndex#IGNITION_SPECIFIC_MONITORS}
      */
     public static final class IgnitionMonitors {
         public static final class IgnitionMonitor {
@@ -407,26 +456,16 @@
                 this.incomplete = incomplete;
             }
 
-            public static final class Builder {
-                private int mAvailableBitmask;
-                private int mIncompleteBitmask;
+            public static final class Decoder {
+                private final int mAvailableBitmask;
+                private final int mIncompleteBitmask;
 
-                Builder() {
-                    mAvailableBitmask = 0;
-                    mIncompleteBitmask = 0;
+                Decoder(int availableBitmask, int incompleteBitmask) {
+                    mAvailableBitmask = availableBitmask;
+                    mIncompleteBitmask = incompleteBitmask;
                 }
 
-                public Builder withAvailableBitmask(int bitmask) {
-                    mAvailableBitmask = bitmask;
-                    return this;
-                }
-
-                public Builder withIncompleteBitmask(int bitmask) {
-                    mIncompleteBitmask = bitmask;
-                    return this;
-                }
-
-                public IgnitionMonitor buildForValue(int value) {
+                public IgnitionMonitor fromValue(int value) {
                     boolean available = (0 != (value & mAvailableBitmask));
                     boolean incomplete = (0 != (value & mIncompleteBitmask));
 
@@ -449,36 +488,29 @@
             static final int MISFIRE_AVAILABLE = 0x1 << 4;
             static final int MISFIRE_INCOMPLETE = 0x1 << 5;
 
-            static final IgnitionMonitor.Builder COMPONENTS_BUILDER =
-                    new IgnitionMonitor.Builder()
-                            .withAvailableBitmask(COMPONENTS_AVAILABLE)
-                            .withIncompleteBitmask(COMPONENTS_INCOMPLETE);
+            static final IgnitionMonitor.Decoder COMPONENTS_DECODER =
+                    new IgnitionMonitor.Decoder(COMPONENTS_AVAILABLE, COMPONENTS_INCOMPLETE);
 
-            static final IgnitionMonitor.Builder FUEL_SYSTEM_BUILDER =
-                    new IgnitionMonitor.Builder()
-                            .withAvailableBitmask(FUEL_SYSTEM_AVAILABLE)
-                            .withIncompleteBitmask(FUEL_SYSTEM_INCOMPLETE);
+            static final IgnitionMonitor.Decoder FUEL_SYSTEM_DECODER =
+                    new IgnitionMonitor.Decoder(FUEL_SYSTEM_AVAILABLE, FUEL_SYSTEM_INCOMPLETE);
 
-            static final IgnitionMonitor.Builder MISFIRE_BUILDER =
-                    new IgnitionMonitor.Builder()
-                            .withAvailableBitmask(MISFIRE_AVAILABLE)
-                            .withIncompleteBitmask(MISFIRE_INCOMPLETE);
+            static final IgnitionMonitor.Decoder MISFIRE_DECODER =
+                    new IgnitionMonitor.Decoder(MISFIRE_AVAILABLE, MISFIRE_INCOMPLETE);
 
             CommonIgnitionMonitors(int bitmask) {
-                components = COMPONENTS_BUILDER.buildForValue(bitmask);
-                fuelSystem = FUEL_SYSTEM_BUILDER.buildForValue(bitmask);
-                misfire = MISFIRE_BUILDER.buildForValue(bitmask);
+                components = COMPONENTS_DECODER.fromValue(bitmask);
+                fuelSystem = FUEL_SYSTEM_DECODER.fromValue(bitmask);
+                misfire = MISFIRE_DECODER.fromValue(bitmask);
             }
 
             public @Nullable SparkIgnitionMonitors asSparkIgnitionMonitors() {
-                if (this instanceof SparkIgnitionMonitors)
-                    return (SparkIgnitionMonitors)this;
+                if (this instanceof SparkIgnitionMonitors) return (SparkIgnitionMonitors) this;
                 return null;
             }
 
             public @Nullable CompressionIgnitionMonitors asCompressionIgnitionMonitors() {
                 if (this instanceof CompressionIgnitionMonitors)
-                    return (CompressionIgnitionMonitors)this;
+                    return (CompressionIgnitionMonitors) this;
                 return null;
             }
         }
@@ -517,56 +549,45 @@
             static final int CATALYST_AVAILABLE = 0x1 << 20;
             static final int CATALYST_INCOMPLETE = 0x1 << 21;
 
-            static final IgnitionMonitor.Builder EGR_BUILDER =
-                new IgnitionMonitor.Builder()
-                    .withAvailableBitmask(EGR_AVAILABLE)
-                    .withIncompleteBitmask(EGR_INCOMPLETE);
+            static final IgnitionMonitor.Decoder EGR_DECODER =
+                    new IgnitionMonitor.Decoder(EGR_AVAILABLE, EGR_INCOMPLETE);
 
-            static final IgnitionMonitor.Builder OXYGEN_SENSOR_HEATER_BUILDER =
-                new IgnitionMonitor.Builder()
-                    .withAvailableBitmask(OXYGEN_SENSOR_HEATER_AVAILABLE)
-                    .withIncompleteBitmask(OXYGEN_SENSOR_HEATER_INCOMPLETE);
+            static final IgnitionMonitor.Decoder OXYGEN_SENSOR_HEATER_DECODER =
+                    new IgnitionMonitor.Decoder(OXYGEN_SENSOR_HEATER_AVAILABLE,
+                            OXYGEN_SENSOR_HEATER_INCOMPLETE);
 
-            static final IgnitionMonitor.Builder OXYGEN_SENSOR_BUILDER =
-                new IgnitionMonitor.Builder()
-                    .withAvailableBitmask(OXYGEN_SENSOR_AVAILABLE)
-                    .withIncompleteBitmask(OXYGEN_SENSOR_INCOMPLETE);
+            static final IgnitionMonitor.Decoder OXYGEN_SENSOR_DECODER =
+                    new IgnitionMonitor.Decoder(OXYGEN_SENSOR_AVAILABLE, OXYGEN_SENSOR_INCOMPLETE);
 
-            static final IgnitionMonitor.Builder AC_REFRIGERANT_BUILDER =
-                new IgnitionMonitor.Builder()
-                    .withAvailableBitmask(AC_REFRIGERANT_AVAILABLE)
-                    .withIncompleteBitmask(AC_REFRIGERANT_INCOMPLETE);
+            static final IgnitionMonitor.Decoder AC_REFRIGERANT_DECODER =
+                    new IgnitionMonitor.Decoder(AC_REFRIGERANT_AVAILABLE,
+                            AC_REFRIGERANT_INCOMPLETE);
 
-            static final IgnitionMonitor.Builder SECONDARY_AIR_SYSTEM_BUILDER =
-                new IgnitionMonitor.Builder()
-                    .withAvailableBitmask(SECONDARY_AIR_SYSTEM_AVAILABLE)
-                    .withIncompleteBitmask(SECONDARY_AIR_SYSTEM_INCOMPLETE);
+            static final IgnitionMonitor.Decoder SECONDARY_AIR_SYSTEM_DECODER =
+                    new IgnitionMonitor.Decoder(SECONDARY_AIR_SYSTEM_AVAILABLE,
+                            SECONDARY_AIR_SYSTEM_INCOMPLETE);
 
-            static final IgnitionMonitor.Builder EVAPORATIVE_SYSTEM_BUILDER =
-                new IgnitionMonitor.Builder()
-                    .withAvailableBitmask(EVAPORATIVE_SYSTEM_AVAILABLE)
-                    .withIncompleteBitmask(EVAPORATIVE_SYSTEM_INCOMPLETE);
+            static final IgnitionMonitor.Decoder EVAPORATIVE_SYSTEM_DECODER =
+                    new IgnitionMonitor.Decoder(EVAPORATIVE_SYSTEM_AVAILABLE,
+                            EVAPORATIVE_SYSTEM_INCOMPLETE);
 
-            static final IgnitionMonitor.Builder HEATED_CATALYST_BUILDER =
-                new IgnitionMonitor.Builder()
-                    .withAvailableBitmask(HEATED_CATALYST_AVAILABLE)
-                    .withIncompleteBitmask(HEATED_CATALYST_INCOMPLETE);
+            static final IgnitionMonitor.Decoder HEATED_CATALYST_DECODER =
+                    new IgnitionMonitor.Decoder(HEATED_CATALYST_AVAILABLE,
+                            HEATED_CATALYST_INCOMPLETE);
 
-            static final IgnitionMonitor.Builder CATALYST_BUILDER =
-                new IgnitionMonitor.Builder()
-                    .withAvailableBitmask(CATALYST_AVAILABLE)
-                    .withIncompleteBitmask(CATALYST_INCOMPLETE);
+            static final IgnitionMonitor.Decoder CATALYST_DECODER =
+                    new IgnitionMonitor.Decoder(CATALYST_AVAILABLE, CATALYST_INCOMPLETE);
 
             SparkIgnitionMonitors(int bitmask) {
                 super(bitmask);
-                EGR = EGR_BUILDER.buildForValue(bitmask);
-                oxygenSensorHeater = OXYGEN_SENSOR_HEATER_BUILDER.buildForValue(bitmask);
-                oxygenSensor = OXYGEN_SENSOR_BUILDER.buildForValue(bitmask);
-                ACRefrigerant = AC_REFRIGERANT_BUILDER.buildForValue(bitmask);
-                secondaryAirSystem = SECONDARY_AIR_SYSTEM_BUILDER.buildForValue(bitmask);
-                evaporativeSystem = EVAPORATIVE_SYSTEM_BUILDER.buildForValue(bitmask);
-                heatedCatalyst = HEATED_CATALYST_BUILDER.buildForValue(bitmask);
-                catalyst = CATALYST_BUILDER.buildForValue(bitmask);
+                EGR = EGR_DECODER.fromValue(bitmask);
+                oxygenSensorHeater = OXYGEN_SENSOR_HEATER_DECODER.fromValue(bitmask);
+                oxygenSensor = OXYGEN_SENSOR_DECODER.fromValue(bitmask);
+                ACRefrigerant = AC_REFRIGERANT_DECODER.fromValue(bitmask);
+                secondaryAirSystem = SECONDARY_AIR_SYSTEM_DECODER.fromValue(bitmask);
+                evaporativeSystem = EVAPORATIVE_SYSTEM_DECODER.fromValue(bitmask);
+                heatedCatalyst = HEATED_CATALYST_DECODER.fromValue(bitmask);
+                catalyst = CATALYST_DECODER.fromValue(bitmask);
             }
         }
 
@@ -596,69 +617,66 @@
             static final int NMHC_CATALYST_AVAILABLE = 0x1 << 16;
             static final int NMHC_CATALYST_INCOMPLETE = 0x1 << 17;
 
-            static final IgnitionMonitor.Builder EGR_OR_VVT_BUILDER =
-                new IgnitionMonitor.Builder()
-                    .withAvailableBitmask(EGR_OR_VVT_AVAILABLE)
-                    .withIncompleteBitmask(EGR_OR_VVT_INCOMPLETE);
+            static final IgnitionMonitor.Decoder EGR_OR_VVT_DECODER =
+                    new IgnitionMonitor.Decoder(EGR_OR_VVT_AVAILABLE, EGR_OR_VVT_INCOMPLETE);
 
-            static final IgnitionMonitor.Builder PM_FILTER_BUILDER =
-                new IgnitionMonitor.Builder()
-                    .withAvailableBitmask(PM_FILTER_AVAILABLE)
-                    .withIncompleteBitmask(PM_FILTER_INCOMPLETE);
+            static final IgnitionMonitor.Decoder PM_FILTER_DECODER =
+                    new IgnitionMonitor.Decoder(PM_FILTER_AVAILABLE, PM_FILTER_INCOMPLETE);
 
-            static final IgnitionMonitor.Builder EXHAUST_GAS_SENSOR_BUILDER =
-                new IgnitionMonitor.Builder()
-                    .withAvailableBitmask(EXHAUST_GAS_SENSOR_AVAILABLE)
-                    .withIncompleteBitmask(EXHAUST_GAS_SENSOR_INCOMPLETE);
+            static final IgnitionMonitor.Decoder EXHAUST_GAS_SENSOR_DECODER =
+                    new IgnitionMonitor.Decoder(EXHAUST_GAS_SENSOR_AVAILABLE,
+                            EXHAUST_GAS_SENSOR_INCOMPLETE);
 
-            static final IgnitionMonitor.Builder BOOST_PRESSURE_BUILDER =
-                new IgnitionMonitor.Builder()
-                    .withAvailableBitmask(BOOST_PRESSURE_AVAILABLE)
-                    .withIncompleteBitmask(BOOST_PRESSURE_INCOMPLETE);
+            static final IgnitionMonitor.Decoder BOOST_PRESSURE_DECODER =
+                    new IgnitionMonitor.Decoder(BOOST_PRESSURE_AVAILABLE,
+                            BOOST_PRESSURE_INCOMPLETE);
 
-            static final IgnitionMonitor.Builder NOx_SCR_BUILDER =
-                new IgnitionMonitor.Builder()
-                    .withAvailableBitmask(NOx_SCR_AVAILABLE)
-                    .withIncompleteBitmask(NOx_SCR_INCOMPLETE);
+            static final IgnitionMonitor.Decoder NOx_SCR_DECODER =
+                    new IgnitionMonitor.Decoder(NOx_SCR_AVAILABLE, NOx_SCR_INCOMPLETE);
 
-            static final IgnitionMonitor.Builder NMHC_CATALYST_BUILDER =
-                new IgnitionMonitor.Builder()
-                    .withAvailableBitmask(NMHC_CATALYST_AVAILABLE)
-                    .withIncompleteBitmask(NMHC_CATALYST_INCOMPLETE);
+            static final IgnitionMonitor.Decoder NMHC_CATALYST_DECODER =
+                    new IgnitionMonitor.Decoder(NMHC_CATALYST_AVAILABLE, NMHC_CATALYST_INCOMPLETE);
 
             CompressionIgnitionMonitors(int bitmask) {
                 super(bitmask);
-                EGROrVVT = EGR_OR_VVT_BUILDER.buildForValue(bitmask);
-                PMFilter = PM_FILTER_BUILDER.buildForValue(bitmask);
-                exhaustGasSensor = EXHAUST_GAS_SENSOR_BUILDER.buildForValue(bitmask);
-                boostPressure = BOOST_PRESSURE_BUILDER.buildForValue(bitmask);
-                NOxSCR = NOx_SCR_BUILDER.buildForValue(bitmask);
-                NMHCCatalyst = NMHC_CATALYST_BUILDER.buildForValue(bitmask);
+                EGROrVVT = EGR_OR_VVT_DECODER.fromValue(bitmask);
+                PMFilter = PM_FILTER_DECODER.fromValue(bitmask);
+                exhaustGasSensor = EXHAUST_GAS_SENSOR_DECODER.fromValue(bitmask);
+                boostPressure = BOOST_PRESSURE_DECODER.fromValue(bitmask);
+                NOxSCR = NOx_SCR_DECODER.fromValue(bitmask);
+                NMHCCatalyst = NMHC_CATALYST_DECODER.fromValue(bitmask);
             }
         }
     }
 
     public @Nullable @FuelSystemStatus.Status Integer getFuelSystemStatus() {
-        return getSystemIntegerSensor(CarDiagnosticSensorIndices.Obd2IntegerSensorIndex.FUEL_SYSTEM_STATUS);
+        return getSystemIntegerSensor(
+                CarDiagnosticSensorIndices.Obd2IntegerSensorIndex.FUEL_SYSTEM_STATUS);
     }
 
     public @Nullable @SecondaryAirStatus.Status Integer getSecondaryAirStatus() {
-        return getSystemIntegerSensor(CarDiagnosticSensorIndices.Obd2IntegerSensorIndex.COMMANDED_SECONDARY_AIR_STATUS);
+        return getSystemIntegerSensor(
+                CarDiagnosticSensorIndices.Obd2IntegerSensorIndex.COMMANDED_SECONDARY_AIR_STATUS);
     }
 
     public @Nullable IgnitionMonitors.CommonIgnitionMonitors getIgnitionMonitors() {
-        Integer ignitionMonitorsType = getSystemIntegerSensor(
-            CarDiagnosticSensorIndices.Obd2IntegerSensorIndex.IGNITION_MONITORS_SUPPORTED);
-        Integer ignitionMonitorsBitmask = getSystemIntegerSensor(
-            CarDiagnosticSensorIndices.Obd2IntegerSensorIndex.IGNITION_SPECIFIC_MONITORS);
+        Integer ignitionMonitorsType =
+                getSystemIntegerSensor(
+                        CarDiagnosticSensorIndices.Obd2IntegerSensorIndex
+                                .IGNITION_MONITORS_SUPPORTED);
+        Integer ignitionMonitorsBitmask =
+                getSystemIntegerSensor(
+                        CarDiagnosticSensorIndices.Obd2IntegerSensorIndex
+                                .IGNITION_SPECIFIC_MONITORS);
         if (null == ignitionMonitorsType) return null;
         if (null == ignitionMonitorsBitmask) return null;
         switch (ignitionMonitorsType) {
-            case 0: return new IgnitionMonitors.SparkIgnitionMonitors(
-                    ignitionMonitorsBitmask);
-            case 1: return new IgnitionMonitors.CompressionIgnitionMonitors(
-                    ignitionMonitorsBitmask);
-            default: return null;
+            case 0:
+                return new IgnitionMonitors.SparkIgnitionMonitors(ignitionMonitorsBitmask);
+            case 1:
+                return new IgnitionMonitors.CompressionIgnitionMonitors(ignitionMonitorsBitmask);
+            default:
+                return null;
         }
     }
 
diff --git a/evs/app/EvsStateControl.cpp b/evs/app/EvsStateControl.cpp
index abed1e5..ec29e39 100644
--- a/evs/app/EvsStateControl.cpp
+++ b/evs/app/EvsStateControl.cpp
@@ -21,7 +21,7 @@
 #include <stdio.h>
 #include <string.h>
 
-#include <android/log.h>
+#include <log/log.h>
 
 
 // TODO:  Seems like it'd be nice if the Vehicle HAL provided such helpers (but how & where?)
diff --git a/obd2-lib/src/com/android/car/obd2/Obd2LiveFrameGenerator.java b/obd2-lib/src/com/android/car/obd2/Obd2LiveFrameGenerator.java
index 3fffd22..26f408f 100644
--- a/obd2-lib/src/com/android/car/obd2/Obd2LiveFrameGenerator.java
+++ b/obd2-lib/src/com/android/car/obd2/Obd2LiveFrameGenerator.java
@@ -27,7 +27,7 @@
 import java.util.Set;
 
 public class Obd2LiveFrameGenerator {
-    public static final int FRAME_TYPE_LIVE = 1;
+    public static final String FRAME_TYPE_LIVE = "live";
     public static final String TAG = Obd2LiveFrameGenerator.class.getSimpleName();
 
     private final Obd2Connection mConnection;
diff --git a/tests/EmbeddedKitchenSinkApp/res/drawable/ic_voice_assistant_mic.xml b/tests/EmbeddedKitchenSinkApp/res/drawable/ic_voice_assistant_mic.xml
new file mode 100644
index 0000000..0468870
--- /dev/null
+++ b/tests/EmbeddedKitchenSinkApp/res/drawable/ic_voice_assistant_mic.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ * Copyright (c) 2017, The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+*/
+-->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="24dp"
+ android:height="24dp"
+ android:viewportWidth="24"
+ android:viewportHeight="24">
+ <path
+  android:fillColor="#000000"
+  android:pathData="M12 14c1.66 0 2.99-1.34 2.99-3L15 5c0-1.66-1.34-3-3-3S9 3.34 9 5v6c0 1.66 1.34 3
+3 3zm5.3-3c0 3-2.54 5.1-5.3 5.1S6.7 14 6.7 11H5c0 3.41 2.72 6.23 6
+6.72V21h2v-3.28c3.28-.48 6-3.3 6-6.72h-1.7z" />
+ <path
+  android:pathData="M0 0h24v24H0z" />
+</vector>
diff --git a/tests/EmbeddedKitchenSinkApp/res/layout/kitchen_content.xml b/tests/EmbeddedKitchenSinkApp/res/layout/kitchen_content.xml
index 53a3042..14c3ef7 100644
--- a/tests/EmbeddedKitchenSinkApp/res/layout/kitchen_content.xml
+++ b/tests/EmbeddedKitchenSinkApp/res/layout/kitchen_content.xml
@@ -6,4 +6,10 @@
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:paddingStart="56dp"
-    android:paddingTop="@dimen/lens_header_height" />
\ No newline at end of file
+    android:paddingTop="@dimen/lens_header_height">
+    <ImageView
+        android:id="@+id/voice_button"
+        android:layout_gravity="center"
+        android:src="@drawable/ic_voice_assistant_mic"
+        style="@style/OverviewButton"/>
+</FrameLayout>
\ No newline at end of file
diff --git a/tests/EmbeddedKitchenSinkApp/res/values/colors.xml b/tests/EmbeddedKitchenSinkApp/res/values/colors.xml
new file mode 100644
index 0000000..9a1ed89
--- /dev/null
+++ b/tests/EmbeddedKitchenSinkApp/res/values/colors.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ * Copyright (c) 2017, The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+*/
+-->
+<resources>
+    <color name="car_button_tint">#fffafafa</color>
+</resources>
\ No newline at end of file
diff --git a/tests/EmbeddedKitchenSinkApp/res/values/dimens.xml b/tests/EmbeddedKitchenSinkApp/res/values/dimens.xml
index e5b2ece..5057d18 100644
--- a/tests/EmbeddedKitchenSinkApp/res/values/dimens.xml
+++ b/tests/EmbeddedKitchenSinkApp/res/values/dimens.xml
@@ -23,4 +23,5 @@
     <dimen name="rvcTvHeight">80dp</dimen>
     <dimen name="radioInfoMargin">5dp</dimen>
     <dimen name="sensorInfoMargin">5dp</dimen>
+    <dimen name="overview_icon_size">72dp</dimen>
 </resources>
diff --git a/tests/EmbeddedKitchenSinkApp/res/values/strings.xml b/tests/EmbeddedKitchenSinkApp/res/values/strings.xml
index a3f45a0..e9214d9 100644
--- a/tests/EmbeddedKitchenSinkApp/res/values/strings.xml
+++ b/tests/EmbeddedKitchenSinkApp/res/values/strings.xml
@@ -237,4 +237,7 @@
     <string name="usb_pref_delete_yes">Yes</string>
     <string name="usb_pref_delete_cancel">Cancel</string>
     <string name="usb_resolving_handlers">Getting supported handlers</string>
+
+    <!-- Action to start assistant activity -->
+    <string name="assistant_activity_action" translatable="false">"com.google.android.demandspace.START"</string>
 </resources>
diff --git a/tests/EmbeddedKitchenSinkApp/res/values/styles.xml b/tests/EmbeddedKitchenSinkApp/res/values/styles.xml
new file mode 100644
index 0000000..75cdb36
--- /dev/null
+++ b/tests/EmbeddedKitchenSinkApp/res/values/styles.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ * Copyright (c) 2017, The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+*/
+-->
+<resources>
+    <style name="OverviewButton">
+        <item name="android:layout_width">@dimen/overview_icon_size</item>
+        <item name="android:layout_height">@dimen/overview_icon_size</item>
+        <item name="android:padding">6dp</item>
+        <item name="android:background">?android:attr/selectableItemBackgroundBorderless</item>
+        <item name="android:tint">@color/car_button_tint</item>
+        <item name="android:scaleType">fitCenter</item>
+        <item name="android:clickable">true</item>
+    </style>
+</resources>
\ No newline at end of file
diff --git a/tests/EmbeddedKitchenSinkApp/src/com/google/android/car/kitchensink/KitchenSinkActivity.java b/tests/EmbeddedKitchenSinkApp/src/com/google/android/car/kitchensink/KitchenSinkActivity.java
index 98bfc21..11e5841 100644
--- a/tests/EmbeddedKitchenSinkApp/src/com/google/android/car/kitchensink/KitchenSinkActivity.java
+++ b/tests/EmbeddedKitchenSinkApp/src/com/google/android/car/kitchensink/KitchenSinkActivity.java
@@ -27,11 +27,14 @@
 import android.support.car.hardware.CarSensorManager;
 import android.support.v4.app.Fragment;
 import android.util.Log;
+import android.view.HapticFeedbackConstants;
+import android.view.View;
+import android.widget.ImageView;
+import android.widget.Toast;
 
 import com.android.car.app.CarDrawerActivity;
 import com.android.car.app.CarDrawerAdapter;
 import com.android.car.app.DrawerItemViewHolder;
-
 import com.google.android.car.kitchensink.audio.AudioTestFragment;
 import com.google.android.car.kitchensink.bluetooth.BluetoothHeadsetFragment;
 import com.google.android.car.kitchensink.bluetooth.MapMceTestFragment;
@@ -84,6 +87,7 @@
     private OrientationTestFragment mOrientationFragment;
     private MapMceTestFragment mMapMceTestFragment;
     private BluetoothHeadsetFragment mBluetoothHeadsetFragement;
+    private ImageView mMic;
 
     private final CarSensorManager.OnSensorChangedListener mListener = (manager, event) -> {
         switch (event.sensorType) {
@@ -102,6 +106,22 @@
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setMainContent(R.layout.kitchen_content);
+        mMic = (ImageView) findViewById(R.id.voice_button);
+        mMic.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                v.performHapticFeedback(HapticFeedbackConstants.VIRTUAL_KEY);
+                Intent intent = new Intent();
+                intent.setAction(
+                        KitchenSinkActivity.this.getString(R.string.assistant_activity_action));
+                if (intent.resolveActivity(getPackageManager()) != null) {
+                    startActivity(intent);
+                } else {
+                    Toast.makeText(KitchenSinkActivity.this,
+                            "Assistant app is not available.", Toast.LENGTH_SHORT).show();
+                }
+            }
+        });
 
         // Connection to Car Service does not work for non-automotive yet.
         if (getPackageManager().hasSystemFeature(PackageManager.FEATURE_AUTOMOTIVE)) {
diff --git a/tests/carservice_test/src/com/android/car/test/CarDiagnosticManagerTest.java b/tests/carservice_test/src/com/android/car/test/CarDiagnosticManagerTest.java
index 6562542..583c36a 100644
--- a/tests/carservice_test/src/com/android/car/test/CarDiagnosticManagerTest.java
+++ b/tests/carservice_test/src/com/android/car/test/CarDiagnosticManagerTest.java
@@ -33,11 +33,16 @@
 import android.hardware.automotive.vehicle.V2_1.VehicleProperty;
 import android.os.SystemClock;
 import android.test.suitebuilder.annotation.MediumTest;
+import android.util.JsonReader;
+import android.util.JsonWriter;
 import android.util.Log;
 import com.android.car.internal.FeatureConfiguration;
 import com.android.car.vehiclehal.DiagnosticEventBuilder;
+import com.android.car.vehiclehal.DiagnosticJson;
 import com.android.car.vehiclehal.VehiclePropValueBuilder;
 import com.android.car.vehiclehal.test.MockedVehicleHal.VehicleHalPropertyHandler;
+import java.io.StringReader;
+import java.io.StringWriter;
 import java.util.Arrays;
 import java.util.HashMap;
 import java.util.HashSet;
@@ -532,6 +537,59 @@
         assertEquals(FuelType.BIFUEL_RUNNING_LPG, liveFrame.getFuelType().intValue());
     }
 
+    public void testDiagnosticJson() throws Exception {
+        if (!isFeatureEnabled()) {
+            Log.i(TAG, "skipping testDiagnosticJson as diagnostics API is not enabled");
+            return;
+        }
+
+        Listener listener = new Listener();
+        mCarDiagnosticManager.registerListener(
+                listener,
+                CarDiagnosticManager.FRAME_TYPE_FLAG_LIVE,
+                android.car.hardware.CarSensorManager.SENSOR_RATE_NORMAL);
+
+        mLiveFrameEventBuilder.addIntSensor(Obd2IntegerSensorIndex.ENGINE_OIL_TEMPERATURE, 74);
+        mLiveFrameEventBuilder.addFloatSensor(Obd2FloatSensorIndex.OXYGEN_SENSOR1_VOLTAGE, 0.125f);
+
+        long timestamp = SystemClock.elapsedRealtimeNanos();
+        getMockedVehicleHal().injectEvent(mLiveFrameEventBuilder.build(timestamp));
+
+        assertTrue(listener.waitForEvent(timestamp));
+
+        CarDiagnosticEvent liveFrame = listener.getLastEvent();
+        assertNotNull(liveFrame);
+
+        assertEquals(
+                74,
+                liveFrame
+                        .getSystemIntegerSensor(Obd2IntegerSensorIndex.ENGINE_OIL_TEMPERATURE)
+                        .intValue());
+        assertEquals(
+                0.125f,
+                liveFrame.getSystemFloatSensor(Obd2FloatSensorIndex.OXYGEN_SENSOR1_VOLTAGE));
+
+        StringWriter stringWriter = new StringWriter();
+        JsonWriter jsonWriter = new JsonWriter(stringWriter);
+
+        liveFrame.writeToJson(jsonWriter);
+        jsonWriter.flush();
+
+        StringReader stringReader = new StringReader(stringWriter.toString());
+        JsonReader jsonReader = new JsonReader(stringReader);
+        DiagnosticJson diagnosticJson = DiagnosticJson.build(jsonReader);
+
+        assertEquals(
+                74,
+                diagnosticJson
+                        .intValues
+                        .get(Obd2IntegerSensorIndex.ENGINE_OIL_TEMPERATURE)
+                        .intValue());
+        assertEquals(
+                0.125f,
+                diagnosticJson.floatValues.get(Obd2FloatSensorIndex.OXYGEN_SENSOR1_VOLTAGE));
+    }
+
     public void testMultipleListeners() throws Exception {
         if (!isFeatureEnabled()) {
             Log.i(TAG, "skipping testMultipleListeners as diagnostics API is not enabled");
diff --git a/tools/bootanalyze/Android.mk b/tools/bootanalyze/Android.mk
new file mode 100644
index 0000000..5df0dd8
--- /dev/null
+++ b/tools/bootanalyze/Android.mk
@@ -0,0 +1,20 @@
+# Copyright (C) 2017 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+#
+
+LOCAL_PATH := $(call my-dir)
+
+# Include the sub-makefiles
+include $(call all-makefiles-under,$(LOCAL_PATH))
diff --git a/tools/emulator/VehicleHalProto_pb2.py b/tools/emulator/VehicleHalProto_pb2.py
index aaad547..f972126 100644
--- a/tools/emulator/VehicleHalProto_pb2.py
+++ b/tools/emulator/VehicleHalProto_pb2.py
@@ -1,20 +1,28 @@
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: VehicleHalProto.proto
 
+import sys
+_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
 from google.protobuf.internal import enum_type_wrapper
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
 from google.protobuf import reflection as _reflection
+from google.protobuf import symbol_database as _symbol_database
 from google.protobuf import descriptor_pb2
 # @@protoc_insertion_point(imports)
 
+_sym_db = _symbol_database.Default()
+
 
 
 
 DESCRIPTOR = _descriptor.FileDescriptor(
   name='VehicleHalProto.proto',
   package='emulator',
-  serialized_pb='\n\x15VehicleHalProto.proto\x12\x08\x65mulator\"\xba\x01\n\x11VehicleAreaConfig\x12\x0f\n\x07\x61rea_id\x18\x01 \x02(\x05\x12\x17\n\x0fmin_int32_value\x18\x02 \x01(\x11\x12\x17\n\x0fmax_int32_value\x18\x03 \x01(\x11\x12\x17\n\x0fmin_int64_value\x18\x04 \x01(\x12\x12\x17\n\x0fmax_int64_value\x18\x05 \x01(\x12\x12\x17\n\x0fmin_float_value\x18\x06 \x01(\x02\x12\x17\n\x0fmax_float_value\x18\x07 \x01(\x02\"\x9b\x02\n\x11VehiclePropConfig\x12\x0c\n\x04prop\x18\x01 \x02(\x05\x12\x0e\n\x06\x61\x63\x63\x65ss\x18\x02 \x01(\x05\x12\x13\n\x0b\x63hange_mode\x18\x03 \x01(\x05\x12\x12\n\nvalue_type\x18\x04 \x01(\x05\x12\x17\n\x0fsupported_areas\x18\x05 \x01(\x05\x12\x31\n\x0c\x61rea_configs\x18\x06 \x03(\x0b\x32\x1b.emulator.VehicleAreaConfig\x12\x14\n\x0c\x63onfig_flags\x18\x07 \x01(\x05\x12\x14\n\x0c\x63onfig_array\x18\x08 \x03(\x05\x12\x15\n\rconfig_string\x18\t \x01(\t\x12\x17\n\x0fmin_sample_rate\x18\n \x01(\x02\x12\x17\n\x0fmax_sample_rate\x18\x0b \x01(\x02\"\xc5\x01\n\x10VehiclePropValue\x12\x0c\n\x04prop\x18\x01 \x02(\x05\x12\x12\n\nvalue_type\x18\x02 \x01(\x05\x12\x11\n\ttimestamp\x18\x03 \x01(\x03\x12\x0f\n\x07\x61rea_id\x18\x04 \x01(\x05\x12\x14\n\x0cint32_values\x18\x05 \x03(\x11\x12\x14\n\x0cint64_values\x18\x06 \x03(\x12\x12\x14\n\x0c\x66loat_values\x18\x07 \x03(\x02\x12\x14\n\x0cstring_value\x18\x08 \x01(\t\x12\x13\n\x0b\x62ytes_value\x18\t \x01(\x0c\"/\n\x0eVehiclePropGet\x12\x0c\n\x04prop\x18\x01 \x02(\x05\x12\x0f\n\x07\x61rea_id\x18\x02 \x01(\x05\"\xd8\x01\n\x0f\x45mulatorMessage\x12#\n\x08msg_type\x18\x01 \x02(\x0e\x32\x11.emulator.MsgType\x12 \n\x06status\x18\x02 \x01(\x0e\x32\x10.emulator.Status\x12&\n\x04prop\x18\x03 \x03(\x0b\x32\x18.emulator.VehiclePropGet\x12+\n\x06\x63onfig\x18\x04 \x03(\x0b\x32\x1b.emulator.VehiclePropConfig\x12)\n\x05value\x18\x05 \x03(\x0b\x32\x1a.emulator.VehiclePropValue*\x8a\x02\n\x07MsgType\x12\x12\n\x0eGET_CONFIG_CMD\x10\x00\x12\x13\n\x0fGET_CONFIG_RESP\x10\x01\x12\x16\n\x12GET_CONFIG_ALL_CMD\x10\x02\x12\x17\n\x13GET_CONFIG_ALL_RESP\x10\x03\x12\x14\n\x10GET_PROPERTY_CMD\x10\x04\x12\x15\n\x11GET_PROPERTY_RESP\x10\x05\x12\x18\n\x14GET_PROPERTY_ALL_CMD\x10\x06\x12\x19\n\x15GET_PROPERTY_ALL_RESP\x10\x07\x12\x14\n\x10SET_PROPERTY_CMD\x10\x08\x12\x15\n\x11SET_PROPERTY_RESP\x10\t\x12\x16\n\x12SET_PROPERTY_ASYNC\x10\n*\xfb\x01\n\x06Status\x12\r\n\tRESULT_OK\x10\x00\x12\x11\n\rERROR_UNKNOWN\x10\x01\x12\x1b\n\x17\x45RROR_UNIMPLEMENTED_CMD\x10\x02\x12\x1a\n\x16\x45RROR_INVALID_PROPERTY\x10\x03\x12\x19\n\x15\x45RROR_INVALID_AREA_ID\x10\x04\x12 \n\x1c\x45RROR_PROPERTY_UNINITIALIZED\x10\x05\x12\x1d\n\x19\x45RROR_WRITE_ONLY_PROPERTY\x10\x06\x12\x1d\n\x19\x45RROR_MEMORY_ALLOC_FAILED\x10\x07\x12\x1b\n\x17\x45RROR_INVALID_OPERATION\x10\x08\x42\x02H\x03')
+  syntax='proto2',
+  serialized_pb=_b('\n\x15VehicleHalProto.proto\x12\x08\x65mulator\"\xba\x01\n\x11VehicleAreaConfig\x12\x0f\n\x07\x61rea_id\x18\x01 \x02(\x05\x12\x17\n\x0fmin_int32_value\x18\x02 \x01(\x11\x12\x17\n\x0fmax_int32_value\x18\x03 \x01(\x11\x12\x17\n\x0fmin_int64_value\x18\x04 \x01(\x12\x12\x17\n\x0fmax_int64_value\x18\x05 \x01(\x12\x12\x17\n\x0fmin_float_value\x18\x06 \x01(\x02\x12\x17\n\x0fmax_float_value\x18\x07 \x01(\x02\"\x9b\x02\n\x11VehiclePropConfig\x12\x0c\n\x04prop\x18\x01 \x02(\x05\x12\x0e\n\x06\x61\x63\x63\x65ss\x18\x02 \x01(\x05\x12\x13\n\x0b\x63hange_mode\x18\x03 \x01(\x05\x12\x12\n\nvalue_type\x18\x04 \x01(\x05\x12\x17\n\x0fsupported_areas\x18\x05 \x01(\x05\x12\x31\n\x0c\x61rea_configs\x18\x06 \x03(\x0b\x32\x1b.emulator.VehicleAreaConfig\x12\x14\n\x0c\x63onfig_flags\x18\x07 \x01(\x05\x12\x14\n\x0c\x63onfig_array\x18\x08 \x03(\x05\x12\x15\n\rconfig_string\x18\t \x01(\t\x12\x17\n\x0fmin_sample_rate\x18\n \x01(\x02\x12\x17\n\x0fmax_sample_rate\x18\x0b \x01(\x02\"\xc5\x01\n\x10VehiclePropValue\x12\x0c\n\x04prop\x18\x01 \x02(\x05\x12\x12\n\nvalue_type\x18\x02 \x01(\x05\x12\x11\n\ttimestamp\x18\x03 \x01(\x03\x12\x0f\n\x07\x61rea_id\x18\x04 \x01(\x05\x12\x14\n\x0cint32_values\x18\x05 \x03(\x11\x12\x14\n\x0cint64_values\x18\x06 \x03(\x12\x12\x14\n\x0c\x66loat_values\x18\x07 \x03(\x02\x12\x14\n\x0cstring_value\x18\x08 \x01(\t\x12\x13\n\x0b\x62ytes_value\x18\t \x01(\x0c\"/\n\x0eVehiclePropGet\x12\x0c\n\x04prop\x18\x01 \x02(\x05\x12\x0f\n\x07\x61rea_id\x18\x02 \x01(\x05\"\xd8\x01\n\x0f\x45mulatorMessage\x12#\n\x08msg_type\x18\x01 \x02(\x0e\x32\x11.emulator.MsgType\x12 \n\x06status\x18\x02 \x01(\x0e\x32\x10.emulator.Status\x12&\n\x04prop\x18\x03 \x03(\x0b\x32\x18.emulator.VehiclePropGet\x12+\n\x06\x63onfig\x18\x04 \x03(\x0b\x32\x1b.emulator.VehiclePropConfig\x12)\n\x05value\x18\x05 \x03(\x0b\x32\x1a.emulator.VehiclePropValue*\x8a\x02\n\x07MsgType\x12\x12\n\x0eGET_CONFIG_CMD\x10\x00\x12\x13\n\x0fGET_CONFIG_RESP\x10\x01\x12\x16\n\x12GET_CONFIG_ALL_CMD\x10\x02\x12\x17\n\x13GET_CONFIG_ALL_RESP\x10\x03\x12\x14\n\x10GET_PROPERTY_CMD\x10\x04\x12\x15\n\x11GET_PROPERTY_RESP\x10\x05\x12\x18\n\x14GET_PROPERTY_ALL_CMD\x10\x06\x12\x19\n\x15GET_PROPERTY_ALL_RESP\x10\x07\x12\x14\n\x10SET_PROPERTY_CMD\x10\x08\x12\x15\n\x11SET_PROPERTY_RESP\x10\t\x12\x16\n\x12SET_PROPERTY_ASYNC\x10\n*\xfb\x01\n\x06Status\x12\r\n\tRESULT_OK\x10\x00\x12\x11\n\rERROR_UNKNOWN\x10\x01\x12\x1b\n\x17\x45RROR_UNIMPLEMENTED_CMD\x10\x02\x12\x1a\n\x16\x45RROR_INVALID_PROPERTY\x10\x03\x12\x19\n\x15\x45RROR_INVALID_AREA_ID\x10\x04\x12 \n\x1c\x45RROR_PROPERTY_UNINITIALIZED\x10\x05\x12\x1d\n\x19\x45RROR_WRITE_ONLY_PROPERTY\x10\x06\x12\x1d\n\x19\x45RROR_MEMORY_ALLOC_FAILED\x10\x07\x12\x1b\n\x17\x45RROR_INVALID_OPERATION\x10\x08\x42\x02H\x03')
+)
+_sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
 _MSGTYPE = _descriptor.EnumDescriptor(
   name='MsgType',
@@ -72,6 +80,7 @@
   serialized_start=979,
   serialized_end=1245,
 )
+_sym_db.RegisterEnumDescriptor(_MSGTYPE)
 
 MsgType = enum_type_wrapper.EnumTypeWrapper(_MSGTYPE)
 _STATUS = _descriptor.EnumDescriptor(
@@ -122,6 +131,7 @@
   serialized_start=1248,
   serialized_end=1499,
 )
+_sym_db.RegisterEnumDescriptor(_STATUS)
 
 Status = enum_type_wrapper.EnumTypeWrapper(_STATUS)
 GET_CONFIG_CMD = 0
@@ -192,14 +202,14 @@
     _descriptor.FieldDescriptor(
       name='min_float_value', full_name='emulator.VehicleAreaConfig.min_float_value', index=5,
       number=6, type=2, cpp_type=6, label=1,
-      has_default_value=False, default_value=0,
+      has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
       options=None),
     _descriptor.FieldDescriptor(
       name='max_float_value', full_name='emulator.VehicleAreaConfig.max_float_value', index=6,
       number=7, type=2, cpp_type=6, label=1,
-      has_default_value=False, default_value=0,
+      has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
       options=None),
@@ -211,7 +221,10 @@
   ],
   options=None,
   is_extendable=False,
+  syntax='proto2',
   extension_ranges=[],
+  oneofs=[
+  ],
   serialized_start=36,
   serialized_end=222,
 )
@@ -283,21 +296,21 @@
     _descriptor.FieldDescriptor(
       name='config_string', full_name='emulator.VehiclePropConfig.config_string', index=8,
       number=9, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=unicode("", "utf-8"),
+      has_default_value=False, default_value=_b("").decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
       options=None),
     _descriptor.FieldDescriptor(
       name='min_sample_rate', full_name='emulator.VehiclePropConfig.min_sample_rate', index=9,
       number=10, type=2, cpp_type=6, label=1,
-      has_default_value=False, default_value=0,
+      has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
       options=None),
     _descriptor.FieldDescriptor(
       name='max_sample_rate', full_name='emulator.VehiclePropConfig.max_sample_rate', index=10,
       number=11, type=2, cpp_type=6, label=1,
-      has_default_value=False, default_value=0,
+      has_default_value=False, default_value=float(0),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
       options=None),
@@ -309,7 +322,10 @@
   ],
   options=None,
   is_extendable=False,
+  syntax='proto2',
   extension_ranges=[],
+  oneofs=[
+  ],
   serialized_start=225,
   serialized_end=508,
 )
@@ -374,14 +390,14 @@
     _descriptor.FieldDescriptor(
       name='string_value', full_name='emulator.VehiclePropValue.string_value', index=7,
       number=8, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=unicode("", "utf-8"),
+      has_default_value=False, default_value=_b("").decode('utf-8'),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
       options=None),
     _descriptor.FieldDescriptor(
       name='bytes_value', full_name='emulator.VehiclePropValue.bytes_value', index=8,
       number=9, type=12, cpp_type=9, label=1,
-      has_default_value=False, default_value="",
+      has_default_value=False, default_value=_b(""),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
       options=None),
@@ -393,7 +409,10 @@
   ],
   options=None,
   is_extendable=False,
+  syntax='proto2',
   extension_ranges=[],
+  oneofs=[
+  ],
   serialized_start=511,
   serialized_end=708,
 )
@@ -428,7 +447,10 @@
   ],
   options=None,
   is_extendable=False,
+  syntax='proto2',
   extension_ranges=[],
+  oneofs=[
+  ],
   serialized_start=710,
   serialized_end=757,
 )
@@ -484,7 +506,10 @@
   ],
   options=None,
   is_extendable=False,
+  syntax='proto2',
   extension_ranges=[],
+  oneofs=[
+  ],
   serialized_start=760,
   serialized_end=976,
 )
@@ -500,38 +525,45 @@
 DESCRIPTOR.message_types_by_name['VehiclePropValue'] = _VEHICLEPROPVALUE
 DESCRIPTOR.message_types_by_name['VehiclePropGet'] = _VEHICLEPROPGET
 DESCRIPTOR.message_types_by_name['EmulatorMessage'] = _EMULATORMESSAGE
+DESCRIPTOR.enum_types_by_name['MsgType'] = _MSGTYPE
+DESCRIPTOR.enum_types_by_name['Status'] = _STATUS
 
-class VehicleAreaConfig(_message.Message):
-  __metaclass__ = _reflection.GeneratedProtocolMessageType
-  DESCRIPTOR = _VEHICLEAREACONFIG
-
+VehicleAreaConfig = _reflection.GeneratedProtocolMessageType('VehicleAreaConfig', (_message.Message,), dict(
+  DESCRIPTOR = _VEHICLEAREACONFIG,
+  __module__ = 'VehicleHalProto_pb2'
   # @@protoc_insertion_point(class_scope:emulator.VehicleAreaConfig)
+  ))
+_sym_db.RegisterMessage(VehicleAreaConfig)
 
-class VehiclePropConfig(_message.Message):
-  __metaclass__ = _reflection.GeneratedProtocolMessageType
-  DESCRIPTOR = _VEHICLEPROPCONFIG
-
+VehiclePropConfig = _reflection.GeneratedProtocolMessageType('VehiclePropConfig', (_message.Message,), dict(
+  DESCRIPTOR = _VEHICLEPROPCONFIG,
+  __module__ = 'VehicleHalProto_pb2'
   # @@protoc_insertion_point(class_scope:emulator.VehiclePropConfig)
+  ))
+_sym_db.RegisterMessage(VehiclePropConfig)
 
-class VehiclePropValue(_message.Message):
-  __metaclass__ = _reflection.GeneratedProtocolMessageType
-  DESCRIPTOR = _VEHICLEPROPVALUE
-
+VehiclePropValue = _reflection.GeneratedProtocolMessageType('VehiclePropValue', (_message.Message,), dict(
+  DESCRIPTOR = _VEHICLEPROPVALUE,
+  __module__ = 'VehicleHalProto_pb2'
   # @@protoc_insertion_point(class_scope:emulator.VehiclePropValue)
+  ))
+_sym_db.RegisterMessage(VehiclePropValue)
 
-class VehiclePropGet(_message.Message):
-  __metaclass__ = _reflection.GeneratedProtocolMessageType
-  DESCRIPTOR = _VEHICLEPROPGET
-
+VehiclePropGet = _reflection.GeneratedProtocolMessageType('VehiclePropGet', (_message.Message,), dict(
+  DESCRIPTOR = _VEHICLEPROPGET,
+  __module__ = 'VehicleHalProto_pb2'
   # @@protoc_insertion_point(class_scope:emulator.VehiclePropGet)
+  ))
+_sym_db.RegisterMessage(VehiclePropGet)
 
-class EmulatorMessage(_message.Message):
-  __metaclass__ = _reflection.GeneratedProtocolMessageType
-  DESCRIPTOR = _EMULATORMESSAGE
-
+EmulatorMessage = _reflection.GeneratedProtocolMessageType('EmulatorMessage', (_message.Message,), dict(
+  DESCRIPTOR = _EMULATORMESSAGE,
+  __module__ = 'VehicleHalProto_pb2'
   # @@protoc_insertion_point(class_scope:emulator.EmulatorMessage)
+  ))
+_sym_db.RegisterMessage(EmulatorMessage)
 
 
 DESCRIPTOR.has_options = True
-DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), 'H\003')
+DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('H\003'))
 # @@protoc_insertion_point(module_scope)
diff --git a/tools/emulator/diagjson.example b/tools/emulator/diagjson.example
index ea512a7..02f0e68 100644
--- a/tools/emulator/diagjson.example
+++ b/tools/emulator/diagjson.example
@@ -1 +1 @@
-[{"type":1,"timestamp":72375175786629,"intValues":[{"id":3,"value":2},{"id":5,"value":64},{"id":12,"value":3080},{"id":13,"value":0},{"id":31,"value":18}],"floatValues":[{"id":4,"value":42.22222},{"id":70,"value":21.960785},{"id":6,"value":214.0625},{"id":47,"value":31.764706}]},{"type":1,"timestamp":72377177593287,"intValues":[{"id":3,"value":2},{"id":5,"value":64},{"id":12,"value":3084},{"id":13,"value":0},{"id":31,"value":20}],"floatValues":[{"id":4,"value":42.22222},{"id":70,"value":21.960785},{"id":6,"value":216.40625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72379176544788,"intValues":[{"id":3,"value":2},{"id":5,"value":64},{"id":12,"value":3078},{"id":13,"value":0},{"id":31,"value":22}],"floatValues":[{"id":4,"value":41.77778},{"id":70,"value":21.960785},{"id":6,"value":214.0625},{"id":47,"value":31.764706}]},{"type":1,"timestamp":72381179373780,"intValues":[{"id":3,"value":2},{"id":5,"value":64},{"id":12,"value":2873},{"id":13,"value":0},{"id":31,"value":24}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":21.960785},{"id":6,"value":207.03125},{"id":47,"value":31.764706}]},{"type":1,"timestamp":72383179413967,"intValues":[{"id":3,"value":2},{"id":5,"value":65},{"id":12,"value":3078},{"id":13,"value":0},{"id":31,"value":26}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":21.960785},{"id":6,"value":214.0625},{"id":47,"value":31.764706}]},{"type":1,"timestamp":72385179454210,"intValues":[{"id":3,"value":2},{"id":5,"value":65},{"id":12,"value":2869},{"id":13,"value":0},{"id":31,"value":28}],"floatValues":[{"id":4,"value":41.333332},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":31.764706}]},{"type":1,"timestamp":72387176856679,"intValues":[{"id":3,"value":2},{"id":5,"value":66},{"id":12,"value":3090},{"id":13,"value":0},{"id":31,"value":30}],"floatValues":[{"id":4,"value":52.0},{"id":70,"value":21.960785},{"id":6,"value":230.46875},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72389180204642,"intValues":[{"id":3,"value":2},{"id":5,"value":66},{"id":12,"value":4110},{"id":13,"value":1},{"id":31,"value":32}],"floatValues":[{"id":4,"value":68.44444},{"id":70,"value":21.960785},{"id":6,"value":214.0625},{"id":47,"value":34.11765}]},{"type":1,"timestamp":72391178997905,"intValues":[{"id":3,"value":2},{"id":5,"value":66},{"id":12,"value":3633},{"id":13,"value":5},{"id":31,"value":34}],"floatValues":[{"id":4,"value":51.11111},{"id":70,"value":21.960785},{"id":6,"value":223.4375},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72393179466175,"intValues":[{"id":3,"value":2},{"id":5,"value":67},{"id":12,"value":3135},{"id":13,"value":4},{"id":31,"value":36}],"floatValues":[{"id":4,"value":50.666668},{"id":70,"value":21.960785},{"id":6,"value":230.46875},{"id":47,"value":32.941177}]},{"type":1,"timestamp":72395177442840,"intValues":[{"id":3,"value":2},{"id":5,"value":67},{"id":12,"value":3125},{"id":13,"value":0},{"id":31,"value":38}],"floatValues":[{"id":4,"value":48.444443},{"id":70,"value":21.960785},{"id":6,"value":228.125},{"id":47,"value":27.450981}]},{"type":1,"timestamp":72397179771686,"intValues":[{"id":3,"value":2},{"id":5,"value":68},{"id":12,"value":2857},{"id":13,"value":0},{"id":31,"value":40}],"floatValues":[{"id":4,"value":55.555557},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":26.27451}]},{"type":1,"timestamp":72399177882285,"intValues":[{"id":3,"value":2},{"id":5,"value":68},{"id":12,"value":4899},{"id":13,"value":6},{"id":31,"value":42}],"floatValues":[{"id":4,"value":82.666664},{"id":70,"value":21.960785},{"id":6,"value":202.34375},{"id":47,"value":17.254902}]},{"type":1,"timestamp":72401178271883,"intValues":[{"id":3,"value":2},{"id":5,"value":68},{"id":12,"value":8483},{"id":13,"value":17},{"id":31,"value":44}],"floatValues":[{"id":4,"value":45.333332},{"id":70,"value":21.960785},{"id":6,"value":237.5},{"id":47,"value":32.941177}]},{"type":1,"timestamp":72403179389890,"intValues":[{"id":3,"value":2},{"id":5,"value":69},{"id":12,"value":5158},{"id":13,"value":18},{"id":31,"value":46}],"floatValues":[{"id":4,"value":28.0},{"id":70,"value":21.960785},{"id":6,"value":188.28125},{"id":47,"value":34.11765}]},{"type":1,"timestamp":72405178339774,"intValues":[{"id":3,"value":2},{"id":5,"value":69},{"id":12,"value":6184},{"id":13,"value":20},{"id":31,"value":48}],"floatValues":[{"id":4,"value":36.0},{"id":70,"value":21.960785},{"id":6,"value":216.40625},{"id":47,"value":34.11765}]},{"type":1,"timestamp":72407178346527,"intValues":[{"id":3,"value":2},{"id":5,"value":70},{"id":12,"value":6207},{"id":13,"value":21},{"id":31,"value":50}],"floatValues":[{"id":4,"value":31.11111},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72409177960280,"intValues":[{"id":3,"value":2},{"id":5,"value":70},{"id":12,"value":5409},{"id":13,"value":19},{"id":31,"value":52}],"floatValues":[{"id":4,"value":28.88889},{"id":70,"value":21.960785},{"id":6,"value":192.96875},{"id":47,"value":36.47059}]},{"type":1,"timestamp":72411176941375,"intValues":[{"id":3,"value":2},{"id":5,"value":71},{"id":12,"value":5653},{"id":13,"value":18},{"id":31,"value":54}],"floatValues":[{"id":4,"value":92.888885},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":24.705883}]},{"type":1,"timestamp":72413177348486,"intValues":[{"id":3,"value":2},{"id":5,"value":71},{"id":12,"value":7988},{"id":13,"value":26},{"id":31,"value":56}],"floatValues":[{"id":4,"value":31.555555},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":32.941177}]},{"type":1,"timestamp":72415176509329,"intValues":[{"id":3,"value":2},{"id":5,"value":72},{"id":12,"value":4134},{"id":13,"value":21},{"id":31,"value":58}],"floatValues":[{"id":4,"value":33.333332},{"id":70,"value":21.960785},{"id":6,"value":176.5625},{"id":47,"value":32.941177}]},{"type":1,"timestamp":72417178548720,"intValues":[{"id":3,"value":2},{"id":5,"value":72},{"id":12,"value":3109},{"id":13,"value":14},{"id":31,"value":60}],"floatValues":[{"id":4,"value":49.333332},{"id":70,"value":21.960785},{"id":6,"value":192.96875},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72419178377617,"intValues":[{"id":3,"value":2},{"id":5,"value":73},{"id":12,"value":3635},{"id":13,"value":16},{"id":31,"value":62}],"floatValues":[{"id":4,"value":44.88889},{"id":70,"value":21.960785},{"id":6,"value":223.4375},{"id":47,"value":28.62745}]},{"type":1,"timestamp":72421177803572,"intValues":[{"id":3,"value":2},{"id":5,"value":73},{"id":12,"value":3619},{"id":13,"value":11},{"id":31,"value":64}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":228.125},{"id":47,"value":34.11765}]},{"type":1,"timestamp":72423176710009,"intValues":[{"id":3,"value":2},{"id":5,"value":74},{"id":12,"value":4637},{"id":13,"value":10},{"id":31,"value":66}],"floatValues":[{"id":4,"value":36.0},{"id":70,"value":21.960785},{"id":6,"value":216.40625},{"id":47,"value":35.686275}]},{"type":1,"timestamp":72425176560994,"intValues":[{"id":3,"value":2},{"id":5,"value":74},{"id":12,"value":7199},{"id":13,"value":15},{"id":31,"value":68}],"floatValues":[{"id":4,"value":36.0},{"id":70,"value":21.960785},{"id":6,"value":228.125},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72427175927486,"intValues":[{"id":3,"value":2},{"id":5,"value":75},{"id":12,"value":3894},{"id":13,"value":11},{"id":31,"value":70}],"floatValues":[{"id":4,"value":47.555557},{"id":70,"value":21.960785},{"id":6,"value":211.71875},{"id":47,"value":24.705883}]},{"type":1,"timestamp":72429178132978,"intValues":[{"id":3,"value":2},{"id":5,"value":75},{"id":12,"value":3108},{"id":13,"value":1},{"id":31,"value":72}],"floatValues":[{"id":4,"value":48.0},{"id":70,"value":21.960785},{"id":6,"value":218.75},{"id":47,"value":27.450981}]},{"type":1,"timestamp":72431177381669,"intValues":[{"id":3,"value":2},{"id":5,"value":75},{"id":12,"value":3087},{"id":13,"value":0},{"id":31,"value":74}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":216.40625},{"id":47,"value":27.450981}]},{"type":1,"timestamp":72433178039132,"intValues":[{"id":3,"value":2},{"id":5,"value":76},{"id":12,"value":3091},{"id":13,"value":0},{"id":31,"value":76}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":214.0625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72435178023153,"intValues":[{"id":3,"value":2},{"id":5,"value":76},{"id":12,"value":3090},{"id":13,"value":0},{"id":31,"value":78}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":216.40625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72437177860993,"intValues":[{"id":3,"value":2},{"id":5,"value":77},{"id":12,"value":3083},{"id":13,"value":0},{"id":31,"value":80}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":214.0625},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72439177936939,"intValues":[{"id":3,"value":2},{"id":5,"value":77},{"id":12,"value":3080},{"id":13,"value":0},{"id":31,"value":82}],"floatValues":[{"id":4,"value":45.333332},{"id":70,"value":21.960785},{"id":6,"value":211.71875},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72441178444751,"intValues":[{"id":3,"value":2},{"id":5,"value":77},{"id":12,"value":3078},{"id":13,"value":0},{"id":31,"value":84}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":216.40625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72443176930748,"intValues":[{"id":3,"value":2},{"id":5,"value":78},{"id":12,"value":3077},{"id":13,"value":0},{"id":31,"value":86}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":211.71875},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72445178255526,"intValues":[{"id":3,"value":2},{"id":5,"value":78},{"id":12,"value":3078},{"id":13,"value":0},{"id":31,"value":88}],"floatValues":[{"id":4,"value":46.22222},{"id":70,"value":21.960785},{"id":6,"value":211.71875},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72447175742708,"intValues":[{"id":3,"value":2},{"id":5,"value":78},{"id":12,"value":3082},{"id":13,"value":0},{"id":31,"value":90}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":214.0625},{"id":47,"value":31.37255}]},{"type":1,"timestamp":72449178336056,"intValues":[{"id":3,"value":2},{"id":5,"value":79},{"id":12,"value":3076},{"id":13,"value":0},{"id":31,"value":92}],"floatValues":[{"id":4,"value":45.333332},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72451176649982,"intValues":[{"id":3,"value":2},{"id":5,"value":79},{"id":12,"value":3080},{"id":13,"value":0},{"id":31,"value":94}],"floatValues":[{"id":4,"value":46.22222},{"id":70,"value":21.960785},{"id":6,"value":214.0625},{"id":47,"value":30.588236}]},{"type":1,"timestamp":72453177388904,"intValues":[{"id":3,"value":2},{"id":5,"value":79},{"id":12,"value":2879},{"id":13,"value":0},{"id":31,"value":96}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72455178049520,"intValues":[{"id":3,"value":2},{"id":5,"value":79},{"id":12,"value":3076},{"id":13,"value":0},{"id":31,"value":98}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":204.6875},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72457178189969,"intValues":[{"id":3,"value":2},{"id":5,"value":80},{"id":12,"value":3082},{"id":13,"value":0},{"id":31,"value":100}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":214.0625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72459177706926,"intValues":[{"id":3,"value":2},{"id":5,"value":80},{"id":12,"value":2877},{"id":13,"value":0},{"id":31,"value":102}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":204.6875},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72461176388948,"intValues":[{"id":3,"value":2},{"id":5,"value":80},{"id":12,"value":3076},{"id":13,"value":0},{"id":31,"value":104}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":207.03125},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72463178194570,"intValues":[{"id":3,"value":2},{"id":5,"value":81},{"id":12,"value":3077},{"id":13,"value":0},{"id":31,"value":106}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":211.71875},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72465178204165,"intValues":[{"id":3,"value":2},{"id":5,"value":81},{"id":12,"value":3072},{"id":13,"value":0},{"id":31,"value":108}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":204.6875},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72467178005994,"intValues":[{"id":3,"value":2},{"id":5,"value":81},{"id":12,"value":3082},{"id":13,"value":0},{"id":31,"value":110}],"floatValues":[{"id":4,"value":46.22222},{"id":70,"value":21.960785},{"id":6,"value":207.03125},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72469178443939,"intValues":[{"id":3,"value":2},{"id":5,"value":82},{"id":12,"value":2879},{"id":13,"value":0},{"id":31,"value":112}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":202.34375},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72471176771874,"intValues":[{"id":3,"value":2},{"id":5,"value":82},{"id":12,"value":3080},{"id":13,"value":0},{"id":31,"value":114}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":202.34375},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72473179942657,"intValues":[{"id":3,"value":2},{"id":5,"value":82},{"id":12,"value":3077},{"id":13,"value":0},{"id":31,"value":116}],"floatValues":[{"id":4,"value":46.22222},{"id":70,"value":21.960785},{"id":6,"value":204.6875},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72475177449291,"intValues":[{"id":3,"value":2},{"id":5,"value":82},{"id":12,"value":2877},{"id":13,"value":0},{"id":31,"value":118}],"floatValues":[{"id":4,"value":46.22222},{"id":70,"value":21.960785},{"id":6,"value":202.34375},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72477179209812,"intValues":[{"id":3,"value":2},{"id":5,"value":83},{"id":12,"value":3079},{"id":13,"value":0},{"id":31,"value":120}],"floatValues":[{"id":4,"value":46.22222},{"id":70,"value":21.960785},{"id":6,"value":204.6875},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72479178421641,"intValues":[{"id":3,"value":2},{"id":5,"value":83},{"id":12,"value":3073},{"id":13,"value":0},{"id":31,"value":122}],"floatValues":[{"id":4,"value":46.22222},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":31.764706}]},{"type":1,"timestamp":72481179539631,"intValues":[{"id":3,"value":2},{"id":5,"value":83},{"id":12,"value":3078},{"id":13,"value":0},{"id":31,"value":124}],"floatValues":[{"id":4,"value":46.666668},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72483178480110,"intValues":[{"id":3,"value":2},{"id":5,"value":83},{"id":12,"value":3082},{"id":13,"value":0},{"id":31,"value":126}],"floatValues":[{"id":4,"value":46.22222},{"id":70,"value":21.960785},{"id":6,"value":204.6875},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72485180096548,"intValues":[{"id":3,"value":2},{"id":5,"value":84},{"id":12,"value":3073},{"id":13,"value":0},{"id":31,"value":128}],"floatValues":[{"id":4,"value":46.22222},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72487178424406,"intValues":[{"id":3,"value":2},{"id":5,"value":84},{"id":12,"value":3075},{"id":13,"value":0},{"id":31,"value":130}],"floatValues":[{"id":4,"value":47.11111},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72489180054622,"intValues":[{"id":3,"value":2},{"id":5,"value":84},{"id":12,"value":3081},{"id":13,"value":0},{"id":31,"value":132}],"floatValues":[{"id":4,"value":46.22222},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72491179557027,"intValues":[{"id":3,"value":2},{"id":5,"value":85},{"id":12,"value":2878},{"id":13,"value":0},{"id":31,"value":134}],"floatValues":[{"id":4,"value":46.22222},{"id":70,"value":21.960785},{"id":6,"value":195.3125},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72493177727317,"intValues":[{"id":3,"value":2},{"id":5,"value":85},{"id":12,"value":3082},{"id":13,"value":0},{"id":31,"value":136}],"floatValues":[{"id":4,"value":46.666668},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":31.764706}]},{"type":1,"timestamp":72495177794472,"intValues":[{"id":3,"value":2},{"id":5,"value":85},{"id":12,"value":2879},{"id":13,"value":0},{"id":31,"value":138}],"floatValues":[{"id":4,"value":46.666668},{"id":70,"value":21.960785},{"id":6,"value":195.3125},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72497177210035,"intValues":[{"id":3,"value":2},{"id":5,"value":85},{"id":12,"value":3074},{"id":13,"value":0},{"id":31,"value":140}],"floatValues":[{"id":4,"value":47.11111},{"id":70,"value":21.960785},{"id":6,"value":195.3125},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72499180474808,"intValues":[{"id":3,"value":2},{"id":5,"value":86},{"id":12,"value":3085},{"id":13,"value":0},{"id":31,"value":142}],"floatValues":[{"id":4,"value":46.666668},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72501178578880,"intValues":[{"id":3,"value":2},{"id":5,"value":86},{"id":12,"value":3072},{"id":13,"value":0},{"id":31,"value":144}],"floatValues":[{"id":4,"value":47.11111},{"id":70,"value":21.960785},{"id":6,"value":188.28125},{"id":47,"value":27.450981}]},{"type":1,"timestamp":72503179731578,"intValues":[{"id":3,"value":2},{"id":5,"value":86},{"id":12,"value":7177},{"id":13,"value":11},{"id":31,"value":146}],"floatValues":[{"id":4,"value":49.77778},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":22.745098}]},{"type":1,"timestamp":72505177292755,"intValues":[{"id":3,"value":2},{"id":5,"value":86},{"id":12,"value":4126},{"id":13,"value":15},{"id":31,"value":148}],"floatValues":[{"id":4,"value":41.333332},{"id":70,"value":21.960785},{"id":6,"value":192.96875},{"id":47,"value":22.745098}]},{"type":1,"timestamp":72507176773477,"intValues":[{"id":3,"value":2},{"id":5,"value":86},{"id":12,"value":6438},{"id":13,"value":20},{"id":31,"value":150}],"floatValues":[{"id":4,"value":77.333336},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":22.745098}]},{"type":1,"timestamp":72509177195082,"intValues":[{"id":3,"value":2},{"id":5,"value":86},{"id":12,"value":8746},{"id":13,"value":30},{"id":31,"value":152}],"floatValues":[{"id":4,"value":112.888885},{"id":70,"value":21.960785},{"id":6,"value":202.34375},{"id":47,"value":8.627451}]},{"type":1,"timestamp":72511175989969,"intValues":[{"id":3,"value":2},{"id":5,"value":86},{"id":12,"value":14082},{"id":13,"value":44},{"id":31,"value":154}],"floatValues":[{"id":4,"value":103.111115},{"id":70,"value":21.960785},{"id":6,"value":211.71875},{"id":47,"value":20.784313}]},{"type":1,"timestamp":72513179658544,"intValues":[{"id":3,"value":2},{"id":5,"value":86},{"id":12,"value":15639},{"id":13,"value":54},{"id":31,"value":156}],"floatValues":[{"id":4,"value":73.333336},{"id":70,"value":21.960785},{"id":6,"value":214.0625},{"id":47,"value":26.27451}]},{"type":1,"timestamp":72515179414407,"intValues":[{"id":3,"value":2},{"id":5,"value":85},{"id":12,"value":10268},{"id":13,"value":59},{"id":31,"value":158}],"floatValues":[{"id":4,"value":63.555557},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72517176297337,"intValues":[{"id":3,"value":2},{"id":5,"value":85},{"id":12,"value":5928},{"id":13,"value":60},{"id":31,"value":160}],"floatValues":[{"id":4,"value":24.0},{"id":70,"value":21.960785},{"id":6,"value":146.09375},{"id":47,"value":34.901962}]},{"type":1,"timestamp":72519176826185,"intValues":[{"id":3,"value":2},{"id":5,"value":85},{"id":12,"value":6418},{"id":13,"value":58},{"id":31,"value":162}],"floatValues":[{"id":4,"value":59.555557},{"id":70,"value":21.960785},{"id":6,"value":188.28125},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72521179790904,"intValues":[{"id":3,"value":2},{"id":5,"value":85},{"id":12,"value":6179},{"id":13,"value":59},{"id":31,"value":164}],"floatValues":[{"id":4,"value":34.22222},{"id":70,"value":21.960785},{"id":6,"value":214.0625},{"id":47,"value":34.11765}]},{"type":1,"timestamp":72523180627127,"intValues":[{"id":3,"value":2},{"id":5,"value":85},{"id":12,"value":7483},{"id":13,"value":59},{"id":31,"value":166}],"floatValues":[{"id":4,"value":99.55556},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":28.62745}]},{"type":1,"timestamp":72525177789023,"intValues":[{"id":3,"value":2},{"id":5,"value":86},{"id":12,"value":6660},{"id":13,"value":63},{"id":31,"value":168}],"floatValues":[{"id":4,"value":96.888885},{"id":70,"value":21.960785},{"id":6,"value":195.3125},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72527175560417,"intValues":[{"id":3,"value":2},{"id":5,"value":86},{"id":12,"value":8460},{"id":13,"value":66},{"id":31,"value":170}],"floatValues":[{"id":4,"value":54.666668},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72529179499137,"intValues":[{"id":3,"value":2},{"id":5,"value":86},{"id":12,"value":5431},{"id":13,"value":56},{"id":31,"value":172}],"floatValues":[{"id":4,"value":20.0},{"id":70,"value":21.960785},{"id":6,"value":167.1875},{"id":47,"value":31.764706}]},{"type":1,"timestamp":72531178292369,"intValues":[{"id":3,"value":4},{"id":5,"value":86},{"id":12,"value":4868},{"id":13,"value":48},{"id":31,"value":174}],"floatValues":[{"id":4,"value":15.111111},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72533178253439,"intValues":[{"id":3,"value":4},{"id":5,"value":87},{"id":12,"value":7195},{"id":13,"value":47},{"id":31,"value":176}],"floatValues":[{"id":4,"value":83.55556},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72535179199711,"intValues":[{"id":3,"value":2},{"id":5,"value":87},{"id":12,"value":6423},{"id":13,"value":48},{"id":31,"value":178}],"floatValues":[{"id":4,"value":104.0},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":26.27451}]},{"type":1,"timestamp":72537177243028,"intValues":[{"id":3,"value":2},{"id":5,"value":87},{"id":12,"value":11582},{"id":13,"value":55},{"id":31,"value":180}],"floatValues":[{"id":4,"value":112.888885},{"id":70,"value":21.960785},{"id":6,"value":216.40625},{"id":47,"value":22.745098}]},{"type":1,"timestamp":72539180216273,"intValues":[{"id":3,"value":2},{"id":5,"value":87},{"id":12,"value":13336},{"id":13,"value":67},{"id":31,"value":182}],"floatValues":[{"id":4,"value":113.333336},{"id":70,"value":21.960785},{"id":6,"value":216.40625},{"id":47,"value":26.27451}]},{"type":1,"timestamp":72541176144311,"intValues":[{"id":3,"value":2},{"id":5,"value":87},{"id":12,"value":12304},{"id":13,"value":73},{"id":31,"value":184}],"floatValues":[{"id":4,"value":24.0},{"id":70,"value":21.960785},{"id":6,"value":174.21875},{"id":47,"value":24.705883}]},{"type":1,"timestamp":72543178195294,"intValues":[{"id":3,"value":2},{"id":5,"value":87},{"id":12,"value":6717},{"id":13,"value":68},{"id":31,"value":186}],"floatValues":[{"id":4,"value":20.88889},{"id":70,"value":21.960785},{"id":6,"value":181.25},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72545176834995,"intValues":[{"id":3,"value":4},{"id":5,"value":86},{"id":12,"value":4654},{"id":13,"value":47},{"id":31,"value":188}],"floatValues":[{"id":4,"value":20.444445},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72547177907339,"intValues":[{"id":3,"value":2},{"id":5,"value":86},{"id":12,"value":3330},{"id":13,"value":30},{"id":31,"value":190}],"floatValues":[{"id":4,"value":29.333334},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":34.901962}]},{"type":1,"timestamp":72549179735735,"intValues":[{"id":3,"value":2},{"id":5,"value":87},{"id":12,"value":3097},{"id":13,"value":13},{"id":31,"value":192}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":34.901962}]},{"type":1,"timestamp":72551181754526,"intValues":[{"id":3,"value":2},{"id":5,"value":87},{"id":12,"value":3088},{"id":13,"value":2},{"id":31,"value":194}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":214.0625},{"id":47,"value":34.11765}]},{"type":1,"timestamp":72553177986304,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":3075},{"id":13,"value":0},{"id":31,"value":196}],"floatValues":[{"id":4,"value":42.666668},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":26.27451}]},{"type":1,"timestamp":72555176967736,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":3072},{"id":13,"value":0},{"id":31,"value":198}],"floatValues":[{"id":4,"value":41.77778},{"id":70,"value":21.960785},{"id":6,"value":207.03125},{"id":47,"value":26.27451}]},{"type":1,"timestamp":72557177160577,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":3074},{"id":13,"value":0},{"id":31,"value":200}],"floatValues":[{"id":4,"value":41.77778},{"id":70,"value":21.960785},{"id":6,"value":214.0625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72559179745844,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":2873},{"id":13,"value":0},{"id":31,"value":202}],"floatValues":[{"id":4,"value":42.22222},{"id":70,"value":21.960785},{"id":6,"value":204.6875},{"id":47,"value":33.333332}]},{"type":1,"timestamp":72561176203928,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":2878},{"id":13,"value":0},{"id":31,"value":204}],"floatValues":[{"id":4,"value":42.666668},{"id":70,"value":21.960785},{"id":6,"value":207.03125},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72563177799351,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":3072},{"id":13,"value":0},{"id":31,"value":206}],"floatValues":[{"id":4,"value":42.666668},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72565177953894,"intValues":[{"id":3,"value":2},{"id":5,"value":90},{"id":12,"value":2870},{"id":13,"value":0},{"id":31,"value":208}],"floatValues":[{"id":4,"value":42.666668},{"id":70,"value":21.960785},{"id":6,"value":202.34375},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72567176653777,"intValues":[{"id":3,"value":2},{"id":5,"value":90},{"id":12,"value":3075},{"id":13,"value":0},{"id":31,"value":210}],"floatValues":[{"id":4,"value":42.666668},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72569178043717,"intValues":[{"id":3,"value":2},{"id":5,"value":90},{"id":12,"value":2872},{"id":13,"value":0},{"id":31,"value":212}],"floatValues":[{"id":4,"value":43.11111},{"id":70,"value":21.960785},{"id":6,"value":204.6875},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72571178251056,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":3082},{"id":13,"value":0},{"id":31,"value":214}],"floatValues":[{"id":4,"value":43.11111},{"id":70,"value":21.960785},{"id":6,"value":202.34375},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72573176628436,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":3072},{"id":13,"value":0},{"id":31,"value":216}],"floatValues":[{"id":4,"value":43.11111},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72575177840420,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":2879},{"id":13,"value":0},{"id":31,"value":218}],"floatValues":[{"id":4,"value":43.11111},{"id":70,"value":21.960785},{"id":6,"value":204.6875},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72577176563646,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":3079},{"id":13,"value":0},{"id":31,"value":220}],"floatValues":[{"id":4,"value":43.555557},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72579179164504,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":2876},{"id":13,"value":0},{"id":31,"value":222}],"floatValues":[{"id":4,"value":43.11111},{"id":70,"value":21.960785},{"id":6,"value":202.34375},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72581177838286,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":3074},{"id":13,"value":0},{"id":31,"value":224}],"floatValues":[{"id":4,"value":43.555557},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72583178358480,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":3078},{"id":13,"value":0},{"id":31,"value":226}],"floatValues":[{"id":4,"value":43.555557},{"id":70,"value":21.960785},{"id":6,"value":207.03125},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72585177901670,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3074},{"id":13,"value":0},{"id":31,"value":228}],"floatValues":[{"id":4,"value":43.11111},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72587177734144,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3076},{"id":13,"value":0},{"id":31,"value":230}],"floatValues":[{"id":4,"value":43.555557},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72589179333460,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3080},{"id":13,"value":0},{"id":31,"value":232}],"floatValues":[{"id":4,"value":43.555557},{"id":70,"value":21.960785},{"id":6,"value":207.03125},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72591178129065,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":2878},{"id":13,"value":0},{"id":31,"value":234}],"floatValues":[{"id":4,"value":43.555557},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72593177596819,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3082},{"id":13,"value":0},{"id":31,"value":236}],"floatValues":[{"id":4,"value":43.555557},{"id":70,"value":21.960785},{"id":6,"value":204.6875},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72595178384378,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3076},{"id":13,"value":0},{"id":31,"value":238}],"floatValues":[{"id":4,"value":44.444443},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72597178056865,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3075},{"id":13,"value":0},{"id":31,"value":240}],"floatValues":[{"id":4,"value":43.555557},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72599179833740,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":2872},{"id":13,"value":0},{"id":31,"value":243}],"floatValues":[{"id":4,"value":43.555557},{"id":70,"value":21.960785},{"id":6,"value":195.3125},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72601176651309,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3077},{"id":13,"value":0},{"id":31,"value":244}],"floatValues":[{"id":4,"value":44.444443},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72603177566065,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3083},{"id":13,"value":0},{"id":31,"value":246}],"floatValues":[{"id":4,"value":44.0},{"id":70,"value":21.960785},{"id":6,"value":202.34375},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72605178128004,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3080},{"id":13,"value":0},{"id":31,"value":248}],"floatValues":[{"id":4,"value":44.0},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72607179599532,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3077},{"id":13,"value":0},{"id":31,"value":250}],"floatValues":[{"id":4,"value":44.0},{"id":70,"value":21.960785},{"id":6,"value":195.3125},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72609179437284,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3081},{"id":13,"value":0},{"id":31,"value":252}],"floatValues":[{"id":4,"value":44.0},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72611179630474,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3080},{"id":13,"value":0},{"id":31,"value":254}],"floatValues":[{"id":4,"value":44.0},{"id":70,"value":21.960785},{"id":6,"value":192.96875},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72613179774544,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":2879},{"id":13,"value":0},{"id":31,"value":256}],"floatValues":[{"id":4,"value":44.0},{"id":70,"value":21.960785},{"id":6,"value":195.3125},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72615178404973,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3073},{"id":13,"value":0},{"id":31,"value":258}],"floatValues":[{"id":4,"value":44.444443},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72617179059428,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":2879},{"id":13,"value":0},{"id":31,"value":260}],"floatValues":[{"id":4,"value":44.444443},{"id":70,"value":21.960785},{"id":6,"value":188.28125},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72619180105086,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3076},{"id":13,"value":0},{"id":31,"value":262}],"floatValues":[{"id":4,"value":44.444443},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72621179098902,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3104},{"id":13,"value":1},{"id":31,"value":264}],"floatValues":[{"id":4,"value":59.555557},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72623179359108,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":8255},{"id":13,"value":15},{"id":31,"value":266}],"floatValues":[{"id":4,"value":100.888885},{"id":70,"value":21.960785},{"id":6,"value":204.6875},{"id":47,"value":9.411765}]},{"type":1,"timestamp":72625179856484,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":11276},{"id":13,"value":33},{"id":31,"value":268}],"floatValues":[{"id":4,"value":99.55556},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":15.686275}]},{"type":1,"timestamp":72627176310119,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":15618},{"id":13,"value":50},{"id":31,"value":270}],"floatValues":[{"id":4,"value":90.666664},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":26.27451}]},{"type":1,"timestamp":72629177201984,"intValues":[{"id":3,"value":2},{"id":5,"value":90},{"id":12,"value":13109},{"id":13,"value":63},{"id":31,"value":272}],"floatValues":[{"id":4,"value":111.55556},{"id":70,"value":21.960785},{"id":6,"value":216.40625},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72631177723851,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":14343},{"id":13,"value":74},{"id":31,"value":274}],"floatValues":[{"id":4,"value":111.55556},{"id":70,"value":21.960785},{"id":6,"value":211.71875},{"id":47,"value":17.647058}]},{"type":1,"timestamp":72633179257550,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":15921},{"id":13,"value":83},{"id":31,"value":276}],"floatValues":[{"id":4,"value":21.777779},{"id":70,"value":21.960785},{"id":6,"value":192.96875},{"id":47,"value":9.803922}]},{"type":1,"timestamp":72635179273140,"intValues":[{"id":3,"value":2},{"id":5,"value":87},{"id":12,"value":4400},{"id":13,"value":55},{"id":31,"value":278}],"floatValues":[{"id":4,"value":34.666668},{"id":70,"value":21.960785},{"id":6,"value":183.59375},{"id":47,"value":26.27451}]},{"type":1,"timestamp":72637179409130,"intValues":[{"id":3,"value":2},{"id":5,"value":87},{"id":12,"value":3117},{"id":13,"value":32},{"id":31,"value":280}],"floatValues":[{"id":4,"value":30.666666},{"id":70,"value":21.960785},{"id":6,"value":183.59375},{"id":47,"value":28.62745}]},{"type":1,"timestamp":72639179800268,"intValues":[{"id":3,"value":2},{"id":5,"value":87},{"id":12,"value":3108},{"id":13,"value":26},{"id":31,"value":282}],"floatValues":[{"id":4,"value":29.333334},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":28.62745}]},{"type":1,"timestamp":72641179405070,"intValues":[{"id":3,"value":2},{"id":5,"value":87},{"id":12,"value":3106},{"id":13,"value":21},{"id":31,"value":284}],"floatValues":[{"id":4,"value":32.88889},{"id":70,"value":21.960785},{"id":6,"value":195.3125},{"id":47,"value":34.11765}]},{"type":1,"timestamp":72643179866403,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":4115},{"id":13,"value":17},{"id":31,"value":286}],"floatValues":[{"id":4,"value":111.111115},{"id":70,"value":21.960785},{"id":6,"value":207.03125},{"id":47,"value":17.254902}]},{"type":1,"timestamp":72645178430456,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":8991},{"id":13,"value":30},{"id":31,"value":288}],"floatValues":[{"id":4,"value":112.44444},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":26.27451}]},{"type":1,"timestamp":72647178451017,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":9513},{"id":13,"value":43},{"id":31,"value":290}],"floatValues":[{"id":4,"value":95.55556},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":28.62745}]},{"type":1,"timestamp":72649179500927,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":9518},{"id":13,"value":50},{"id":31,"value":292}],"floatValues":[{"id":4,"value":27.555555},{"id":70,"value":21.960785},{"id":6,"value":195.3125},{"id":47,"value":34.509804}]},{"type":1,"timestamp":72651179611409,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":6418},{"id":13,"value":49},{"id":31,"value":294}],"floatValues":[{"id":4,"value":19.555555},{"id":70,"value":21.960785},{"id":6,"value":178.90625},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72653178456810,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":5173},{"id":13,"value":40},{"id":31,"value":296}],"floatValues":[{"id":4,"value":20.88889},{"id":70,"value":21.960785},{"id":6,"value":188.28125},{"id":47,"value":34.11765}]},{"type":1,"timestamp":72655180014824,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":4112},{"id":13,"value":32},{"id":31,"value":298}],"floatValues":[{"id":4,"value":28.444445},{"id":70,"value":21.960785},{"id":6,"value":185.9375},{"id":47,"value":32.941177}]},{"type":1,"timestamp":72657180944053,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":8720},{"id":13,"value":37},{"id":31,"value":300}],"floatValues":[{"id":4,"value":113.333336},{"id":70,"value":21.960785},{"id":6,"value":202.34375},{"id":47,"value":28.62745}]},{"type":1,"timestamp":72659179332880,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":16412},{"id":13,"value":52},{"id":31,"value":302}],"floatValues":[{"id":4,"value":109.333336},{"id":70,"value":21.960785},{"id":6,"value":216.40625},{"id":47,"value":12.54902}]},{"type":1,"timestamp":72661177765487,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":13828},{"id":13,"value":61},{"id":31,"value":304}],"floatValues":[{"id":4,"value":22.666666},{"id":70,"value":21.960785},{"id":6,"value":178.90625},{"id":47,"value":32.941177}]},{"type":1,"timestamp":72663177689968,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":6447},{"id":13,"value":61},{"id":31,"value":306}],"floatValues":[{"id":4,"value":28.88889},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":34.11765}]},{"type":1,"timestamp":72665177450571,"intValues":[{"id":3,"value":2},{"id":5,"value":87},{"id":12,"value":5657},{"id":13,"value":56},{"id":31,"value":308}],"floatValues":[{"id":4,"value":16.88889},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72667179692696,"intValues":[{"id":3,"value":4},{"id":5,"value":87},{"id":12,"value":4873},{"id":13,"value":48},{"id":31,"value":310}],"floatValues":[{"id":4,"value":19.11111},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":35.686275}]},{"type":1,"timestamp":72669179293955,"intValues":[{"id":3,"value":4},{"id":5,"value":87},{"id":12,"value":3613},{"id":13,"value":34},{"id":31,"value":312}],"floatValues":[{"id":4,"value":27.11111},{"id":70,"value":21.960785},{"id":6,"value":185.9375},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72671177593842,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":3131},{"id":13,"value":19},{"id":31,"value":314}],"floatValues":[{"id":4,"value":30.222221},{"id":70,"value":21.960785},{"id":6,"value":202.34375},{"id":47,"value":36.862747}]},{"type":1,"timestamp":72673177057067,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":3844},{"id":13,"value":8},{"id":31,"value":316}],"floatValues":[{"id":4,"value":36.444443},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":34.901962}]},{"type":1,"timestamp":72675179630131,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":3080},{"id":13,"value":0},{"id":31,"value":318}],"floatValues":[{"id":4,"value":43.555557},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":28.62745}]},{"type":1,"timestamp":72677179714055,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":2866},{"id":13,"value":1},{"id":31,"value":320}],"floatValues":[{"id":4,"value":42.666668},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":32.941177}]},{"type":1,"timestamp":72679179288433,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":7457},{"id":13,"value":13},{"id":31,"value":322}],"floatValues":[{"id":4,"value":76.0},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":10.588236}]},{"type":1,"timestamp":72681176480810,"intValues":[{"id":3,"value":2},{"id":5,"value":90},{"id":12,"value":9272},{"id":13,"value":27},{"id":31,"value":324}],"floatValues":[{"id":4,"value":105.77778},{"id":70,"value":21.960785},{"id":6,"value":204.6875},{"id":47,"value":15.686275}]},{"type":1,"timestamp":72683179662780,"intValues":[{"id":3,"value":2},{"id":5,"value":90},{"id":12,"value":13585},{"id":13,"value":43},{"id":31,"value":326}],"floatValues":[{"id":4,"value":87.55556},{"id":70,"value":21.960785},{"id":6,"value":211.71875},{"id":47,"value":28.62745}]},{"type":1,"timestamp":72685177751997,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":11024},{"id":13,"value":53},{"id":31,"value":328}],"floatValues":[{"id":4,"value":42.666668},{"id":70,"value":21.960785},{"id":6,"value":190.625},{"id":47,"value":20.784313}]},{"type":1,"timestamp":72687177061206,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":6927},{"id":13,"value":51},{"id":31,"value":330}],"floatValues":[{"id":4,"value":18.222221},{"id":70,"value":21.960785},{"id":6,"value":155.46875},{"id":47,"value":28.62745}]},{"type":1,"timestamp":72689176965248,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":5148},{"id":13,"value":38},{"id":31,"value":332}],"floatValues":[{"id":4,"value":21.333334},{"id":70,"value":21.960785},{"id":6,"value":157.8125},{"id":47,"value":34.11765}]},{"type":1,"timestamp":72691180692310,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":3594},{"id":13,"value":29},{"id":31,"value":334}],"floatValues":[{"id":4,"value":26.222221},{"id":70,"value":21.960785},{"id":6,"value":139.0625},{"id":47,"value":26.27451}]},{"type":1,"timestamp":72693178299558,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":3350},{"id":13,"value":25},{"id":31,"value":336}],"floatValues":[{"id":4,"value":48.88889},{"id":70,"value":21.960785},{"id":6,"value":185.9375},{"id":47,"value":18.82353}]},{"type":1,"timestamp":72695178266771,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":8456},{"id":13,"value":34},{"id":31,"value":338}],"floatValues":[{"id":4,"value":79.55556},{"id":70,"value":21.960785},{"id":6,"value":202.34375},{"id":47,"value":26.27451}]},{"type":1,"timestamp":72697178378315,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":6163},{"id":13,"value":40},{"id":31,"value":340}],"floatValues":[{"id":4,"value":30.666666},{"id":70,"value":21.960785},{"id":6,"value":185.9375},{"id":47,"value":36.47059}]},{"type":1,"timestamp":72699179440945,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":4886},{"id":13,"value":32},{"id":31,"value":342}],"floatValues":[{"id":4,"value":24.0},{"id":70,"value":21.960785},{"id":6,"value":188.28125},{"id":47,"value":30.588236}]},{"type":1,"timestamp":72701179783621,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":5130},{"id":13,"value":29},{"id":31,"value":344}],"floatValues":[{"id":4,"value":54.22222},{"id":70,"value":21.960785},{"id":6,"value":192.96875},{"id":47,"value":28.62745}]},{"type":1,"timestamp":72703178384562,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":9525},{"id":13,"value":38},{"id":31,"value":346}],"floatValues":[{"id":4,"value":112.888885},{"id":70,"value":21.960785},{"id":6,"value":202.34375},{"id":47,"value":26.27451}]},{"type":1,"timestamp":72705179707825,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":10513},{"id":13,"value":49},{"id":31,"value":348}],"floatValues":[{"id":4,"value":99.55556},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72707177436366,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":8248},{"id":13,"value":54},{"id":31,"value":350}],"floatValues":[{"id":4,"value":76.888885},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":32.941177}]},{"type":1,"timestamp":72709176949975,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":8484},{"id":13,"value":59},{"id":31,"value":352}],"floatValues":[{"id":4,"value":59.11111},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72711179509943,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":5945},{"id":13,"value":61},{"id":31,"value":354}],"floatValues":[{"id":4,"value":74.22222},{"id":70,"value":22.352942},{"id":6,"value":211.71875},{"id":47,"value":32.941177}]},{"type":1,"timestamp":72713179908608,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":6197},{"id":13,"value":61},{"id":31,"value":356}],"floatValues":[{"id":4,"value":23.11111},{"id":70,"value":22.352942},{"id":6,"value":178.90625},{"id":47,"value":34.901962}]},{"type":1,"timestamp":72715178040463,"intValues":[{"id":3,"value":4},{"id":5,"value":89},{"id":12,"value":5904},{"id":13,"value":59},{"id":31,"value":358}],"floatValues":[{"id":4,"value":20.88889},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":34.901962}]},{"type":1,"timestamp":72717179826935,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":6154},{"id":13,"value":60},{"id":31,"value":360}],"floatValues":[{"id":4,"value":35.11111},{"id":70,"value":22.352942},{"id":6,"value":207.03125},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72719178168768,"intValues":[{"id":3,"value":2},{"id":5,"value":90},{"id":12,"value":5636},{"id":13,"value":59},{"id":31,"value":362}],"floatValues":[{"id":4,"value":16.88889},{"id":70,"value":22.352942},{"id":6,"value":181.25},{"id":47,"value":28.62745}]},{"type":1,"timestamp":72721179101986,"intValues":[{"id":3,"value":4},{"id":5,"value":90},{"id":12,"value":5411},{"id":13,"value":54},{"id":31,"value":364}],"floatValues":[{"id":4,"value":54.666668},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":24.705883}]},{"type":1,"timestamp":72723180021513,"intValues":[{"id":3,"value":2},{"id":5,"value":90},{"id":12,"value":5688},{"id":13,"value":55},{"id":31,"value":366}],"floatValues":[{"id":4,"value":24.444445},{"id":70,"value":22.352942},{"id":6,"value":195.3125},{"id":47,"value":32.941177}]},{"type":1,"timestamp":72725179738209,"intValues":[{"id":3,"value":2},{"id":5,"value":90},{"id":12,"value":5903},{"id":13,"value":55},{"id":31,"value":368}],"floatValues":[{"id":4,"value":48.88889},{"id":70,"value":22.352942},{"id":6,"value":211.71875},{"id":47,"value":26.27451}]},{"type":1,"timestamp":72727179292538,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":5162},{"id":13,"value":51},{"id":31,"value":370}],"floatValues":[{"id":4,"value":20.88889},{"id":70,"value":22.352942},{"id":6,"value":204.6875},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72729178027625,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":4124},{"id":13,"value":44},{"id":31,"value":372}],"floatValues":[{"id":4,"value":24.0},{"id":70,"value":22.352942},{"id":6,"value":188.28125},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72731178148147,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":3132},{"id":13,"value":37},{"id":31,"value":374}],"floatValues":[{"id":4,"value":23.555555},{"id":70,"value":22.352942},{"id":6,"value":181.25},{"id":47,"value":34.901962}]},{"type":1,"timestamp":72733176368495,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":3128},{"id":13,"value":24},{"id":31,"value":376}],"floatValues":[{"id":4,"value":28.0},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":34.901962}]},{"type":1,"timestamp":72735179502626,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":3089},{"id":13,"value":15},{"id":31,"value":378}],"floatValues":[{"id":4,"value":38.666668},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":39.607845}]},{"type":1,"timestamp":72737179297296,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":2869},{"id":13,"value":0},{"id":31,"value":380}],"floatValues":[{"id":4,"value":42.666668},{"id":70,"value":22.352942},{"id":6,"value":209.375},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72739177718891,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":2877},{"id":13,"value":0},{"id":31,"value":382}],"floatValues":[{"id":4,"value":39.555557},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":26.27451}]},{"type":1,"timestamp":72741177981830,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":2871},{"id":13,"value":0},{"id":31,"value":384}],"floatValues":[{"id":4,"value":39.11111},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":28.62745}]},{"type":1,"timestamp":72743176174851,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":2872},{"id":13,"value":0},{"id":31,"value":387}],"floatValues":[{"id":4,"value":39.11111},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72745329912826,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":2870},{"id":13,"value":0},{"id":31,"value":389}],"floatValues":[{"id":4,"value":39.11111},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72747355080893,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3073},{"id":13,"value":0},{"id":31,"value":391}],"floatValues":[{"id":4,"value":39.555557},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72749176618991,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3077},{"id":13,"value":0},{"id":31,"value":392}],"floatValues":[{"id":4,"value":39.555557},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72751176696798,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":2867},{"id":13,"value":0},{"id":31,"value":394}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72753176964078,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":3072},{"id":13,"value":0},{"id":31,"value":396}],"floatValues":[{"id":4,"value":40.0},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72755178349568,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":3078},{"id":13,"value":0},{"id":31,"value":398}],"floatValues":[{"id":4,"value":40.0},{"id":70,"value":22.352942},{"id":6,"value":204.6875},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72757178508591,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":2875},{"id":13,"value":0},{"id":31,"value":400}],"floatValues":[{"id":4,"value":40.0},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":30.588236}]},{"type":1,"timestamp":72759176500609,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":3074},{"id":13,"value":0},{"id":31,"value":402}],"floatValues":[{"id":4,"value":40.0},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72761176683571,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":2878},{"id":13,"value":0},{"id":31,"value":404}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":195.3125},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72763178363414,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":3081},{"id":13,"value":0},{"id":31,"value":406}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72765177437003,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":3085},{"id":13,"value":0},{"id":31,"value":408}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72767178204902,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":2877},{"id":13,"value":0},{"id":31,"value":410}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":195.3125},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72769177266732,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":3079},{"id":13,"value":0},{"id":31,"value":412}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72771176734323,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":3082},{"id":13,"value":0},{"id":31,"value":414}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72773176997295,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3079},{"id":13,"value":0},{"id":31,"value":416}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72775176636900,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3077},{"id":13,"value":0},{"id":31,"value":418}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":204.6875},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72777176589987,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3076},{"id":13,"value":0},{"id":31,"value":420}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":192.96875},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72779178389314,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3075},{"id":13,"value":0},{"id":31,"value":422}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":195.3125},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72781178485901,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3080},{"id":13,"value":0},{"id":31,"value":424}],"floatValues":[{"id":4,"value":41.333332},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72783177805524,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3080},{"id":13,"value":0},{"id":31,"value":426}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":195.3125},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72785177696746,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3081},{"id":13,"value":0},{"id":31,"value":428}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72787177943035,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3085},{"id":13,"value":0},{"id":31,"value":430}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":192.96875},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72789177892167,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3900},{"id":13,"value":2},{"id":31,"value":432}],"floatValues":[{"id":4,"value":84.0},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":11.372549}]},{"type":1,"timestamp":72791176960551,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":6937},{"id":13,"value":15},{"id":31,"value":434}],"floatValues":[{"id":4,"value":73.333336},{"id":70,"value":22.352942},{"id":6,"value":207.03125},{"id":47,"value":17.254902}]},{"type":1,"timestamp":72793179080142,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":10253},{"id":13,"value":30},{"id":31,"value":436}],"floatValues":[{"id":4,"value":100.888885},{"id":70,"value":22.352942},{"id":6,"value":211.71875},{"id":47,"value":10.588236}]},{"type":1,"timestamp":72795177144042,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":14653},{"id":13,"value":46},{"id":31,"value":438}],"floatValues":[{"id":4,"value":104.0},{"id":70,"value":22.352942},{"id":6,"value":214.0625},{"id":47,"value":22.745098}]},{"type":1,"timestamp":72797177311878,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":17934},{"id":13,"value":59},{"id":31,"value":440}],"floatValues":[{"id":4,"value":55.555557},{"id":70,"value":22.352942},{"id":6,"value":209.375},{"id":47,"value":24.705883}]},{"type":1,"timestamp":72799176281873,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":8757},{"id":13,"value":62},{"id":31,"value":442}],"floatValues":[{"id":4,"value":28.444445},{"id":70,"value":22.352942},{"id":6,"value":190.625},{"id":47,"value":22.745098}]},{"type":1,"timestamp":72801179010275,"intValues":[{"id":3,"value":2},{"id":5,"value":90},{"id":12,"value":5642},{"id":13,"value":58},{"id":31,"value":444}],"floatValues":[{"id":4,"value":17.777779},{"id":70,"value":22.352942},{"id":6,"value":188.28125},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72803176720724,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":3630},{"id":13,"value":38},{"id":31,"value":446}],"floatValues":[{"id":4,"value":25.333334},{"id":70,"value":22.352942},{"id":6,"value":171.875},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72805176371184,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":3130},{"id":13,"value":27},{"id":31,"value":448}],"floatValues":[{"id":4,"value":25.777779},{"id":70,"value":22.352942},{"id":6,"value":178.90625},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72807176264873,"intValues":[{"id":3,"value":2},{"id":5,"value":90},{"id":12,"value":3091},{"id":13,"value":13},{"id":31,"value":450}],"floatValues":[{"id":4,"value":40.0},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":32.941177}]},{"type":1,"timestamp":72809177130217,"intValues":[{"id":3,"value":2},{"id":5,"value":90},{"id":12,"value":3340},{"id":13,"value":4},{"id":31,"value":452}],"floatValues":[{"id":4,"value":43.11111},{"id":70,"value":22.352942},{"id":6,"value":207.03125},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72811178240749,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":2874},{"id":13,"value":0},{"id":31,"value":454}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":30.19608}]},{"type":1,"timestamp":72813176674429,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":2877},{"id":13,"value":0},{"id":31,"value":456}],"floatValues":[{"id":4,"value":39.555557},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":27.450981}]},{"type":1,"timestamp":72815177036139,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3074},{"id":13,"value":0},{"id":31,"value":458}],"floatValues":[{"id":4,"value":39.11111},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72817178504749,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":2866},{"id":13,"value":0},{"id":31,"value":460}],"floatValues":[{"id":4,"value":39.555557},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72819175954203,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3072},{"id":13,"value":0},{"id":31,"value":462}],"floatValues":[{"id":4,"value":39.11111},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72821177378507,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":2873},{"id":13,"value":0},{"id":31,"value":464}],"floatValues":[{"id":4,"value":39.555557},{"id":70,"value":22.352942},{"id":6,"value":195.3125},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72823177069331,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":3076},{"id":13,"value":0},{"id":31,"value":466}],"floatValues":[{"id":4,"value":40.0},{"id":70,"value":22.352942},{"id":6,"value":204.6875},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72825179501699,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":3073},{"id":13,"value":0},{"id":31,"value":468}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":31.764706}]},{"type":1,"timestamp":72827176421710,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":3074},{"id":13,"value":0},{"id":31,"value":470}],"floatValues":[{"id":4,"value":40.0},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72829176386701,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":3074},{"id":13,"value":0},{"id":31,"value":472}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":204.6875},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72831176764503,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":2873},{"id":13,"value":0},{"id":31,"value":474}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72833177319130,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":3074},{"id":13,"value":0},{"id":31,"value":476}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72835180519900,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":3074},{"id":13,"value":0},{"id":31,"value":478}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":204.6875},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72837178223527,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":2879},{"id":13,"value":0},{"id":31,"value":480}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72839177312748,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3074},{"id":13,"value":0},{"id":31,"value":482}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72841177797843,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3079},{"id":13,"value":0},{"id":31,"value":484}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72843179579857,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3074},{"id":13,"value":0},{"id":31,"value":486}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72845180133072,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3077},{"id":13,"value":0},{"id":31,"value":488}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72847176774274,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3073},{"id":13,"value":0},{"id":31,"value":490}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":195.3125},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72849177384942,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":2879},{"id":13,"value":0},{"id":31,"value":492}],"floatValues":[{"id":4,"value":41.333332},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72851178359655,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3080},{"id":13,"value":0},{"id":31,"value":494}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72853178455898,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3072},{"id":13,"value":0},{"id":31,"value":496}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":192.96875},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72855177993333,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3084},{"id":13,"value":0},{"id":31,"value":498}],"floatValues":[{"id":4,"value":41.333332},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":31.764706}]},{"type":1,"timestamp":72857177079489,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3072},{"id":13,"value":0},{"id":31,"value":500}],"floatValues":[{"id":4,"value":41.333332},{"id":70,"value":22.352942},{"id":6,"value":192.96875},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72859176801251,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":2878},{"id":13,"value":0},{"id":31,"value":502}],"floatValues":[{"id":4,"value":41.333332},{"id":70,"value":22.352942},{"id":6,"value":195.3125},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72861178465404,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3082},{"id":13,"value":0},{"id":31,"value":504}],"floatValues":[{"id":4,"value":41.333332},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72863179481995,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3073},{"id":13,"value":0},{"id":31,"value":506}],"floatValues":[{"id":4,"value":41.333332},{"id":70,"value":22.352942},{"id":6,"value":195.3125},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72865177785963,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3079},{"id":13,"value":0},{"id":31,"value":508}],"floatValues":[{"id":4,"value":41.77778},{"id":70,"value":22.352942},{"id":6,"value":195.3125},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72867176113089,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3075},{"id":13,"value":0},{"id":31,"value":510}],"floatValues":[{"id":4,"value":41.333332},{"id":70,"value":22.352942},{"id":6,"value":192.96875},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72869176834314,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":2874},{"id":13,"value":0},{"id":31,"value":512}],"floatValues":[{"id":4,"value":41.333332},{"id":70,"value":22.352942},{"id":6,"value":190.625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72871178569429,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3079},{"id":13,"value":0},{"id":31,"value":514}],"floatValues":[{"id":4,"value":41.333332},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72873176252437,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":2879},{"id":13,"value":0},{"id":31,"value":516}],"floatValues":[{"id":4,"value":42.22222},{"id":70,"value":22.352942},{"id":6,"value":192.96875},{"id":47,"value":31.764706}]},{"type":1,"timestamp":72875177079512,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":2872},{"id":13,"value":0},{"id":31,"value":518}],"floatValues":[{"id":4,"value":41.77778},{"id":70,"value":22.352942},{"id":6,"value":192.96875},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72877177740208,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3077},{"id":13,"value":0},{"id":31,"value":520}],"floatValues":[{"id":4,"value":41.77778},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72879180125173,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":2872},{"id":13,"value":0},{"id":31,"value":522}],"floatValues":[{"id":4,"value":41.77778},{"id":70,"value":22.352942},{"id":6,"value":190.625},{"id":47,"value":31.764706}]},{"type":1,"timestamp":72881178525713,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3079},{"id":13,"value":0},{"id":31,"value":524}],"floatValues":[{"id":4,"value":41.77778},{"id":70,"value":22.352942},{"id":6,"value":195.3125},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72883176875986,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":2875},{"id":13,"value":0},{"id":31,"value":526}],"floatValues":[{"id":4,"value":41.77778},{"id":70,"value":22.352942},{"id":6,"value":192.96875},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72885176324726,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":2879},{"id":13,"value":0},{"id":31,"value":528}],"floatValues":[{"id":4,"value":41.77778},{"id":70,"value":22.352942},{"id":6,"value":192.96875},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72887176793512,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3078},{"id":13,"value":0},{"id":31,"value":530}],"floatValues":[{"id":4,"value":42.22222},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":31.764706}]},{"type":1,"timestamp":72889177026044,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3077},{"id":13,"value":0},{"id":31,"value":532}],"floatValues":[{"id":4,"value":41.77778},{"id":70,"value":22.352942},{"id":6,"value":192.96875},{"id":47,"value":32.156864}]},{"type":1,"timestamp":72891177972355,"intValues":[{"id":3,"value":2},{"id":5,"value":95},{"id":12,"value":5426},{"id":13,"value":5},{"id":31,"value":534}],"floatValues":[{"id":4,"value":51.555557},{"id":70,"value":22.352942},{"id":6,"value":209.375},{"id":47,"value":22.745098}]},{"type":1,"timestamp":72893178557124,"intValues":[{"id":3,"value":2},{"id":5,"value":96},{"id":12,"value":9000},{"id":13,"value":18},{"id":31,"value":536}],"floatValues":[{"id":4,"value":66.22222},{"id":70,"value":22.352942},{"id":6,"value":204.6875},{"id":47,"value":27.450981}]},{"type":1,"timestamp":72895179323906,"intValues":[{"id":3,"value":2},{"id":5,"value":95},{"id":12,"value":7996},{"id":13,"value":24},{"id":31,"value":538}],"floatValues":[{"id":4,"value":53.333332},{"id":70,"value":22.352942},{"id":6,"value":204.6875},{"id":47,"value":18.82353}]},{"type":1,"timestamp":72897179514717,"intValues":[{"id":3,"value":2},{"id":5,"value":95},{"id":12,"value":6195},{"id":13,"value":29},{"id":31,"value":540}],"floatValues":[{"id":4,"value":109.333336},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":10.588236}]},{"type":1,"timestamp":72899178457633,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":12839},{"id":13,"value":40},{"id":31,"value":542}],"floatValues":[{"id":4,"value":61.77778},{"id":70,"value":22.352942},{"id":6,"value":204.6875},{"id":47,"value":23.529411}]},{"type":1,"timestamp":72901179477573,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":10757},{"id":13,"value":49},{"id":31,"value":544}],"floatValues":[{"id":4,"value":111.55556},{"id":70,"value":22.352942},{"id":6,"value":207.03125},{"id":47,"value":27.450981}]},{"type":1,"timestamp":72903179086670,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":12836},{"id":13,"value":61},{"id":31,"value":546}],"floatValues":[{"id":4,"value":85.77778},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":28.62745}]},{"type":1,"timestamp":72905177385416,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":10042},{"id":13,"value":65},{"id":31,"value":548}],"floatValues":[{"id":4,"value":34.22222},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":32.941177}]},{"type":1,"timestamp":72907178215527,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":9733},{"id":13,"value":66},{"id":31,"value":550}],"floatValues":[{"id":4,"value":111.55556},{"id":70,"value":22.352942},{"id":6,"value":216.40625},{"id":47,"value":26.27451}]},{"type":1,"timestamp":72909179246647,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":10302},{"id":13,"value":70},{"id":31,"value":552}],"floatValues":[{"id":4,"value":56.88889},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":27.450981}]},{"type":1,"timestamp":72911180048703,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":15104},{"id":13,"value":73},{"id":31,"value":554}],"floatValues":[{"id":4,"value":111.111115},{"id":70,"value":22.352942},{"id":6,"value":209.375},{"id":47,"value":19.215687}]},{"type":1,"timestamp":72913178558121,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":16423},{"id":13,"value":86},{"id":31,"value":556}],"floatValues":[{"id":4,"value":75.111115},{"id":70,"value":22.352942}]},{"type":1,"timestamp":72915176591525,"intValues":[],"floatValues":[]},{"type":1,"timestamp":72917180004744,"intValues":[],"floatValues":[]},{"type":1,"timestamp":72919178449026,"intValues":[],"floatValues":[]},{"type":1,"timestamp":72921179933335,"intValues":[],"floatValues":[]},{"type":1,"timestamp":72923179387974,"intValues":[],"floatValues":[]},{"type":1,"timestamp":72925179338880,"intValues":[],"floatValues":[]},{"type":1,"timestamp":72927176345108,"intValues":[],"floatValues":[]},{"type":1,"timestamp":72929179848799,"intValues":[],"floatValues":[]},{"type":1,"timestamp":72931179314858,"intValues":[],"floatValues":[]},{"type":1,"timestamp":72933180632674,"intValues":[],"floatValues":[]},{"type":1,"timestamp":72935179793063,"intValues":[],"floatValues":[]},{"type":1,"timestamp":72937178822539,"intValues":[],"floatValues":[]},{"type":1,"timestamp":72939177286298,"intValues":[],"floatValues":[]},{"type":1,"timestamp":72941177772999,"intValues":[],"floatValues":[]},{"type":1,"timestamp":72943177666251,"intValues":[],"floatValues":[]},{"type":1,"timestamp":72945180047718,"intValues":[],"floatValues":[]},{"type":1,"timestamp":72947179391597,"intValues":[],"floatValues":[]},{"type":1,"timestamp":72949176920841,"intValues":[],"floatValues":[]},{"type":1,"timestamp":72951177850208,"intValues":[],"floatValues":[]},{"type":1,"timestamp":72953176750100,"intValues":[],"floatValues":[]},{"type":1,"timestamp":72955175939724,"intValues":[],"floatValues":[]},{"type":1,"timestamp":72957177389603,"intValues":[],"floatValues":[]},{"type":1,"timestamp":72959178499462,"intValues":[],"floatValues":[]}]
+[{"type":"live","timestamp":72375175786629,"intValues":[{"id":3,"value":2},{"id":5,"value":64},{"id":12,"value":3080},{"id":13,"value":0},{"id":31,"value":18}],"floatValues":[{"id":4,"value":42.22222},{"id":70,"value":21.960785},{"id":6,"value":214.0625},{"id":47,"value":31.764706}]},{"type":"live","timestamp":72377177593287,"intValues":[{"id":3,"value":2},{"id":5,"value":64},{"id":12,"value":3084},{"id":13,"value":0},{"id":31,"value":20}],"floatValues":[{"id":4,"value":42.22222},{"id":70,"value":21.960785},{"id":6,"value":216.40625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72379176544788,"intValues":[{"id":3,"value":2},{"id":5,"value":64},{"id":12,"value":3078},{"id":13,"value":0},{"id":31,"value":22}],"floatValues":[{"id":4,"value":41.77778},{"id":70,"value":21.960785},{"id":6,"value":214.0625},{"id":47,"value":31.764706}]},{"type":"live","timestamp":72381179373780,"intValues":[{"id":3,"value":2},{"id":5,"value":64},{"id":12,"value":2873},{"id":13,"value":0},{"id":31,"value":24}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":21.960785},{"id":6,"value":207.03125},{"id":47,"value":31.764706}]},{"type":"live","timestamp":72383179413967,"intValues":[{"id":3,"value":2},{"id":5,"value":65},{"id":12,"value":3078},{"id":13,"value":0},{"id":31,"value":26}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":21.960785},{"id":6,"value":214.0625},{"id":47,"value":31.764706}]},{"type":"live","timestamp":72385179454210,"intValues":[{"id":3,"value":2},{"id":5,"value":65},{"id":12,"value":2869},{"id":13,"value":0},{"id":31,"value":28}],"floatValues":[{"id":4,"value":41.333332},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":31.764706}]},{"type":"live","timestamp":72387176856679,"intValues":[{"id":3,"value":2},{"id":5,"value":66},{"id":12,"value":3090},{"id":13,"value":0},{"id":31,"value":30}],"floatValues":[{"id":4,"value":52.0},{"id":70,"value":21.960785},{"id":6,"value":230.46875},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72389180204642,"intValues":[{"id":3,"value":2},{"id":5,"value":66},{"id":12,"value":4110},{"id":13,"value":1},{"id":31,"value":32}],"floatValues":[{"id":4,"value":68.44444},{"id":70,"value":21.960785},{"id":6,"value":214.0625},{"id":47,"value":34.11765}]},{"type":"live","timestamp":72391178997905,"intValues":[{"id":3,"value":2},{"id":5,"value":66},{"id":12,"value":3633},{"id":13,"value":5},{"id":31,"value":34}],"floatValues":[{"id":4,"value":51.11111},{"id":70,"value":21.960785},{"id":6,"value":223.4375},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72393179466175,"intValues":[{"id":3,"value":2},{"id":5,"value":67},{"id":12,"value":3135},{"id":13,"value":4},{"id":31,"value":36}],"floatValues":[{"id":4,"value":50.666668},{"id":70,"value":21.960785},{"id":6,"value":230.46875},{"id":47,"value":32.941177}]},{"type":"live","timestamp":72395177442840,"intValues":[{"id":3,"value":2},{"id":5,"value":67},{"id":12,"value":3125},{"id":13,"value":0},{"id":31,"value":38}],"floatValues":[{"id":4,"value":48.444443},{"id":70,"value":21.960785},{"id":6,"value":228.125},{"id":47,"value":27.450981}]},{"type":"live","timestamp":72397179771686,"intValues":[{"id":3,"value":2},{"id":5,"value":68},{"id":12,"value":2857},{"id":13,"value":0},{"id":31,"value":40}],"floatValues":[{"id":4,"value":55.555557},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":26.27451}]},{"type":"live","timestamp":72399177882285,"intValues":[{"id":3,"value":2},{"id":5,"value":68},{"id":12,"value":4899},{"id":13,"value":6},{"id":31,"value":42}],"floatValues":[{"id":4,"value":82.666664},{"id":70,"value":21.960785},{"id":6,"value":202.34375},{"id":47,"value":17.254902}]},{"type":"live","timestamp":72401178271883,"intValues":[{"id":3,"value":2},{"id":5,"value":68},{"id":12,"value":8483},{"id":13,"value":17},{"id":31,"value":44}],"floatValues":[{"id":4,"value":45.333332},{"id":70,"value":21.960785},{"id":6,"value":237.5},{"id":47,"value":32.941177}]},{"type":"live","timestamp":72403179389890,"intValues":[{"id":3,"value":2},{"id":5,"value":69},{"id":12,"value":5158},{"id":13,"value":18},{"id":31,"value":46}],"floatValues":[{"id":4,"value":28.0},{"id":70,"value":21.960785},{"id":6,"value":188.28125},{"id":47,"value":34.11765}]},{"type":"live","timestamp":72405178339774,"intValues":[{"id":3,"value":2},{"id":5,"value":69},{"id":12,"value":6184},{"id":13,"value":20},{"id":31,"value":48}],"floatValues":[{"id":4,"value":36.0},{"id":70,"value":21.960785},{"id":6,"value":216.40625},{"id":47,"value":34.11765}]},{"type":"live","timestamp":72407178346527,"intValues":[{"id":3,"value":2},{"id":5,"value":70},{"id":12,"value":6207},{"id":13,"value":21},{"id":31,"value":50}],"floatValues":[{"id":4,"value":31.11111},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72409177960280,"intValues":[{"id":3,"value":2},{"id":5,"value":70},{"id":12,"value":5409},{"id":13,"value":19},{"id":31,"value":52}],"floatValues":[{"id":4,"value":28.88889},{"id":70,"value":21.960785},{"id":6,"value":192.96875},{"id":47,"value":36.47059}]},{"type":"live","timestamp":72411176941375,"intValues":[{"id":3,"value":2},{"id":5,"value":71},{"id":12,"value":5653},{"id":13,"value":18},{"id":31,"value":54}],"floatValues":[{"id":4,"value":92.888885},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":24.705883}]},{"type":"live","timestamp":72413177348486,"intValues":[{"id":3,"value":2},{"id":5,"value":71},{"id":12,"value":7988},{"id":13,"value":26},{"id":31,"value":56}],"floatValues":[{"id":4,"value":31.555555},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":32.941177}]},{"type":"live","timestamp":72415176509329,"intValues":[{"id":3,"value":2},{"id":5,"value":72},{"id":12,"value":4134},{"id":13,"value":21},{"id":31,"value":58}],"floatValues":[{"id":4,"value":33.333332},{"id":70,"value":21.960785},{"id":6,"value":176.5625},{"id":47,"value":32.941177}]},{"type":"live","timestamp":72417178548720,"intValues":[{"id":3,"value":2},{"id":5,"value":72},{"id":12,"value":3109},{"id":13,"value":14},{"id":31,"value":60}],"floatValues":[{"id":4,"value":49.333332},{"id":70,"value":21.960785},{"id":6,"value":192.96875},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72419178377617,"intValues":[{"id":3,"value":2},{"id":5,"value":73},{"id":12,"value":3635},{"id":13,"value":16},{"id":31,"value":62}],"floatValues":[{"id":4,"value":44.88889},{"id":70,"value":21.960785},{"id":6,"value":223.4375},{"id":47,"value":28.62745}]},{"type":"live","timestamp":72421177803572,"intValues":[{"id":3,"value":2},{"id":5,"value":73},{"id":12,"value":3619},{"id":13,"value":11},{"id":31,"value":64}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":228.125},{"id":47,"value":34.11765}]},{"type":"live","timestamp":72423176710009,"intValues":[{"id":3,"value":2},{"id":5,"value":74},{"id":12,"value":4637},{"id":13,"value":10},{"id":31,"value":66}],"floatValues":[{"id":4,"value":36.0},{"id":70,"value":21.960785},{"id":6,"value":216.40625},{"id":47,"value":35.686275}]},{"type":"live","timestamp":72425176560994,"intValues":[{"id":3,"value":2},{"id":5,"value":74},{"id":12,"value":7199},{"id":13,"value":15},{"id":31,"value":68}],"floatValues":[{"id":4,"value":36.0},{"id":70,"value":21.960785},{"id":6,"value":228.125},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72427175927486,"intValues":[{"id":3,"value":2},{"id":5,"value":75},{"id":12,"value":3894},{"id":13,"value":11},{"id":31,"value":70}],"floatValues":[{"id":4,"value":47.555557},{"id":70,"value":21.960785},{"id":6,"value":211.71875},{"id":47,"value":24.705883}]},{"type":"live","timestamp":72429178132978,"intValues":[{"id":3,"value":2},{"id":5,"value":75},{"id":12,"value":3108},{"id":13,"value":1},{"id":31,"value":72}],"floatValues":[{"id":4,"value":48.0},{"id":70,"value":21.960785},{"id":6,"value":218.75},{"id":47,"value":27.450981}]},{"type":"live","timestamp":72431177381669,"intValues":[{"id":3,"value":2},{"id":5,"value":75},{"id":12,"value":3087},{"id":13,"value":0},{"id":31,"value":74}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":216.40625},{"id":47,"value":27.450981}]},{"type":"live","timestamp":72433178039132,"intValues":[{"id":3,"value":2},{"id":5,"value":76},{"id":12,"value":3091},{"id":13,"value":0},{"id":31,"value":76}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":214.0625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72435178023153,"intValues":[{"id":3,"value":2},{"id":5,"value":76},{"id":12,"value":3090},{"id":13,"value":0},{"id":31,"value":78}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":216.40625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72437177860993,"intValues":[{"id":3,"value":2},{"id":5,"value":77},{"id":12,"value":3083},{"id":13,"value":0},{"id":31,"value":80}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":214.0625},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72439177936939,"intValues":[{"id":3,"value":2},{"id":5,"value":77},{"id":12,"value":3080},{"id":13,"value":0},{"id":31,"value":82}],"floatValues":[{"id":4,"value":45.333332},{"id":70,"value":21.960785},{"id":6,"value":211.71875},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72441178444751,"intValues":[{"id":3,"value":2},{"id":5,"value":77},{"id":12,"value":3078},{"id":13,"value":0},{"id":31,"value":84}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":216.40625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72443176930748,"intValues":[{"id":3,"value":2},{"id":5,"value":78},{"id":12,"value":3077},{"id":13,"value":0},{"id":31,"value":86}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":211.71875},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72445178255526,"intValues":[{"id":3,"value":2},{"id":5,"value":78},{"id":12,"value":3078},{"id":13,"value":0},{"id":31,"value":88}],"floatValues":[{"id":4,"value":46.22222},{"id":70,"value":21.960785},{"id":6,"value":211.71875},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72447175742708,"intValues":[{"id":3,"value":2},{"id":5,"value":78},{"id":12,"value":3082},{"id":13,"value":0},{"id":31,"value":90}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":214.0625},{"id":47,"value":31.37255}]},{"type":"live","timestamp":72449178336056,"intValues":[{"id":3,"value":2},{"id":5,"value":79},{"id":12,"value":3076},{"id":13,"value":0},{"id":31,"value":92}],"floatValues":[{"id":4,"value":45.333332},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72451176649982,"intValues":[{"id":3,"value":2},{"id":5,"value":79},{"id":12,"value":3080},{"id":13,"value":0},{"id":31,"value":94}],"floatValues":[{"id":4,"value":46.22222},{"id":70,"value":21.960785},{"id":6,"value":214.0625},{"id":47,"value":30.588236}]},{"type":"live","timestamp":72453177388904,"intValues":[{"id":3,"value":2},{"id":5,"value":79},{"id":12,"value":2879},{"id":13,"value":0},{"id":31,"value":96}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72455178049520,"intValues":[{"id":3,"value":2},{"id":5,"value":79},{"id":12,"value":3076},{"id":13,"value":0},{"id":31,"value":98}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":204.6875},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72457178189969,"intValues":[{"id":3,"value":2},{"id":5,"value":80},{"id":12,"value":3082},{"id":13,"value":0},{"id":31,"value":100}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":214.0625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72459177706926,"intValues":[{"id":3,"value":2},{"id":5,"value":80},{"id":12,"value":2877},{"id":13,"value":0},{"id":31,"value":102}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":204.6875},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72461176388948,"intValues":[{"id":3,"value":2},{"id":5,"value":80},{"id":12,"value":3076},{"id":13,"value":0},{"id":31,"value":104}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":207.03125},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72463178194570,"intValues":[{"id":3,"value":2},{"id":5,"value":81},{"id":12,"value":3077},{"id":13,"value":0},{"id":31,"value":106}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":211.71875},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72465178204165,"intValues":[{"id":3,"value":2},{"id":5,"value":81},{"id":12,"value":3072},{"id":13,"value":0},{"id":31,"value":108}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":204.6875},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72467178005994,"intValues":[{"id":3,"value":2},{"id":5,"value":81},{"id":12,"value":3082},{"id":13,"value":0},{"id":31,"value":110}],"floatValues":[{"id":4,"value":46.22222},{"id":70,"value":21.960785},{"id":6,"value":207.03125},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72469178443939,"intValues":[{"id":3,"value":2},{"id":5,"value":82},{"id":12,"value":2879},{"id":13,"value":0},{"id":31,"value":112}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":202.34375},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72471176771874,"intValues":[{"id":3,"value":2},{"id":5,"value":82},{"id":12,"value":3080},{"id":13,"value":0},{"id":31,"value":114}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":202.34375},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72473179942657,"intValues":[{"id":3,"value":2},{"id":5,"value":82},{"id":12,"value":3077},{"id":13,"value":0},{"id":31,"value":116}],"floatValues":[{"id":4,"value":46.22222},{"id":70,"value":21.960785},{"id":6,"value":204.6875},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72475177449291,"intValues":[{"id":3,"value":2},{"id":5,"value":82},{"id":12,"value":2877},{"id":13,"value":0},{"id":31,"value":118}],"floatValues":[{"id":4,"value":46.22222},{"id":70,"value":21.960785},{"id":6,"value":202.34375},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72477179209812,"intValues":[{"id":3,"value":2},{"id":5,"value":83},{"id":12,"value":3079},{"id":13,"value":0},{"id":31,"value":120}],"floatValues":[{"id":4,"value":46.22222},{"id":70,"value":21.960785},{"id":6,"value":204.6875},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72479178421641,"intValues":[{"id":3,"value":2},{"id":5,"value":83},{"id":12,"value":3073},{"id":13,"value":0},{"id":31,"value":122}],"floatValues":[{"id":4,"value":46.22222},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":31.764706}]},{"type":"live","timestamp":72481179539631,"intValues":[{"id":3,"value":2},{"id":5,"value":83},{"id":12,"value":3078},{"id":13,"value":0},{"id":31,"value":124}],"floatValues":[{"id":4,"value":46.666668},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72483178480110,"intValues":[{"id":3,"value":2},{"id":5,"value":83},{"id":12,"value":3082},{"id":13,"value":0},{"id":31,"value":126}],"floatValues":[{"id":4,"value":46.22222},{"id":70,"value":21.960785},{"id":6,"value":204.6875},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72485180096548,"intValues":[{"id":3,"value":2},{"id":5,"value":84},{"id":12,"value":3073},{"id":13,"value":0},{"id":31,"value":128}],"floatValues":[{"id":4,"value":46.22222},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72487178424406,"intValues":[{"id":3,"value":2},{"id":5,"value":84},{"id":12,"value":3075},{"id":13,"value":0},{"id":31,"value":130}],"floatValues":[{"id":4,"value":47.11111},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72489180054622,"intValues":[{"id":3,"value":2},{"id":5,"value":84},{"id":12,"value":3081},{"id":13,"value":0},{"id":31,"value":132}],"floatValues":[{"id":4,"value":46.22222},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72491179557027,"intValues":[{"id":3,"value":2},{"id":5,"value":85},{"id":12,"value":2878},{"id":13,"value":0},{"id":31,"value":134}],"floatValues":[{"id":4,"value":46.22222},{"id":70,"value":21.960785},{"id":6,"value":195.3125},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72493177727317,"intValues":[{"id":3,"value":2},{"id":5,"value":85},{"id":12,"value":3082},{"id":13,"value":0},{"id":31,"value":136}],"floatValues":[{"id":4,"value":46.666668},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":31.764706}]},{"type":"live","timestamp":72495177794472,"intValues":[{"id":3,"value":2},{"id":5,"value":85},{"id":12,"value":2879},{"id":13,"value":0},{"id":31,"value":138}],"floatValues":[{"id":4,"value":46.666668},{"id":70,"value":21.960785},{"id":6,"value":195.3125},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72497177210035,"intValues":[{"id":3,"value":2},{"id":5,"value":85},{"id":12,"value":3074},{"id":13,"value":0},{"id":31,"value":140}],"floatValues":[{"id":4,"value":47.11111},{"id":70,"value":21.960785},{"id":6,"value":195.3125},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72499180474808,"intValues":[{"id":3,"value":2},{"id":5,"value":86},{"id":12,"value":3085},{"id":13,"value":0},{"id":31,"value":142}],"floatValues":[{"id":4,"value":46.666668},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72501178578880,"intValues":[{"id":3,"value":2},{"id":5,"value":86},{"id":12,"value":3072},{"id":13,"value":0},{"id":31,"value":144}],"floatValues":[{"id":4,"value":47.11111},{"id":70,"value":21.960785},{"id":6,"value":188.28125},{"id":47,"value":27.450981}]},{"type":"live","timestamp":72503179731578,"intValues":[{"id":3,"value":2},{"id":5,"value":86},{"id":12,"value":7177},{"id":13,"value":11},{"id":31,"value":146}],"floatValues":[{"id":4,"value":49.77778},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":22.745098}]},{"type":"live","timestamp":72505177292755,"intValues":[{"id":3,"value":2},{"id":5,"value":86},{"id":12,"value":4126},{"id":13,"value":15},{"id":31,"value":148}],"floatValues":[{"id":4,"value":41.333332},{"id":70,"value":21.960785},{"id":6,"value":192.96875},{"id":47,"value":22.745098}]},{"type":"live","timestamp":72507176773477,"intValues":[{"id":3,"value":2},{"id":5,"value":86},{"id":12,"value":6438},{"id":13,"value":20},{"id":31,"value":150}],"floatValues":[{"id":4,"value":77.333336},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":22.745098}]},{"type":"live","timestamp":72509177195082,"intValues":[{"id":3,"value":2},{"id":5,"value":86},{"id":12,"value":8746},{"id":13,"value":30},{"id":31,"value":152}],"floatValues":[{"id":4,"value":112.888885},{"id":70,"value":21.960785},{"id":6,"value":202.34375},{"id":47,"value":8.627451}]},{"type":"live","timestamp":72511175989969,"intValues":[{"id":3,"value":2},{"id":5,"value":86},{"id":12,"value":14082},{"id":13,"value":44},{"id":31,"value":154}],"floatValues":[{"id":4,"value":103.111115},{"id":70,"value":21.960785},{"id":6,"value":211.71875},{"id":47,"value":20.784313}]},{"type":"live","timestamp":72513179658544,"intValues":[{"id":3,"value":2},{"id":5,"value":86},{"id":12,"value":15639},{"id":13,"value":54},{"id":31,"value":156}],"floatValues":[{"id":4,"value":73.333336},{"id":70,"value":21.960785},{"id":6,"value":214.0625},{"id":47,"value":26.27451}]},{"type":"live","timestamp":72515179414407,"intValues":[{"id":3,"value":2},{"id":5,"value":85},{"id":12,"value":10268},{"id":13,"value":59},{"id":31,"value":158}],"floatValues":[{"id":4,"value":63.555557},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72517176297337,"intValues":[{"id":3,"value":2},{"id":5,"value":85},{"id":12,"value":5928},{"id":13,"value":60},{"id":31,"value":160}],"floatValues":[{"id":4,"value":24.0},{"id":70,"value":21.960785},{"id":6,"value":146.09375},{"id":47,"value":34.901962}]},{"type":"live","timestamp":72519176826185,"intValues":[{"id":3,"value":2},{"id":5,"value":85},{"id":12,"value":6418},{"id":13,"value":58},{"id":31,"value":162}],"floatValues":[{"id":4,"value":59.555557},{"id":70,"value":21.960785},{"id":6,"value":188.28125},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72521179790904,"intValues":[{"id":3,"value":2},{"id":5,"value":85},{"id":12,"value":6179},{"id":13,"value":59},{"id":31,"value":164}],"floatValues":[{"id":4,"value":34.22222},{"id":70,"value":21.960785},{"id":6,"value":214.0625},{"id":47,"value":34.11765}]},{"type":"live","timestamp":72523180627127,"intValues":[{"id":3,"value":2},{"id":5,"value":85},{"id":12,"value":7483},{"id":13,"value":59},{"id":31,"value":166}],"floatValues":[{"id":4,"value":99.55556},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":28.62745}]},{"type":"live","timestamp":72525177789023,"intValues":[{"id":3,"value":2},{"id":5,"value":86},{"id":12,"value":6660},{"id":13,"value":63},{"id":31,"value":168}],"floatValues":[{"id":4,"value":96.888885},{"id":70,"value":21.960785},{"id":6,"value":195.3125},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72527175560417,"intValues":[{"id":3,"value":2},{"id":5,"value":86},{"id":12,"value":8460},{"id":13,"value":66},{"id":31,"value":170}],"floatValues":[{"id":4,"value":54.666668},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72529179499137,"intValues":[{"id":3,"value":2},{"id":5,"value":86},{"id":12,"value":5431},{"id":13,"value":56},{"id":31,"value":172}],"floatValues":[{"id":4,"value":20.0},{"id":70,"value":21.960785},{"id":6,"value":167.1875},{"id":47,"value":31.764706}]},{"type":"live","timestamp":72531178292369,"intValues":[{"id":3,"value":4},{"id":5,"value":86},{"id":12,"value":4868},{"id":13,"value":48},{"id":31,"value":174}],"floatValues":[{"id":4,"value":15.111111},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72533178253439,"intValues":[{"id":3,"value":4},{"id":5,"value":87},{"id":12,"value":7195},{"id":13,"value":47},{"id":31,"value":176}],"floatValues":[{"id":4,"value":83.55556},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72535179199711,"intValues":[{"id":3,"value":2},{"id":5,"value":87},{"id":12,"value":6423},{"id":13,"value":48},{"id":31,"value":178}],"floatValues":[{"id":4,"value":104.0},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":26.27451}]},{"type":"live","timestamp":72537177243028,"intValues":[{"id":3,"value":2},{"id":5,"value":87},{"id":12,"value":11582},{"id":13,"value":55},{"id":31,"value":180}],"floatValues":[{"id":4,"value":112.888885},{"id":70,"value":21.960785},{"id":6,"value":216.40625},{"id":47,"value":22.745098}]},{"type":"live","timestamp":72539180216273,"intValues":[{"id":3,"value":2},{"id":5,"value":87},{"id":12,"value":13336},{"id":13,"value":67},{"id":31,"value":182}],"floatValues":[{"id":4,"value":113.333336},{"id":70,"value":21.960785},{"id":6,"value":216.40625},{"id":47,"value":26.27451}]},{"type":"live","timestamp":72541176144311,"intValues":[{"id":3,"value":2},{"id":5,"value":87},{"id":12,"value":12304},{"id":13,"value":73},{"id":31,"value":184}],"floatValues":[{"id":4,"value":24.0},{"id":70,"value":21.960785},{"id":6,"value":174.21875},{"id":47,"value":24.705883}]},{"type":"live","timestamp":72543178195294,"intValues":[{"id":3,"value":2},{"id":5,"value":87},{"id":12,"value":6717},{"id":13,"value":68},{"id":31,"value":186}],"floatValues":[{"id":4,"value":20.88889},{"id":70,"value":21.960785},{"id":6,"value":181.25},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72545176834995,"intValues":[{"id":3,"value":4},{"id":5,"value":86},{"id":12,"value":4654},{"id":13,"value":47},{"id":31,"value":188}],"floatValues":[{"id":4,"value":20.444445},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72547177907339,"intValues":[{"id":3,"value":2},{"id":5,"value":86},{"id":12,"value":3330},{"id":13,"value":30},{"id":31,"value":190}],"floatValues":[{"id":4,"value":29.333334},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":34.901962}]},{"type":"live","timestamp":72549179735735,"intValues":[{"id":3,"value":2},{"id":5,"value":87},{"id":12,"value":3097},{"id":13,"value":13},{"id":31,"value":192}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":34.901962}]},{"type":"live","timestamp":72551181754526,"intValues":[{"id":3,"value":2},{"id":5,"value":87},{"id":12,"value":3088},{"id":13,"value":2},{"id":31,"value":194}],"floatValues":[{"id":4,"value":45.77778},{"id":70,"value":21.960785},{"id":6,"value":214.0625},{"id":47,"value":34.11765}]},{"type":"live","timestamp":72553177986304,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":3075},{"id":13,"value":0},{"id":31,"value":196}],"floatValues":[{"id":4,"value":42.666668},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":26.27451}]},{"type":"live","timestamp":72555176967736,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":3072},{"id":13,"value":0},{"id":31,"value":198}],"floatValues":[{"id":4,"value":41.77778},{"id":70,"value":21.960785},{"id":6,"value":207.03125},{"id":47,"value":26.27451}]},{"type":"live","timestamp":72557177160577,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":3074},{"id":13,"value":0},{"id":31,"value":200}],"floatValues":[{"id":4,"value":41.77778},{"id":70,"value":21.960785},{"id":6,"value":214.0625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72559179745844,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":2873},{"id":13,"value":0},{"id":31,"value":202}],"floatValues":[{"id":4,"value":42.22222},{"id":70,"value":21.960785},{"id":6,"value":204.6875},{"id":47,"value":33.333332}]},{"type":"live","timestamp":72561176203928,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":2878},{"id":13,"value":0},{"id":31,"value":204}],"floatValues":[{"id":4,"value":42.666668},{"id":70,"value":21.960785},{"id":6,"value":207.03125},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72563177799351,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":3072},{"id":13,"value":0},{"id":31,"value":206}],"floatValues":[{"id":4,"value":42.666668},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72565177953894,"intValues":[{"id":3,"value":2},{"id":5,"value":90},{"id":12,"value":2870},{"id":13,"value":0},{"id":31,"value":208}],"floatValues":[{"id":4,"value":42.666668},{"id":70,"value":21.960785},{"id":6,"value":202.34375},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72567176653777,"intValues":[{"id":3,"value":2},{"id":5,"value":90},{"id":12,"value":3075},{"id":13,"value":0},{"id":31,"value":210}],"floatValues":[{"id":4,"value":42.666668},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72569178043717,"intValues":[{"id":3,"value":2},{"id":5,"value":90},{"id":12,"value":2872},{"id":13,"value":0},{"id":31,"value":212}],"floatValues":[{"id":4,"value":43.11111},{"id":70,"value":21.960785},{"id":6,"value":204.6875},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72571178251056,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":3082},{"id":13,"value":0},{"id":31,"value":214}],"floatValues":[{"id":4,"value":43.11111},{"id":70,"value":21.960785},{"id":6,"value":202.34375},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72573176628436,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":3072},{"id":13,"value":0},{"id":31,"value":216}],"floatValues":[{"id":4,"value":43.11111},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72575177840420,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":2879},{"id":13,"value":0},{"id":31,"value":218}],"floatValues":[{"id":4,"value":43.11111},{"id":70,"value":21.960785},{"id":6,"value":204.6875},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72577176563646,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":3079},{"id":13,"value":0},{"id":31,"value":220}],"floatValues":[{"id":4,"value":43.555557},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72579179164504,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":2876},{"id":13,"value":0},{"id":31,"value":222}],"floatValues":[{"id":4,"value":43.11111},{"id":70,"value":21.960785},{"id":6,"value":202.34375},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72581177838286,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":3074},{"id":13,"value":0},{"id":31,"value":224}],"floatValues":[{"id":4,"value":43.555557},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72583178358480,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":3078},{"id":13,"value":0},{"id":31,"value":226}],"floatValues":[{"id":4,"value":43.555557},{"id":70,"value":21.960785},{"id":6,"value":207.03125},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72585177901670,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3074},{"id":13,"value":0},{"id":31,"value":228}],"floatValues":[{"id":4,"value":43.11111},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72587177734144,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3076},{"id":13,"value":0},{"id":31,"value":230}],"floatValues":[{"id":4,"value":43.555557},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72589179333460,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3080},{"id":13,"value":0},{"id":31,"value":232}],"floatValues":[{"id":4,"value":43.555557},{"id":70,"value":21.960785},{"id":6,"value":207.03125},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72591178129065,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":2878},{"id":13,"value":0},{"id":31,"value":234}],"floatValues":[{"id":4,"value":43.555557},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72593177596819,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3082},{"id":13,"value":0},{"id":31,"value":236}],"floatValues":[{"id":4,"value":43.555557},{"id":70,"value":21.960785},{"id":6,"value":204.6875},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72595178384378,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3076},{"id":13,"value":0},{"id":31,"value":238}],"floatValues":[{"id":4,"value":44.444443},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72597178056865,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3075},{"id":13,"value":0},{"id":31,"value":240}],"floatValues":[{"id":4,"value":43.555557},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72599179833740,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":2872},{"id":13,"value":0},{"id":31,"value":243}],"floatValues":[{"id":4,"value":43.555557},{"id":70,"value":21.960785},{"id":6,"value":195.3125},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72601176651309,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3077},{"id":13,"value":0},{"id":31,"value":244}],"floatValues":[{"id":4,"value":44.444443},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72603177566065,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3083},{"id":13,"value":0},{"id":31,"value":246}],"floatValues":[{"id":4,"value":44.0},{"id":70,"value":21.960785},{"id":6,"value":202.34375},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72605178128004,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3080},{"id":13,"value":0},{"id":31,"value":248}],"floatValues":[{"id":4,"value":44.0},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72607179599532,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3077},{"id":13,"value":0},{"id":31,"value":250}],"floatValues":[{"id":4,"value":44.0},{"id":70,"value":21.960785},{"id":6,"value":195.3125},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72609179437284,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3081},{"id":13,"value":0},{"id":31,"value":252}],"floatValues":[{"id":4,"value":44.0},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72611179630474,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3080},{"id":13,"value":0},{"id":31,"value":254}],"floatValues":[{"id":4,"value":44.0},{"id":70,"value":21.960785},{"id":6,"value":192.96875},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72613179774544,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":2879},{"id":13,"value":0},{"id":31,"value":256}],"floatValues":[{"id":4,"value":44.0},{"id":70,"value":21.960785},{"id":6,"value":195.3125},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72615178404973,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3073},{"id":13,"value":0},{"id":31,"value":258}],"floatValues":[{"id":4,"value":44.444443},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72617179059428,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":2879},{"id":13,"value":0},{"id":31,"value":260}],"floatValues":[{"id":4,"value":44.444443},{"id":70,"value":21.960785},{"id":6,"value":188.28125},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72619180105086,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3076},{"id":13,"value":0},{"id":31,"value":262}],"floatValues":[{"id":4,"value":44.444443},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72621179098902,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3104},{"id":13,"value":1},{"id":31,"value":264}],"floatValues":[{"id":4,"value":59.555557},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72623179359108,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":8255},{"id":13,"value":15},{"id":31,"value":266}],"floatValues":[{"id":4,"value":100.888885},{"id":70,"value":21.960785},{"id":6,"value":204.6875},{"id":47,"value":9.411765}]},{"type":"live","timestamp":72625179856484,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":11276},{"id":13,"value":33},{"id":31,"value":268}],"floatValues":[{"id":4,"value":99.55556},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":15.686275}]},{"type":"live","timestamp":72627176310119,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":15618},{"id":13,"value":50},{"id":31,"value":270}],"floatValues":[{"id":4,"value":90.666664},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":26.27451}]},{"type":"live","timestamp":72629177201984,"intValues":[{"id":3,"value":2},{"id":5,"value":90},{"id":12,"value":13109},{"id":13,"value":63},{"id":31,"value":272}],"floatValues":[{"id":4,"value":111.55556},{"id":70,"value":21.960785},{"id":6,"value":216.40625},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72631177723851,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":14343},{"id":13,"value":74},{"id":31,"value":274}],"floatValues":[{"id":4,"value":111.55556},{"id":70,"value":21.960785},{"id":6,"value":211.71875},{"id":47,"value":17.647058}]},{"type":"live","timestamp":72633179257550,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":15921},{"id":13,"value":83},{"id":31,"value":276}],"floatValues":[{"id":4,"value":21.777779},{"id":70,"value":21.960785},{"id":6,"value":192.96875},{"id":47,"value":9.803922}]},{"type":"live","timestamp":72635179273140,"intValues":[{"id":3,"value":2},{"id":5,"value":87},{"id":12,"value":4400},{"id":13,"value":55},{"id":31,"value":278}],"floatValues":[{"id":4,"value":34.666668},{"id":70,"value":21.960785},{"id":6,"value":183.59375},{"id":47,"value":26.27451}]},{"type":"live","timestamp":72637179409130,"intValues":[{"id":3,"value":2},{"id":5,"value":87},{"id":12,"value":3117},{"id":13,"value":32},{"id":31,"value":280}],"floatValues":[{"id":4,"value":30.666666},{"id":70,"value":21.960785},{"id":6,"value":183.59375},{"id":47,"value":28.62745}]},{"type":"live","timestamp":72639179800268,"intValues":[{"id":3,"value":2},{"id":5,"value":87},{"id":12,"value":3108},{"id":13,"value":26},{"id":31,"value":282}],"floatValues":[{"id":4,"value":29.333334},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":28.62745}]},{"type":"live","timestamp":72641179405070,"intValues":[{"id":3,"value":2},{"id":5,"value":87},{"id":12,"value":3106},{"id":13,"value":21},{"id":31,"value":284}],"floatValues":[{"id":4,"value":32.88889},{"id":70,"value":21.960785},{"id":6,"value":195.3125},{"id":47,"value":34.11765}]},{"type":"live","timestamp":72643179866403,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":4115},{"id":13,"value":17},{"id":31,"value":286}],"floatValues":[{"id":4,"value":111.111115},{"id":70,"value":21.960785},{"id":6,"value":207.03125},{"id":47,"value":17.254902}]},{"type":"live","timestamp":72645178430456,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":8991},{"id":13,"value":30},{"id":31,"value":288}],"floatValues":[{"id":4,"value":112.44444},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":26.27451}]},{"type":"live","timestamp":72647178451017,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":9513},{"id":13,"value":43},{"id":31,"value":290}],"floatValues":[{"id":4,"value":95.55556},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":28.62745}]},{"type":"live","timestamp":72649179500927,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":9518},{"id":13,"value":50},{"id":31,"value":292}],"floatValues":[{"id":4,"value":27.555555},{"id":70,"value":21.960785},{"id":6,"value":195.3125},{"id":47,"value":34.509804}]},{"type":"live","timestamp":72651179611409,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":6418},{"id":13,"value":49},{"id":31,"value":294}],"floatValues":[{"id":4,"value":19.555555},{"id":70,"value":21.960785},{"id":6,"value":178.90625},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72653178456810,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":5173},{"id":13,"value":40},{"id":31,"value":296}],"floatValues":[{"id":4,"value":20.88889},{"id":70,"value":21.960785},{"id":6,"value":188.28125},{"id":47,"value":34.11765}]},{"type":"live","timestamp":72655180014824,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":4112},{"id":13,"value":32},{"id":31,"value":298}],"floatValues":[{"id":4,"value":28.444445},{"id":70,"value":21.960785},{"id":6,"value":185.9375},{"id":47,"value":32.941177}]},{"type":"live","timestamp":72657180944053,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":8720},{"id":13,"value":37},{"id":31,"value":300}],"floatValues":[{"id":4,"value":113.333336},{"id":70,"value":21.960785},{"id":6,"value":202.34375},{"id":47,"value":28.62745}]},{"type":"live","timestamp":72659179332880,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":16412},{"id":13,"value":52},{"id":31,"value":302}],"floatValues":[{"id":4,"value":109.333336},{"id":70,"value":21.960785},{"id":6,"value":216.40625},{"id":47,"value":12.54902}]},{"type":"live","timestamp":72661177765487,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":13828},{"id":13,"value":61},{"id":31,"value":304}],"floatValues":[{"id":4,"value":22.666666},{"id":70,"value":21.960785},{"id":6,"value":178.90625},{"id":47,"value":32.941177}]},{"type":"live","timestamp":72663177689968,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":6447},{"id":13,"value":61},{"id":31,"value":306}],"floatValues":[{"id":4,"value":28.88889},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":34.11765}]},{"type":"live","timestamp":72665177450571,"intValues":[{"id":3,"value":2},{"id":5,"value":87},{"id":12,"value":5657},{"id":13,"value":56},{"id":31,"value":308}],"floatValues":[{"id":4,"value":16.88889},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72667179692696,"intValues":[{"id":3,"value":4},{"id":5,"value":87},{"id":12,"value":4873},{"id":13,"value":48},{"id":31,"value":310}],"floatValues":[{"id":4,"value":19.11111},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":35.686275}]},{"type":"live","timestamp":72669179293955,"intValues":[{"id":3,"value":4},{"id":5,"value":87},{"id":12,"value":3613},{"id":13,"value":34},{"id":31,"value":312}],"floatValues":[{"id":4,"value":27.11111},{"id":70,"value":21.960785},{"id":6,"value":185.9375},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72671177593842,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":3131},{"id":13,"value":19},{"id":31,"value":314}],"floatValues":[{"id":4,"value":30.222221},{"id":70,"value":21.960785},{"id":6,"value":202.34375},{"id":47,"value":36.862747}]},{"type":"live","timestamp":72673177057067,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":3844},{"id":13,"value":8},{"id":31,"value":316}],"floatValues":[{"id":4,"value":36.444443},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":34.901962}]},{"type":"live","timestamp":72675179630131,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":3080},{"id":13,"value":0},{"id":31,"value":318}],"floatValues":[{"id":4,"value":43.555557},{"id":70,"value":21.960785},{"id":6,"value":209.375},{"id":47,"value":28.62745}]},{"type":"live","timestamp":72677179714055,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":2866},{"id":13,"value":1},{"id":31,"value":320}],"floatValues":[{"id":4,"value":42.666668},{"id":70,"value":21.960785},{"id":6,"value":197.65625},{"id":47,"value":32.941177}]},{"type":"live","timestamp":72679179288433,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":7457},{"id":13,"value":13},{"id":31,"value":322}],"floatValues":[{"id":4,"value":76.0},{"id":70,"value":21.960785},{"id":6,"value":200.0},{"id":47,"value":10.588236}]},{"type":"live","timestamp":72681176480810,"intValues":[{"id":3,"value":2},{"id":5,"value":90},{"id":12,"value":9272},{"id":13,"value":27},{"id":31,"value":324}],"floatValues":[{"id":4,"value":105.77778},{"id":70,"value":21.960785},{"id":6,"value":204.6875},{"id":47,"value":15.686275}]},{"type":"live","timestamp":72683179662780,"intValues":[{"id":3,"value":2},{"id":5,"value":90},{"id":12,"value":13585},{"id":13,"value":43},{"id":31,"value":326}],"floatValues":[{"id":4,"value":87.55556},{"id":70,"value":21.960785},{"id":6,"value":211.71875},{"id":47,"value":28.62745}]},{"type":"live","timestamp":72685177751997,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":11024},{"id":13,"value":53},{"id":31,"value":328}],"floatValues":[{"id":4,"value":42.666668},{"id":70,"value":21.960785},{"id":6,"value":190.625},{"id":47,"value":20.784313}]},{"type":"live","timestamp":72687177061206,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":6927},{"id":13,"value":51},{"id":31,"value":330}],"floatValues":[{"id":4,"value":18.222221},{"id":70,"value":21.960785},{"id":6,"value":155.46875},{"id":47,"value":28.62745}]},{"type":"live","timestamp":72689176965248,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":5148},{"id":13,"value":38},{"id":31,"value":332}],"floatValues":[{"id":4,"value":21.333334},{"id":70,"value":21.960785},{"id":6,"value":157.8125},{"id":47,"value":34.11765}]},{"type":"live","timestamp":72691180692310,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":3594},{"id":13,"value":29},{"id":31,"value":334}],"floatValues":[{"id":4,"value":26.222221},{"id":70,"value":21.960785},{"id":6,"value":139.0625},{"id":47,"value":26.27451}]},{"type":"live","timestamp":72693178299558,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":3350},{"id":13,"value":25},{"id":31,"value":336}],"floatValues":[{"id":4,"value":48.88889},{"id":70,"value":21.960785},{"id":6,"value":185.9375},{"id":47,"value":18.82353}]},{"type":"live","timestamp":72695178266771,"intValues":[{"id":3,"value":2},{"id":5,"value":88},{"id":12,"value":8456},{"id":13,"value":34},{"id":31,"value":338}],"floatValues":[{"id":4,"value":79.55556},{"id":70,"value":21.960785},{"id":6,"value":202.34375},{"id":47,"value":26.27451}]},{"type":"live","timestamp":72697178378315,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":6163},{"id":13,"value":40},{"id":31,"value":340}],"floatValues":[{"id":4,"value":30.666666},{"id":70,"value":21.960785},{"id":6,"value":185.9375},{"id":47,"value":36.47059}]},{"type":"live","timestamp":72699179440945,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":4886},{"id":13,"value":32},{"id":31,"value":342}],"floatValues":[{"id":4,"value":24.0},{"id":70,"value":21.960785},{"id":6,"value":188.28125},{"id":47,"value":30.588236}]},{"type":"live","timestamp":72701179783621,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":5130},{"id":13,"value":29},{"id":31,"value":344}],"floatValues":[{"id":4,"value":54.22222},{"id":70,"value":21.960785},{"id":6,"value":192.96875},{"id":47,"value":28.62745}]},{"type":"live","timestamp":72703178384562,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":9525},{"id":13,"value":38},{"id":31,"value":346}],"floatValues":[{"id":4,"value":112.888885},{"id":70,"value":21.960785},{"id":6,"value":202.34375},{"id":47,"value":26.27451}]},{"type":"live","timestamp":72705179707825,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":10513},{"id":13,"value":49},{"id":31,"value":348}],"floatValues":[{"id":4,"value":99.55556},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72707177436366,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":8248},{"id":13,"value":54},{"id":31,"value":350}],"floatValues":[{"id":4,"value":76.888885},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":32.941177}]},{"type":"live","timestamp":72709176949975,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":8484},{"id":13,"value":59},{"id":31,"value":352}],"floatValues":[{"id":4,"value":59.11111},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72711179509943,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":5945},{"id":13,"value":61},{"id":31,"value":354}],"floatValues":[{"id":4,"value":74.22222},{"id":70,"value":22.352942},{"id":6,"value":211.71875},{"id":47,"value":32.941177}]},{"type":"live","timestamp":72713179908608,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":6197},{"id":13,"value":61},{"id":31,"value":356}],"floatValues":[{"id":4,"value":23.11111},{"id":70,"value":22.352942},{"id":6,"value":178.90625},{"id":47,"value":34.901962}]},{"type":"live","timestamp":72715178040463,"intValues":[{"id":3,"value":4},{"id":5,"value":89},{"id":12,"value":5904},{"id":13,"value":59},{"id":31,"value":358}],"floatValues":[{"id":4,"value":20.88889},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":34.901962}]},{"type":"live","timestamp":72717179826935,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":6154},{"id":13,"value":60},{"id":31,"value":360}],"floatValues":[{"id":4,"value":35.11111},{"id":70,"value":22.352942},{"id":6,"value":207.03125},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72719178168768,"intValues":[{"id":3,"value":2},{"id":5,"value":90},{"id":12,"value":5636},{"id":13,"value":59},{"id":31,"value":362}],"floatValues":[{"id":4,"value":16.88889},{"id":70,"value":22.352942},{"id":6,"value":181.25},{"id":47,"value":28.62745}]},{"type":"live","timestamp":72721179101986,"intValues":[{"id":3,"value":4},{"id":5,"value":90},{"id":12,"value":5411},{"id":13,"value":54},{"id":31,"value":364}],"floatValues":[{"id":4,"value":54.666668},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":24.705883}]},{"type":"live","timestamp":72723180021513,"intValues":[{"id":3,"value":2},{"id":5,"value":90},{"id":12,"value":5688},{"id":13,"value":55},{"id":31,"value":366}],"floatValues":[{"id":4,"value":24.444445},{"id":70,"value":22.352942},{"id":6,"value":195.3125},{"id":47,"value":32.941177}]},{"type":"live","timestamp":72725179738209,"intValues":[{"id":3,"value":2},{"id":5,"value":90},{"id":12,"value":5903},{"id":13,"value":55},{"id":31,"value":368}],"floatValues":[{"id":4,"value":48.88889},{"id":70,"value":22.352942},{"id":6,"value":211.71875},{"id":47,"value":26.27451}]},{"type":"live","timestamp":72727179292538,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":5162},{"id":13,"value":51},{"id":31,"value":370}],"floatValues":[{"id":4,"value":20.88889},{"id":70,"value":22.352942},{"id":6,"value":204.6875},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72729178027625,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":4124},{"id":13,"value":44},{"id":31,"value":372}],"floatValues":[{"id":4,"value":24.0},{"id":70,"value":22.352942},{"id":6,"value":188.28125},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72731178148147,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":3132},{"id":13,"value":37},{"id":31,"value":374}],"floatValues":[{"id":4,"value":23.555555},{"id":70,"value":22.352942},{"id":6,"value":181.25},{"id":47,"value":34.901962}]},{"type":"live","timestamp":72733176368495,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":3128},{"id":13,"value":24},{"id":31,"value":376}],"floatValues":[{"id":4,"value":28.0},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":34.901962}]},{"type":"live","timestamp":72735179502626,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":3089},{"id":13,"value":15},{"id":31,"value":378}],"floatValues":[{"id":4,"value":38.666668},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":39.607845}]},{"type":"live","timestamp":72737179297296,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":2869},{"id":13,"value":0},{"id":31,"value":380}],"floatValues":[{"id":4,"value":42.666668},{"id":70,"value":22.352942},{"id":6,"value":209.375},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72739177718891,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":2877},{"id":13,"value":0},{"id":31,"value":382}],"floatValues":[{"id":4,"value":39.555557},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":26.27451}]},{"type":"live","timestamp":72741177981830,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":2871},{"id":13,"value":0},{"id":31,"value":384}],"floatValues":[{"id":4,"value":39.11111},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":28.62745}]},{"type":"live","timestamp":72743176174851,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":2872},{"id":13,"value":0},{"id":31,"value":387}],"floatValues":[{"id":4,"value":39.11111},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72745329912826,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":2870},{"id":13,"value":0},{"id":31,"value":389}],"floatValues":[{"id":4,"value":39.11111},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72747355080893,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3073},{"id":13,"value":0},{"id":31,"value":391}],"floatValues":[{"id":4,"value":39.555557},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72749176618991,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3077},{"id":13,"value":0},{"id":31,"value":392}],"floatValues":[{"id":4,"value":39.555557},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72751176696798,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":2867},{"id":13,"value":0},{"id":31,"value":394}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72753176964078,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":3072},{"id":13,"value":0},{"id":31,"value":396}],"floatValues":[{"id":4,"value":40.0},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72755178349568,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":3078},{"id":13,"value":0},{"id":31,"value":398}],"floatValues":[{"id":4,"value":40.0},{"id":70,"value":22.352942},{"id":6,"value":204.6875},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72757178508591,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":2875},{"id":13,"value":0},{"id":31,"value":400}],"floatValues":[{"id":4,"value":40.0},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":30.588236}]},{"type":"live","timestamp":72759176500609,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":3074},{"id":13,"value":0},{"id":31,"value":402}],"floatValues":[{"id":4,"value":40.0},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72761176683571,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":2878},{"id":13,"value":0},{"id":31,"value":404}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":195.3125},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72763178363414,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":3081},{"id":13,"value":0},{"id":31,"value":406}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72765177437003,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":3085},{"id":13,"value":0},{"id":31,"value":408}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72767178204902,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":2877},{"id":13,"value":0},{"id":31,"value":410}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":195.3125},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72769177266732,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":3079},{"id":13,"value":0},{"id":31,"value":412}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72771176734323,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":3082},{"id":13,"value":0},{"id":31,"value":414}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72773176997295,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3079},{"id":13,"value":0},{"id":31,"value":416}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72775176636900,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3077},{"id":13,"value":0},{"id":31,"value":418}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":204.6875},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72777176589987,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3076},{"id":13,"value":0},{"id":31,"value":420}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":192.96875},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72779178389314,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3075},{"id":13,"value":0},{"id":31,"value":422}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":195.3125},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72781178485901,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3080},{"id":13,"value":0},{"id":31,"value":424}],"floatValues":[{"id":4,"value":41.333332},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72783177805524,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3080},{"id":13,"value":0},{"id":31,"value":426}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":195.3125},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72785177696746,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3081},{"id":13,"value":0},{"id":31,"value":428}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72787177943035,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3085},{"id":13,"value":0},{"id":31,"value":430}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":192.96875},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72789177892167,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3900},{"id":13,"value":2},{"id":31,"value":432}],"floatValues":[{"id":4,"value":84.0},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":11.372549}]},{"type":"live","timestamp":72791176960551,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":6937},{"id":13,"value":15},{"id":31,"value":434}],"floatValues":[{"id":4,"value":73.333336},{"id":70,"value":22.352942},{"id":6,"value":207.03125},{"id":47,"value":17.254902}]},{"type":"live","timestamp":72793179080142,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":10253},{"id":13,"value":30},{"id":31,"value":436}],"floatValues":[{"id":4,"value":100.888885},{"id":70,"value":22.352942},{"id":6,"value":211.71875},{"id":47,"value":10.588236}]},{"type":"live","timestamp":72795177144042,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":14653},{"id":13,"value":46},{"id":31,"value":438}],"floatValues":[{"id":4,"value":104.0},{"id":70,"value":22.352942},{"id":6,"value":214.0625},{"id":47,"value":22.745098}]},{"type":"live","timestamp":72797177311878,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":17934},{"id":13,"value":59},{"id":31,"value":440}],"floatValues":[{"id":4,"value":55.555557},{"id":70,"value":22.352942},{"id":6,"value":209.375},{"id":47,"value":24.705883}]},{"type":"live","timestamp":72799176281873,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":8757},{"id":13,"value":62},{"id":31,"value":442}],"floatValues":[{"id":4,"value":28.444445},{"id":70,"value":22.352942},{"id":6,"value":190.625},{"id":47,"value":22.745098}]},{"type":"live","timestamp":72801179010275,"intValues":[{"id":3,"value":2},{"id":5,"value":90},{"id":12,"value":5642},{"id":13,"value":58},{"id":31,"value":444}],"floatValues":[{"id":4,"value":17.777779},{"id":70,"value":22.352942},{"id":6,"value":188.28125},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72803176720724,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":3630},{"id":13,"value":38},{"id":31,"value":446}],"floatValues":[{"id":4,"value":25.333334},{"id":70,"value":22.352942},{"id":6,"value":171.875},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72805176371184,"intValues":[{"id":3,"value":2},{"id":5,"value":89},{"id":12,"value":3130},{"id":13,"value":27},{"id":31,"value":448}],"floatValues":[{"id":4,"value":25.777779},{"id":70,"value":22.352942},{"id":6,"value":178.90625},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72807176264873,"intValues":[{"id":3,"value":2},{"id":5,"value":90},{"id":12,"value":3091},{"id":13,"value":13},{"id":31,"value":450}],"floatValues":[{"id":4,"value":40.0},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":32.941177}]},{"type":"live","timestamp":72809177130217,"intValues":[{"id":3,"value":2},{"id":5,"value":90},{"id":12,"value":3340},{"id":13,"value":4},{"id":31,"value":452}],"floatValues":[{"id":4,"value":43.11111},{"id":70,"value":22.352942},{"id":6,"value":207.03125},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72811178240749,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":2874},{"id":13,"value":0},{"id":31,"value":454}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":30.19608}]},{"type":"live","timestamp":72813176674429,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":2877},{"id":13,"value":0},{"id":31,"value":456}],"floatValues":[{"id":4,"value":39.555557},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":27.450981}]},{"type":"live","timestamp":72815177036139,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3074},{"id":13,"value":0},{"id":31,"value":458}],"floatValues":[{"id":4,"value":39.11111},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72817178504749,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":2866},{"id":13,"value":0},{"id":31,"value":460}],"floatValues":[{"id":4,"value":39.555557},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72819175954203,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":3072},{"id":13,"value":0},{"id":31,"value":462}],"floatValues":[{"id":4,"value":39.11111},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72821177378507,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":2873},{"id":13,"value":0},{"id":31,"value":464}],"floatValues":[{"id":4,"value":39.555557},{"id":70,"value":22.352942},{"id":6,"value":195.3125},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72823177069331,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":3076},{"id":13,"value":0},{"id":31,"value":466}],"floatValues":[{"id":4,"value":40.0},{"id":70,"value":22.352942},{"id":6,"value":204.6875},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72825179501699,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":3073},{"id":13,"value":0},{"id":31,"value":468}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":31.764706}]},{"type":"live","timestamp":72827176421710,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":3074},{"id":13,"value":0},{"id":31,"value":470}],"floatValues":[{"id":4,"value":40.0},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72829176386701,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":3074},{"id":13,"value":0},{"id":31,"value":472}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":204.6875},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72831176764503,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":2873},{"id":13,"value":0},{"id":31,"value":474}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72833177319130,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":3074},{"id":13,"value":0},{"id":31,"value":476}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72835180519900,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":3074},{"id":13,"value":0},{"id":31,"value":478}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":204.6875},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72837178223527,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":2879},{"id":13,"value":0},{"id":31,"value":480}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72839177312748,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3074},{"id":13,"value":0},{"id":31,"value":482}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72841177797843,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3079},{"id":13,"value":0},{"id":31,"value":484}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72843179579857,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3074},{"id":13,"value":0},{"id":31,"value":486}],"floatValues":[{"id":4,"value":40.444443},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72845180133072,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3077},{"id":13,"value":0},{"id":31,"value":488}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72847176774274,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3073},{"id":13,"value":0},{"id":31,"value":490}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":195.3125},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72849177384942,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":2879},{"id":13,"value":0},{"id":31,"value":492}],"floatValues":[{"id":4,"value":41.333332},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72851178359655,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3080},{"id":13,"value":0},{"id":31,"value":494}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72853178455898,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3072},{"id":13,"value":0},{"id":31,"value":496}],"floatValues":[{"id":4,"value":40.88889},{"id":70,"value":22.352942},{"id":6,"value":192.96875},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72855177993333,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3084},{"id":13,"value":0},{"id":31,"value":498}],"floatValues":[{"id":4,"value":41.333332},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":31.764706}]},{"type":"live","timestamp":72857177079489,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3072},{"id":13,"value":0},{"id":31,"value":500}],"floatValues":[{"id":4,"value":41.333332},{"id":70,"value":22.352942},{"id":6,"value":192.96875},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72859176801251,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":2878},{"id":13,"value":0},{"id":31,"value":502}],"floatValues":[{"id":4,"value":41.333332},{"id":70,"value":22.352942},{"id":6,"value":195.3125},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72861178465404,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3082},{"id":13,"value":0},{"id":31,"value":504}],"floatValues":[{"id":4,"value":41.333332},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72863179481995,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3073},{"id":13,"value":0},{"id":31,"value":506}],"floatValues":[{"id":4,"value":41.333332},{"id":70,"value":22.352942},{"id":6,"value":195.3125},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72865177785963,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3079},{"id":13,"value":0},{"id":31,"value":508}],"floatValues":[{"id":4,"value":41.77778},{"id":70,"value":22.352942},{"id":6,"value":195.3125},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72867176113089,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3075},{"id":13,"value":0},{"id":31,"value":510}],"floatValues":[{"id":4,"value":41.333332},{"id":70,"value":22.352942},{"id":6,"value":192.96875},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72869176834314,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":2874},{"id":13,"value":0},{"id":31,"value":512}],"floatValues":[{"id":4,"value":41.333332},{"id":70,"value":22.352942},{"id":6,"value":190.625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72871178569429,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3079},{"id":13,"value":0},{"id":31,"value":514}],"floatValues":[{"id":4,"value":41.333332},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72873176252437,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":2879},{"id":13,"value":0},{"id":31,"value":516}],"floatValues":[{"id":4,"value":42.22222},{"id":70,"value":22.352942},{"id":6,"value":192.96875},{"id":47,"value":31.764706}]},{"type":"live","timestamp":72875177079512,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":2872},{"id":13,"value":0},{"id":31,"value":518}],"floatValues":[{"id":4,"value":41.77778},{"id":70,"value":22.352942},{"id":6,"value":192.96875},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72877177740208,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3077},{"id":13,"value":0},{"id":31,"value":520}],"floatValues":[{"id":4,"value":41.77778},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72879180125173,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":2872},{"id":13,"value":0},{"id":31,"value":522}],"floatValues":[{"id":4,"value":41.77778},{"id":70,"value":22.352942},{"id":6,"value":190.625},{"id":47,"value":31.764706}]},{"type":"live","timestamp":72881178525713,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3079},{"id":13,"value":0},{"id":31,"value":524}],"floatValues":[{"id":4,"value":41.77778},{"id":70,"value":22.352942},{"id":6,"value":195.3125},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72883176875986,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":2875},{"id":13,"value":0},{"id":31,"value":526}],"floatValues":[{"id":4,"value":41.77778},{"id":70,"value":22.352942},{"id":6,"value":192.96875},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72885176324726,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":2879},{"id":13,"value":0},{"id":31,"value":528}],"floatValues":[{"id":4,"value":41.77778},{"id":70,"value":22.352942},{"id":6,"value":192.96875},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72887176793512,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3078},{"id":13,"value":0},{"id":31,"value":530}],"floatValues":[{"id":4,"value":42.22222},{"id":70,"value":22.352942},{"id":6,"value":197.65625},{"id":47,"value":31.764706}]},{"type":"live","timestamp":72889177026044,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":3077},{"id":13,"value":0},{"id":31,"value":532}],"floatValues":[{"id":4,"value":41.77778},{"id":70,"value":22.352942},{"id":6,"value":192.96875},{"id":47,"value":32.156864}]},{"type":"live","timestamp":72891177972355,"intValues":[{"id":3,"value":2},{"id":5,"value":95},{"id":12,"value":5426},{"id":13,"value":5},{"id":31,"value":534}],"floatValues":[{"id":4,"value":51.555557},{"id":70,"value":22.352942},{"id":6,"value":209.375},{"id":47,"value":22.745098}]},{"type":"live","timestamp":72893178557124,"intValues":[{"id":3,"value":2},{"id":5,"value":96},{"id":12,"value":9000},{"id":13,"value":18},{"id":31,"value":536}],"floatValues":[{"id":4,"value":66.22222},{"id":70,"value":22.352942},{"id":6,"value":204.6875},{"id":47,"value":27.450981}]},{"type":"live","timestamp":72895179323906,"intValues":[{"id":3,"value":2},{"id":5,"value":95},{"id":12,"value":7996},{"id":13,"value":24},{"id":31,"value":538}],"floatValues":[{"id":4,"value":53.333332},{"id":70,"value":22.352942},{"id":6,"value":204.6875},{"id":47,"value":18.82353}]},{"type":"live","timestamp":72897179514717,"intValues":[{"id":3,"value":2},{"id":5,"value":95},{"id":12,"value":6195},{"id":13,"value":29},{"id":31,"value":540}],"floatValues":[{"id":4,"value":109.333336},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":10.588236}]},{"type":"live","timestamp":72899178457633,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":12839},{"id":13,"value":40},{"id":31,"value":542}],"floatValues":[{"id":4,"value":61.77778},{"id":70,"value":22.352942},{"id":6,"value":204.6875},{"id":47,"value":23.529411}]},{"type":"live","timestamp":72901179477573,"intValues":[{"id":3,"value":2},{"id":5,"value":94},{"id":12,"value":10757},{"id":13,"value":49},{"id":31,"value":544}],"floatValues":[{"id":4,"value":111.55556},{"id":70,"value":22.352942},{"id":6,"value":207.03125},{"id":47,"value":27.450981}]},{"type":"live","timestamp":72903179086670,"intValues":[{"id":3,"value":2},{"id":5,"value":93},{"id":12,"value":12836},{"id":13,"value":61},{"id":31,"value":546}],"floatValues":[{"id":4,"value":85.77778},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":28.62745}]},{"type":"live","timestamp":72905177385416,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":10042},{"id":13,"value":65},{"id":31,"value":548}],"floatValues":[{"id":4,"value":34.22222},{"id":70,"value":22.352942},{"id":6,"value":200.0},{"id":47,"value":32.941177}]},{"type":"live","timestamp":72907178215527,"intValues":[{"id":3,"value":2},{"id":5,"value":92},{"id":12,"value":9733},{"id":13,"value":66},{"id":31,"value":550}],"floatValues":[{"id":4,"value":111.55556},{"id":70,"value":22.352942},{"id":6,"value":216.40625},{"id":47,"value":26.27451}]},{"type":"live","timestamp":72909179246647,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":10302},{"id":13,"value":70},{"id":31,"value":552}],"floatValues":[{"id":4,"value":56.88889},{"id":70,"value":22.352942},{"id":6,"value":202.34375},{"id":47,"value":27.450981}]},{"type":"live","timestamp":72911180048703,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":15104},{"id":13,"value":73},{"id":31,"value":554}],"floatValues":[{"id":4,"value":111.111115},{"id":70,"value":22.352942},{"id":6,"value":209.375},{"id":47,"value":19.215687}]},{"type":"live","timestamp":72913178558121,"intValues":[{"id":3,"value":2},{"id":5,"value":91},{"id":12,"value":16423},{"id":13,"value":86},{"id":31,"value":556}],"floatValues":[{"id":4,"value":75.111115},{"id":70,"value":22.352942}]},{"type":"live","timestamp":72915176591525,"intValues":[],"floatValues":[]},{"type":"live","timestamp":72917180004744,"intValues":[],"floatValues":[]},{"type":"live","timestamp":72919178449026,"intValues":[],"floatValues":[]},{"type":"live","timestamp":72921179933335,"intValues":[],"floatValues":[]},{"type":"live","timestamp":72923179387974,"intValues":[],"floatValues":[]},{"type":"live","timestamp":72925179338880,"intValues":[],"floatValues":[]},{"type":"live","timestamp":72927176345108,"intValues":[],"floatValues":[]},{"type":"live","timestamp":72929179848799,"intValues":[],"floatValues":[]},{"type":"live","timestamp":72931179314858,"intValues":[],"floatValues":[]},{"type":"live","timestamp":72933180632674,"intValues":[],"floatValues":[]},{"type":"live","timestamp":72935179793063,"intValues":[],"floatValues":[]},{"type":"live","timestamp":72937178822539,"intValues":[],"floatValues":[]},{"type":"live","timestamp":72939177286298,"intValues":[],"floatValues":[]},{"type":"live","timestamp":72941177772999,"intValues":[],"floatValues":[]},{"type":"live","timestamp":72943177666251,"intValues":[],"floatValues":[]},{"type":"live","timestamp":72945180047718,"intValues":[],"floatValues":[]},{"type":"live","timestamp":72947179391597,"intValues":[],"floatValues":[]},{"type":"live","timestamp":72949176920841,"intValues":[],"floatValues":[]},{"type":"live","timestamp":72951177850208,"intValues":[],"floatValues":[]},{"type":"live","timestamp":72953176750100,"intValues":[],"floatValues":[]},{"type":"live","timestamp":72955175939724,"intValues":[],"floatValues":[]},{"type":"live","timestamp":72957177389603,"intValues":[],"floatValues":[]},{"type":"live","timestamp":72959178499462,"intValues":[],"floatValues":[]}]
diff --git a/tools/emulator/diagnostic_injector.py b/tools/emulator/diagnostic_injector.py
index 0f3496b..f6369c5 100755
--- a/tools/emulator/diagnostic_injector.py
+++ b/tools/emulator/diagnostic_injector.py
@@ -58,7 +58,7 @@
         self.liveFrameConfig = self.chat(
             lambda hal: hal.getConfig(c.VEHICLE_PROPERTY_OBD2_LIVE_FRAME))
         self.eventTypeData = {
-            1 : {
+            'live' : {
                 'builder'  : lambda: DiagnosticEventBuilder(self.liveFrameConfig),
                 'property' :  c.VEHICLE_PROPERTY_OBD2_LIVE_FRAME
             },
diff --git a/tools/emulator/vhal_const_generate.py b/tools/emulator/vhal_const_generate.py
new file mode 100755
index 0000000..dd9e3e6
--- /dev/null
+++ b/tools/emulator/vhal_const_generate.py
@@ -0,0 +1,113 @@
+#!/usr/bin/env python3.4
+#
+# Copyright (C) 2017 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+# This script generates vhal_consts_x_y.py files for use in vhal_emulator
+# They are generated from corresponding data in Vehicle HAL types.hal files
+# To run, invoke at a shell by saying:
+# $ packages/services/Car/tools/emulator/vhal_const_generate.py
+# The script will automatically locate itself and the required HAL files and will write next
+# to itself vhal_consts_x.y.py for any version of Vehicle HAL that it knows about
+# Those files can then be used with vhal_emulator.py as per that script's documentation
+
+import datetime
+
+def printHeader(dest):
+    year = datetime.datetime.now().year
+    print("# Copyright (C) %s The Android Open Source Project" % year, file=dest)
+    print("#", file=dest)
+    print("# Licensed under the Apache License, Version 2.0 (the \"License\");", file=dest)
+    print("# you may not use this file except in compliance with the License.", file=dest)
+    print("# You may obtain a copy of the License at", file=dest)
+    print("#", file=dest)
+    print("#      http://www.apache.org/licenses/LICENSE-2.0", file=dest)
+    print("#", file=dest)
+    print("# Unless required by applicable law or agreed to in writing, software", file=dest)
+    print("# distributed under the License is distributed on an \"AS IS\" BASIS,", file=dest)
+    print("# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.", file=dest)
+    print("# See the License for the specific language governing permissions and", file=dest)
+    print("# limitations under the License.", file=dest)
+    print("#", file=dest)
+    print("# DO NOT EDIT MANUALLY", file=dest)
+    print("# This file was autogenerated by vhal_const_generate.py", file=dest)
+
+def printEnum(doc, name, prefix, dest, postprocess=lambda x: x):
+    enum_object = doc['enums'][name]
+    print("\n# %s" % name, file=dest)
+    for case in enum_object.cases:
+        print('%s%s = %s' % (prefix, case.name,
+            postprocess(case.value.resolve(enum_object, doc))),
+            file=dest)
+
+import os, os.path
+import sys
+
+script_directory = os.path.join(os.path.dirname(os.path.abspath(__file__)))
+parent_location = os.path.abspath(os.path.join(script_directory, '..'))
+sys.path.append(parent_location)
+
+from hidl_parser import parser
+
+android_build_top = os.environ.get("ANDROID_BUILD_TOP", None)
+if android_build_top is not None:
+    vhal_location = os.path.join(android_build_top, 'hardware','interfaces','automotive','vehicle')
+else:
+    vhal_location = os.path.abspath(os.path.join(os.path.dirname(os.path.abspath(__file__)),
+        '..','..','..','..','..','hardware','interfaces','automotive','vehicle'
+    ))
+if not(os.path.exists(vhal_location) and os.path.isdir(vhal_location)):
+    print("Vehicle HAL was not found at %s. lunch may provide a correct environment, or files moved" % vhal_location)
+    sys.exit(1)
+
+vhal_20_file = os.path.join(vhal_location, '2.0', 'types.hal')
+vhal_21_file = os.path.join(vhal_location, '2.1', 'types.hal')
+
+print("Generating content from Vehicle HAL 2.0 (%s) and 2.1 (%s)" % (vhal_20_file, vhal_21_file))
+
+vhal_20_doc = parser.parse(vhal_20_file)
+vhal_21_doc = parser.parse(vhal_21_file)
+vhal_21_doc['enums']['VehiclePropertyGroup'] = vhal_20_doc['enums']['VehiclePropertyGroup']
+vhal_21_doc['enums']['VehiclePropertyType'] = vhal_20_doc['enums']['VehiclePropertyType']
+vhal_21_doc['enums']['VehicleArea'] = vhal_20_doc['enums']['VehicleArea']
+
+def generateHal20():
+    vhal_20_file = open(os.path.join(script_directory, 'vhal_consts_2_0.py'), 'w')
+
+    printHeader(vhal_20_file)
+    printEnum(vhal_20_doc, 'VehicleProperty', 'VEHICLE_PROPERTY_', vhal_20_file)
+    printEnum(vhal_20_doc, 'VehiclePropertyType', 'VEHICLE_VALUE_TYPE_', vhal_20_file, lambda x : hex(x))
+    printEnum(vhal_20_doc, 'VehicleAreaZone', 'VEHICLE_ZONE_', vhal_20_file, lambda x : hex(x))
+
+    print("\n# Create a container of value_type constants to be used by vhal_emulator", file=vhal_20_file)
+    print("class vhal_types_2_0:", file=vhal_20_file)
+    print("    TYPE_STRING =  [VEHICLE_VALUE_TYPE_STRING]", file=vhal_20_file)
+    print("    TYPE_BYTES  =  [VEHICLE_VALUE_TYPE_BYTES]", file=vhal_20_file)
+    print("    TYPE_INT32  =  [VEHICLE_VALUE_TYPE_BOOLEAN,", file=vhal_20_file)
+    print("                    VEHICLE_VALUE_TYPE_INT32]", file=vhal_20_file)
+    print("    TYPE_INT64  =  [VEHICLE_VALUE_TYPE_INT64]", file=vhal_20_file)
+    print("    TYPE_FLOAT  =  [VEHICLE_VALUE_TYPE_FLOAT]", file=vhal_20_file)
+    print("    TYPE_INT32S =  [VEHICLE_VALUE_TYPE_INT32_VEC]", file=vhal_20_file)
+    print("    TYPE_FLOATS =  [VEHICLE_VALUE_TYPE_FLOAT_VEC]", file=vhal_20_file)
+    print("    TYPE_COMPLEX = [VEHICLE_VALUE_TYPE_COMPLEX]", file=vhal_20_file)
+
+def generateHal21():
+    vhal_21_file = open(os.path.join(script_directory, 'vhal_consts_2_1.py'), 'w')
+    printHeader(vhal_21_file)
+    print('from vhal_consts_2_0 import *', file=vhal_21_file)
+    printEnum(vhal_21_doc, 'VehicleProperty', 'VEHICLE_PROPERTY_', vhal_21_file)
+
+generateHal20()
+generateHal21()
diff --git a/tools/emulator/vhal_consts_2_0.py b/tools/emulator/vhal_consts_2_0.py
index c33a198..8c7d037 100644
--- a/tools/emulator/vhal_consts_2_0.py
+++ b/tools/emulator/vhal_consts_2_0.py
@@ -1,10 +1,10 @@
-# Copyright 2017 Google Inc.
+# Copyright (C) 2017 The Android Open Source Project
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 # You may obtain a copy of the License at
 #
-#   http://www.apache.org/licenses/LICENSE-2.0
+#      http://www.apache.org/licenses/LICENSE-2.0
 #
 # Unless required by applicable law or agreed to in writing, software
 # distributed under the License is distributed on an "AS IS" BASIS,
@@ -12,25 +12,11 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 #
+# DO NOT EDIT MANUALLY
+# This file was autogenerated by vhal_const_generate.py
 
-"""
-    This file contains constants defined in hardware/interfaces/vehicle/2.0/types.hal
-
-    Constants in this file are parsed from:
-        out/soong/.intermediates/hardware/interfaces/automotive/vehicle/2.0/android.hardware.automotive.vehicle@2.0_genc++_headers/gen/android/hardware/automotive/vehicle/2.0/types.h
-
-    Currently, there is no script to auto-generate this constants file.  The file is generated by
-    copying enum fields into an editor and running a macro to format it.  The elements being used
-    are shown in the following table:
-
-        type.h file:                 this file:
-        VehiclePropertyType enum --> VEHICLE_VALUE_TYPE_*
-        VehicleProperty enum     --> VEHICLE_PROPERTY_*
-        VehicleAreaZone enum     --> VEHICLE_ZONE_*
-        VehiclePropertyType enum --> class vhal_types_2_0
-"""
-
-# Vehicle Property ID
+# VehicleProperty
+VEHICLE_PROPERTY_INVALID = 0
 VEHICLE_PROPERTY_INFO_VIN = 286261504
 VEHICLE_PROPERTY_INFO_MAKE = 286261505
 VEHICLE_PROPERTY_INFO_MODEL = 286261506
@@ -80,7 +66,7 @@
 VEHICLE_PROPERTY_AUDIO_EXT_ROUTING_HINT = 289474821
 VEHICLE_PROPERTY_AUDIO_STREAM_STATE = 289474822
 VEHICLE_PROPERTY_AUDIO_PARAMETERS = 286263559
-VEHICLE_PROPERTY_AP_POWER_STATE = 2560
+VEHICLE_PROPERTY_AP_POWER_STATE = 289475072
 VEHICLE_PROPERTY_DISPLAY_BRIGHTNESS = 289409537
 VEHICLE_PROPERTY_AP_POWER_BOOTUP_REASON = 289409538
 VEHICLE_PROPERTY_HW_KEY_INPUT = 289475088
@@ -128,39 +114,37 @@
 VEHICLE_PROPERTY_WINDOW_VENT_POS = 289409986
 VEHICLE_PROPERTY_WINDOW_VENT_MOVE = 289409987
 VEHICLE_PROPERTY_WINDOW_LOCK = 287312836
-VEHICLE_PROPERTY_VEHICLE_MAPS_DATA_SERVICE = 299895808
-VEHICLE_PROPERTY_OBD2_LIVE_FRAME = 299896064
-VEHICLE_PROPERTY_OBD2_FREEZE_FRAME = 299896065
 
-# Vehicle Value Type
-VEHICLE_VALUE_TYPE_STRING       = 0x00100000
-VEHICLE_VALUE_TYPE_BOOLEAN      = 0x00200000
-VEHICLE_VALUE_TYPE_INT32        = 0x00400000
-VEHICLE_VALUE_TYPE_INT32_VEC    = 0x00410000
-VEHICLE_VALUE_TYPE_INT64        = 0x00500000
-VEHICLE_VALUE_TYPE_FLOAT        = 0x00600000
-VEHICLE_VALUE_TYPE_FLOAT_VEC    = 0x00610000
-VEHICLE_VALUE_TYPE_BYTES        = 0x00700000
-VEHICLE_VALUE_TYPE_COMPLEX      = 0x00E00000
+# VehiclePropertyType
+VEHICLE_VALUE_TYPE_STRING = 0x100000
+VEHICLE_VALUE_TYPE_BOOLEAN = 0x200000
+VEHICLE_VALUE_TYPE_INT32 = 0x400000
+VEHICLE_VALUE_TYPE_INT32_VEC = 0x410000
+VEHICLE_VALUE_TYPE_INT64 = 0x500000
+VEHICLE_VALUE_TYPE_FLOAT = 0x600000
+VEHICLE_VALUE_TYPE_FLOAT_VEC = 0x610000
+VEHICLE_VALUE_TYPE_BYTES = 0x700000
+VEHICLE_VALUE_TYPE_COMPLEX = 0xe00000
+VEHICLE_VALUE_TYPE_MASK = 0xff0000
 
-# Vehicle zone / area definitions
-VEHICLE_ZONE_ROW_1_LEFT    = 0x00000001
-VEHICLE_ZONE_ROW_1_CENTER  = 0x00000002
-VEHICLE_ZONE_ROW_1_RIGHT   = 0x00000004
-VEHICLE_ZONE_ROW_1_ALL     = 0x00000008
-VEHICLE_ZONE_ROW_2_LEFT    = 0x00000010
-VEHICLE_ZONE_ROW_2_CENTER  = 0x00000020
-VEHICLE_ZONE_ROW_2_RIGHT   = 0x00000040
-VEHICLE_ZONE_ROW_2_ALL     = 0x00000080
-VEHICLE_ZONE_ROW_3_LEFT    = 0x00000100
-VEHICLE_ZONE_ROW_3_CENTER  = 0x00000200
-VEHICLE_ZONE_ROW_3_RIGHT   = 0x00000400
-VEHICLE_ZONE_ROW_3_ALL     = 0x00000800
-VEHICLE_ZONE_ROW_4_LEFT    = 0x00001000
-VEHICLE_ZONE_ROW_4_CENTER  = 0x00002000
-VEHICLE_ZONE_ROW_4_RIGHT   = 0x00004000
-VEHICLE_ZONE_ROW_4_ALL     = 0x00008000
-VEHICLE_ZONE_ALL           = 0x80000000
+# VehicleAreaZone
+VEHICLE_ZONE_ROW_1_LEFT = 0x1
+VEHICLE_ZONE_ROW_1_CENTER = 0x2
+VEHICLE_ZONE_ROW_1_RIGHT = 0x4
+VEHICLE_ZONE_ROW_1 = 0x8
+VEHICLE_ZONE_ROW_2_LEFT = 0x10
+VEHICLE_ZONE_ROW_2_CENTER = 0x20
+VEHICLE_ZONE_ROW_2_RIGHT = 0x40
+VEHICLE_ZONE_ROW_2 = 0x80
+VEHICLE_ZONE_ROW_3_LEFT = 0x100
+VEHICLE_ZONE_ROW_3_CENTER = 0x200
+VEHICLE_ZONE_ROW_3_RIGHT = 0x400
+VEHICLE_ZONE_ROW_3 = 0x800
+VEHICLE_ZONE_ROW_4_LEFT = 0x1000
+VEHICLE_ZONE_ROW_4_CENTER = 0x2000
+VEHICLE_ZONE_ROW_4_RIGHT = 0x4000
+VEHICLE_ZONE_ROW_4 = 0x8000
+VEHICLE_ZONE_WHOLE_CABIN = 0x80000000
 
 # Create a container of value_type constants to be used by vhal_emulator
 class vhal_types_2_0:
diff --git a/tools/emulator/vhal_consts_2_1.py b/tools/emulator/vhal_consts_2_1.py
new file mode 100644
index 0000000..72f48ef
--- /dev/null
+++ b/tools/emulator/vhal_consts_2_1.py
@@ -0,0 +1,25 @@
+# Copyright (C) 2017 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# DO NOT EDIT MANUALLY
+# This file was autogenerated by vhal_const_generate.py
+from vhal_consts_2_0 import *
+
+# VehicleProperty
+VEHICLE_PROPERTY_WHEEL_TICK = 291570438
+VEHICLE_PROPERTY_OBD2_LIVE_FRAME = 299896064
+VEHICLE_PROPERTY_OBD2_FREEZE_FRAME = 299896065
+VEHICLE_PROPERTY_OBD2_FREEZE_FRAME_INFO = 299896066
+VEHICLE_PROPERTY_OBD2_FREEZE_FRAME_CLEAR = 299896067
+VEHICLE_PROPERTY_VEHICLE_MAP_SERVICE = 299895808
diff --git a/tools/emulator/vhal_emulator.py b/tools/emulator/vhal_emulator.py
index 514c0d5..5fbdd74 100644
--- a/tools/emulator/vhal_emulator.py
+++ b/tools/emulator/vhal_emulator.py
@@ -34,21 +34,21 @@
 
         # Get the response message to getConfig()
         reply = v.rxMsg()
-        print reply
+        print(reply)
 
         # Set left temperature to 70 degrees
         v.setProperty(c.VEHICLE_PROPERTY_HVAC_TEMPERATURE_SET, c.VEHICLE_ZONE_ROW_1_LEFT, 70)
 
         # Get the response message to setProperty()
         reply = v.rxMsg()
-        print reply
+        print(reply)
 
         # Get the left temperature value
         v.getProperty(c.VEHICLE_PROPERTY_HVAC_TEMPERATURE_SET, c.VEHICLE_ZONE_ROW_1_LEFT)
 
         # Get the response message to getProperty()
         reply = v.rxMsg()
-        print reply
+        print(reply)
 
     NOTE:  The rxMsg() is a blocking call, so it may be desirable to set up a separate RX thread
             to handle any asynchronous messages coming from the device.
@@ -72,6 +72,8 @@
             protoc -I=<proto_dir> --python_out=<out_dir> <proto_dir>/VehicleHalProto.proto
 """
 
+from __future__ import print_function
+
 # Suppress .pyc files
 import sys
 sys.dont_write_bytecode = True
@@ -80,7 +82,9 @@
 import struct
 import subprocess
 
-# Generate the protobuf file from vendor/auto/embedded/lib/vehicle_hal:
+# Generate the protobuf file from hardware/interfaces/automotive/vehicle/2.0/default/impl/vhal_v2_0
+# It is recommended to use the protoc provided in: prebuilts/tools/common/m2/repository/com/google/protobuf/protoc/3.0.0
+# or a later version, in order to provide Python 3 compatibility
 #   protoc -I=proto --python_out=proto proto/VehicleHalProto.proto
 import VehicleHalProto_pb2
 
@@ -123,7 +127,7 @@
         """
             For debugging, print the protobuf message string in hex.
         """
-        print "len = ", len(data), "str = ", ":".join("{:02x}".format(ord(d)) for d in data)
+        print("len = ", len(data), "str = ", ":".join("{:02x}".format(ord(d)) for d in data))
 
     def openSocket(self):
         """
diff --git a/tools/emulator/vhal_emulator_test.py b/tools/emulator/vhal_emulator_test.py
index 325e0a8..b8a8a39 100644
--- a/tools/emulator/vhal_emulator_test.py
+++ b/tools/emulator/vhal_emulator_test.py
@@ -27,6 +27,8 @@
             protoc -I=proto --python_out=proto proto/VehicleHalProto.proto
 """
 
+from __future__ import print_function
+
 # Suppress .pyc files
 import sys
 sys.dont_write_bytecode = True
@@ -54,7 +56,7 @@
             testValue = "test string"
         elif valType in self._types.TYPE_BYTES:
             # Generate array of integers counting from 0
-            testValue = range(len(origValue))
+            testValue = list(range(len(origValue)))
         elif valType == vhal_consts_2_0.VEHICLE_VALUE_TYPE_BOOLEAN:
             testValue = origValue ^ 1
         elif valType in self._types.TYPE_INT32:
@@ -216,7 +218,7 @@
                 newValue = self._getValueFromMsg(rxMsg)
                 if newValue != testValue:
                     self._log.error("testGetSet: set failed for propId=%d, area=%d", cfg.prop, area)
-                    print "testValue= ", testValue, "newValue= ", newValue
+                    print("testValue= ", testValue, "newValue= ", newValue)
                     continue
 
                 # Reset the value to what it was before
@@ -287,4 +289,3 @@
 if __name__ == '__main__':
     v = VhalTest(vhal_consts_2_0.vhal_types_2_0)
     v.runTests()
-
diff --git a/vehicle-hal-support-lib/src/com/android/car/vehiclehal/DiagnosticJson.java b/vehicle-hal-support-lib/src/com/android/car/vehiclehal/DiagnosticJson.java
index 25fdfdf..6936f22 100644
--- a/vehicle-hal-support-lib/src/com/android/car/vehiclehal/DiagnosticJson.java
+++ b/vehicle-hal-support-lib/src/com/android/car/vehiclehal/DiagnosticJson.java
@@ -26,14 +26,14 @@
 import java.util.Optional;
 
 public class DiagnosticJson {
-    public final int type;
+    public final String type;
     public final long timestamp;
     public final SparseArray<Integer> intValues;
     public final SparseArray<Float> floatValues;
     public final String dtc;
 
     DiagnosticJson(
-            int type,
+            String type,
             long timestamp,
             SparseArray<Integer> intValues,
             SparseArray<Float> floatValues,
@@ -81,7 +81,7 @@
             }
         }
 
-        final WriteOnce<Integer> mType = new WriteOnce<>();
+        final WriteOnce<String> mType = new WriteOnce<>();
         final WriteOnce<Long> mTimestamp = new WriteOnce<>();
         final SparseArray<Integer> mIntValues = new SparseArray<>();
         final SparseArray<Float> mFloatValues = new SparseArray<>();
@@ -119,12 +119,11 @@
 
         Builder(JsonReader jsonReader) throws IOException {
             jsonReader.beginObject();
-            long timestamp = 0;
             while (jsonReader.hasNext()) {
                 String name = jsonReader.nextName();
                 switch (name) {
                     case "type":
-                        mType.write(jsonReader.nextInt());
+                        mType.write(jsonReader.nextString());
                         break;
                     case "timestamp":
                         mTimestamp.write(jsonReader.nextLong());
@@ -153,9 +152,9 @@
             return new DiagnosticJson(
                     mType.get(), mTimestamp.get(), mIntValues, mFloatValues, mDtc.get(null));
         }
+    }
 
-        public static DiagnosticJson build(JsonReader jsonReader) throws IOException {
-            return new Builder(jsonReader).build();
-        }
+    public static DiagnosticJson build(JsonReader jsonReader) throws IOException {
+        return new Builder(jsonReader).build();
     }
 }
diff --git a/vehicle-hal-support-lib/src/com/android/car/vehiclehal/DiagnosticJsonReader.java b/vehicle-hal-support-lib/src/com/android/car/vehiclehal/DiagnosticJsonReader.java
index 526018c..5dd6a66 100644
--- a/vehicle-hal-support-lib/src/com/android/car/vehiclehal/DiagnosticJsonReader.java
+++ b/vehicle-hal-support-lib/src/com/android/car/vehiclehal/DiagnosticJsonReader.java
@@ -25,8 +25,8 @@
 import java.io.IOException;
 
 public class DiagnosticJsonReader {
-    public static final int FRAME_TYPE_LIVE = 1;
-    public static final int FRAME_TYPE_FREEZE = 2;
+    public static final String FRAME_TYPE_LIVE = "live";
+    public static final String FRAME_TYPE_FREEZE = "freeze";
 
     private final DiagnosticEventBuilder mLiveFrameBuilder;
     private final DiagnosticEventBuilder mFreezeFrameBuilder;
@@ -50,7 +50,7 @@
     }
 
     public VehiclePropValue build(JsonReader jsonReader) throws IOException {
-        DiagnosticJson diagnosticJson = DiagnosticJson.Builder.build(jsonReader);
+        DiagnosticJson diagnosticJson = DiagnosticJson.build(jsonReader);
         switch (diagnosticJson.type) {
             case FRAME_TYPE_LIVE:
                 return diagnosticJson.build(mLiveFrameBuilder);