Merge "Merge android.util.imetracing into com.android.internal.inputmethod"
diff --git a/core/java/android/inputmethodservice/InputMethodService.java b/core/java/android/inputmethodservice/InputMethodService.java
index 42fa9fb..6e4491e 100644
--- a/core/java/android/inputmethodservice/InputMethodService.java
+++ b/core/java/android/inputmethodservice/InputMethodService.java
@@ -94,7 +94,6 @@
 import android.util.Log;
 import android.util.PrintWriterPrinter;
 import android.util.Printer;
-import android.util.imetracing.ImeTracing;
 import android.util.proto.ProtoOutputStream;
 import android.view.Gravity;
 import android.view.KeyCharacterMap;
@@ -133,6 +132,7 @@
 import com.android.internal.annotations.GuardedBy;
 import com.android.internal.inputmethod.IInputContentUriToken;
 import com.android.internal.inputmethod.IInputMethodPrivilegedOperations;
+import com.android.internal.inputmethod.ImeTracing;
 import com.android.internal.inputmethod.InputMethodPrivilegedOperations;
 import com.android.internal.inputmethod.InputMethodPrivilegedOperationsRegistry;
 import com.android.internal.view.IInlineSuggestionsRequestCallback;
diff --git a/core/java/android/inputmethodservice/RemoteInputConnection.java b/core/java/android/inputmethodservice/RemoteInputConnection.java
index 9ab8ab6..752b780 100644
--- a/core/java/android/inputmethodservice/RemoteInputConnection.java
+++ b/core/java/android/inputmethodservice/RemoteInputConnection.java
@@ -22,8 +22,6 @@
 import android.annotation.Nullable;
 import android.os.Bundle;
 import android.os.Handler;
-import android.util.imetracing.ImeTracing;
-import android.util.imetracing.InputConnectionHelper;
 import android.util.proto.ProtoOutputStream;
 import android.view.KeyEvent;
 import android.view.inputmethod.CompletionInfo;
@@ -39,6 +37,8 @@
 import com.android.internal.inputmethod.CancellationGroup;
 import com.android.internal.inputmethod.Completable;
 import com.android.internal.inputmethod.IInputContextInvoker;
+import com.android.internal.inputmethod.ImeTracing;
+import com.android.internal.inputmethod.InputConnectionProtoDumper;
 import com.android.internal.view.IInputContext;
 import com.android.internal.view.IInputMethod;
 
@@ -93,8 +93,8 @@
 
         final AbstractInputMethodService inputMethodService = mInputMethodService.get();
         if (inputMethodService != null && ImeTracing.getInstance().isEnabled()) {
-            ProtoOutputStream icProto = InputConnectionHelper.buildGetTextAfterCursorProto(length,
-                    flags, result);
+            ProtoOutputStream icProto = InputConnectionProtoDumper.buildGetTextAfterCursorProto(
+                    length, flags, result);
             ImeTracing.getInstance().triggerServiceDump(TAG + "#getTextAfterCursor",
                     inputMethodService, icProto);
         }
@@ -118,8 +118,8 @@
 
         final AbstractInputMethodService inputMethodService = mInputMethodService.get();
         if (inputMethodService != null && ImeTracing.getInstance().isEnabled()) {
-            ProtoOutputStream icProto = InputConnectionHelper.buildGetTextBeforeCursorProto(length,
-                    flags, result);
+            ProtoOutputStream icProto = InputConnectionProtoDumper.buildGetTextBeforeCursorProto(
+                    length, flags, result);
             ImeTracing.getInstance().triggerServiceDump(TAG + "#getTextBeforeCursor",
                     inputMethodService, icProto);
         }
@@ -143,7 +143,7 @@
 
         final AbstractInputMethodService inputMethodService = mInputMethodService.get();
         if (inputMethodService != null && ImeTracing.getInstance().isEnabled()) {
-            ProtoOutputStream icProto = InputConnectionHelper.buildGetSelectedTextProto(flags,
+            ProtoOutputStream icProto = InputConnectionProtoDumper.buildGetSelectedTextProto(flags,
                     result);
             ImeTracing.getInstance().triggerServiceDump(TAG + "#getSelectedText",
                     inputMethodService, icProto);
@@ -182,7 +182,7 @@
 
         final AbstractInputMethodService inputMethodService = mInputMethodService.get();
         if (inputMethodService != null && ImeTracing.getInstance().isEnabled()) {
-            ProtoOutputStream icProto = InputConnectionHelper.buildGetSurroundingTextProto(
+            ProtoOutputStream icProto = InputConnectionProtoDumper.buildGetSurroundingTextProto(
                     beforeLength, afterLength, flags, result);
             ImeTracing.getInstance().triggerServiceDump(TAG + "#getSurroundingText",
                     inputMethodService, icProto);
@@ -203,7 +203,7 @@
 
         final AbstractInputMethodService inputMethodService = mInputMethodService.get();
         if (inputMethodService != null && ImeTracing.getInstance().isEnabled()) {
-            ProtoOutputStream icProto = InputConnectionHelper.buildGetCursorCapsModeProto(
+            ProtoOutputStream icProto = InputConnectionProtoDumper.buildGetCursorCapsModeProto(
                     reqModes, result);
             ImeTracing.getInstance().triggerServiceDump(TAG + "#getCursorCapsMode",
                     inputMethodService, icProto);
@@ -224,7 +224,7 @@
 
         final AbstractInputMethodService inputMethodService = mInputMethodService.get();
         if (inputMethodService != null && ImeTracing.getInstance().isEnabled()) {
-            ProtoOutputStream icProto = InputConnectionHelper.buildGetExtractedTextProto(
+            ProtoOutputStream icProto = InputConnectionProtoDumper.buildGetExtractedTextProto(
                     request, flags, result);
             ImeTracing.getInstance().triggerServiceDump(TAG + "#getExtractedText",
                     inputMethodService, icProto);
diff --git a/core/java/android/util/imetracing/OWNERS b/core/java/android/util/imetracing/OWNERS
deleted file mode 100644
index 885fd0a..0000000
--- a/core/java/android/util/imetracing/OWNERS
+++ /dev/null
@@ -1,3 +0,0 @@
-set noparent
-
-include /services/core/java/com/android/server/inputmethod/OWNERS
diff --git a/core/java/android/view/InsetsController.java b/core/java/android/view/InsetsController.java
index 6f915c9..1a9b34e 100644
--- a/core/java/android/view/InsetsController.java
+++ b/core/java/android/view/InsetsController.java
@@ -45,7 +45,6 @@
 import android.util.Log;
 import android.util.Pair;
 import android.util.SparseArray;
-import android.util.imetracing.ImeTracing;
 import android.util.proto.ProtoOutputStream;
 import android.view.InsetsSourceConsumer.ShowResult;
 import android.view.InsetsState.InternalInsetsType;
@@ -61,6 +60,7 @@
 
 import com.android.internal.annotations.VisibleForTesting;
 import com.android.internal.graphics.SfVsyncFrameCallbackProvider;
+import com.android.internal.inputmethod.ImeTracing;
 
 import java.io.PrintWriter;
 import java.lang.annotation.Retention;
diff --git a/core/java/android/view/InsetsSourceConsumer.java b/core/java/android/view/InsetsSourceConsumer.java
index ee33541..bf9de39 100644
--- a/core/java/android/view/InsetsSourceConsumer.java
+++ b/core/java/android/view/InsetsSourceConsumer.java
@@ -36,13 +36,13 @@
 import android.graphics.Insets;
 import android.graphics.Rect;
 import android.util.Log;
-import android.util.imetracing.ImeTracing;
 import android.util.proto.ProtoOutputStream;
 import android.view.InsetsState.InternalInsetsType;
 import android.view.SurfaceControl.Transaction;
 import android.view.WindowInsets.Type.InsetsType;
 
 import com.android.internal.annotations.VisibleForTesting;
+import com.android.internal.inputmethod.ImeTracing;
 
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java
index 3bf8b52..2df02d2 100644
--- a/core/java/android/view/ViewRootImpl.java
+++ b/core/java/android/view/ViewRootImpl.java
@@ -151,7 +151,6 @@
 import android.util.SparseArray;
 import android.util.TimeUtils;
 import android.util.TypedValue;
-import android.util.imetracing.ImeTracing;
 import android.util.proto.ProtoOutputStream;
 import android.view.InputDevice.InputSourceClass;
 import android.view.InsetsState.InternalInsetsType;
@@ -192,6 +191,7 @@
 import com.android.internal.annotations.GuardedBy;
 import com.android.internal.annotations.VisibleForTesting;
 import com.android.internal.graphics.drawable.BackgroundBlurDrawable;
+import com.android.internal.inputmethod.ImeTracing;
 import com.android.internal.inputmethod.InputMethodDebug;
 import com.android.internal.os.IResultReceiver;
 import com.android.internal.os.SomeArgs;
diff --git a/core/java/android/view/inputmethod/InputMethodManager.java b/core/java/android/view/inputmethod/InputMethodManager.java
index 42d77cd..625ede2 100644
--- a/core/java/android/view/inputmethod/InputMethodManager.java
+++ b/core/java/android/view/inputmethod/InputMethodManager.java
@@ -18,7 +18,6 @@
 
 import static android.Manifest.permission.INTERACT_ACROSS_USERS_FULL;
 import static android.Manifest.permission.WRITE_SECURE_SETTINGS;
-import static android.util.imetracing.ImeTracing.PROTO_ARG;
 import static android.view.inputmethod.InputMethodEditorTraceProto.InputMethodClientsTraceProto.ClientSideProto.DISPLAY_ID;
 import static android.view.inputmethod.InputMethodEditorTraceProto.InputMethodClientsTraceProto.ClientSideProto.EDITOR_INFO;
 import static android.view.inputmethod.InputMethodEditorTraceProto.InputMethodClientsTraceProto.ClientSideProto.IME_INSETS_SOURCE_CONSUMER;
@@ -73,7 +72,6 @@
 import android.util.PrintWriterPrinter;
 import android.util.Printer;
 import android.util.SparseArray;
-import android.util.imetracing.ImeTracing;
 import android.util.proto.ProtoOutputStream;
 import android.view.Display;
 import android.view.ImeFocusController;
@@ -88,6 +86,7 @@
 import android.view.autofill.AutofillManager;
 
 import com.android.internal.annotations.GuardedBy;
+import com.android.internal.inputmethod.ImeTracing;
 import com.android.internal.inputmethod.InputMethodDebug;
 import com.android.internal.inputmethod.InputMethodPrivilegedOperationsRegistry;
 import com.android.internal.inputmethod.SoftInputShowHideReason;
@@ -3192,7 +3191,7 @@
         }
 
         for (String arg : args) {
-            if (arg.equals(PROTO_ARG)) {
+            if (arg.equals(ImeTracing.PROTO_ARG)) {
                 final ProtoOutputStream proto = new ProtoOutputStream(fd);
                 dumpDebug(proto, null /* icProto */);
                 proto.flush();
diff --git a/core/java/com/android/internal/inputmethod/EditableInputConnection.java b/core/java/com/android/internal/inputmethod/EditableInputConnection.java
index 6d4134a..410e68b 100644
--- a/core/java/com/android/internal/inputmethod/EditableInputConnection.java
+++ b/core/java/com/android/internal/inputmethod/EditableInputConnection.java
@@ -27,7 +27,6 @@
 import android.text.Selection;
 import android.text.method.KeyListener;
 import android.util.Log;
-import android.util.imetracing.InputConnectionHelper;
 import android.util.proto.ProtoOutputStream;
 import android.view.inputmethod.BaseInputConnection;
 import android.view.inputmethod.CompletionInfo;
@@ -261,7 +260,7 @@
         final long token = proto.start(fieldId);
         CharSequence editableText = mTextView.getText();
         CharSequence selectedText = getSelectedText(0 /* flags */);
-        if (InputConnectionHelper.DUMP_TEXT) {
+        if (InputConnectionProtoDumper.DUMP_TEXT) {
             if (editableText != null) {
                 proto.write(EDITABLE_TEXT, editableText.toString());
             }
diff --git a/core/java/android/util/imetracing/ImeTracing.java b/core/java/com/android/internal/inputmethod/ImeTracing.java
similarity index 98%
rename from core/java/android/util/imetracing/ImeTracing.java
rename to core/java/com/android/internal/inputmethod/ImeTracing.java
index 4696ae3..840e270 100644
--- a/core/java/android/util/imetracing/ImeTracing.java
+++ b/core/java/com/android/internal/inputmethod/ImeTracing.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package android.util.imetracing;
+package com.android.internal.inputmethod;
 
 import android.annotation.Nullable;
 import android.app.ActivityThread;
@@ -36,8 +36,6 @@
  * An abstract class that declares the methods for ime trace related operations - enable trace,
  * schedule trace and add new trace to buffer. Both the client and server side classes can use
  * it by getting an implementation through {@link ImeTracing#getInstance()}.
- *
- * @hide
  */
 public abstract class ImeTracing {
 
diff --git a/core/java/android/util/imetracing/ImeTracingClientImpl.java b/core/java/com/android/internal/inputmethod/ImeTracingClientImpl.java
similarity index 95%
rename from core/java/android/util/imetracing/ImeTracingClientImpl.java
rename to core/java/com/android/internal/inputmethod/ImeTracingClientImpl.java
index 5a57a6a..632e1d3 100644
--- a/core/java/android/util/imetracing/ImeTracingClientImpl.java
+++ b/core/java/com/android/internal/inputmethod/ImeTracingClientImpl.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package android.util.imetracing;
+package com.android.internal.inputmethod;
 
 import android.annotation.NonNull;
 import android.inputmethodservice.AbstractInputMethodService;
@@ -27,7 +27,7 @@
 import java.io.PrintWriter;
 
 /**
- * @hide
+ * An implementation of {@link ImeTracing} for non system_server processes.
  */
 class ImeTracingClientImpl extends ImeTracing {
     ImeTracingClientImpl() throws ServiceNotFoundException, RemoteException {
diff --git a/core/java/android/util/imetracing/ImeTracingServerImpl.java b/core/java/com/android/internal/inputmethod/ImeTracingServerImpl.java
similarity index 98%
rename from core/java/android/util/imetracing/ImeTracingServerImpl.java
rename to core/java/com/android/internal/inputmethod/ImeTracingServerImpl.java
index 06e4c50..57d03f0 100644
--- a/core/java/android/util/imetracing/ImeTracingServerImpl.java
+++ b/core/java/com/android/internal/inputmethod/ImeTracingServerImpl.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package android.util.imetracing;
+package com.android.internal.inputmethod;
 
 import static android.os.Build.IS_USER;
 
@@ -37,7 +37,7 @@
 import java.io.PrintWriter;
 
 /**
- * @hide
+ * An implementation of {@link ImeTracing} for the system_server process.
  */
 class ImeTracingServerImpl extends ImeTracing {
     private static final String TRACE_DIRNAME = "/data/misc/wmtrace/";
diff --git a/core/java/android/util/imetracing/InputConnectionHelper.java b/core/java/com/android/internal/inputmethod/InputConnectionProtoDumper.java
similarity index 95%
rename from core/java/android/util/imetracing/InputConnectionHelper.java
rename to core/java/com/android/internal/inputmethod/InputConnectionProtoDumper.java
index 39f1e01..213337a 100644
--- a/core/java/android/util/imetracing/InputConnectionHelper.java
+++ b/core/java/com/android/internal/inputmethod/InputConnectionProtoDumper.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package android.util.imetracing;
+package com.android.internal.inputmethod;
 
 import static android.view.inputmethod.InputConnectionCallProto.GET_CURSOR_CAPS_MODE;
 import static android.view.inputmethod.InputConnectionCallProto.GET_EXTRACTED_TEXT;
@@ -41,13 +41,12 @@
 /**
  * Helper class for constructing {@link android.view.inputmethod.InputConnection} dumps, which are
  * integrated into {@link ImeTracing}.
- * @hide
  */
-public class InputConnectionHelper {
-    static final String TAG = "InputConnectionHelper";
+public final class InputConnectionProtoDumper {
+    static final String TAG = "InputConnectionProtoDumper";
     public static final boolean DUMP_TEXT = false;
 
-    private InputConnectionHelper() {}
+    private InputConnectionProtoDumper() {}
 
     /**
      * Builder for InputConnectionCallProto to hold
@@ -139,7 +138,7 @@
      * @param flags Supplies additional options controlling how the text is
      * returned. May be either {@code 0} or
      * {@link android.view.inputmethod.InputConnection#GET_TEXT_WITH_STYLES}.
-     * @param result an {@link android.view.inputmethod.SurroundingText} object describing the
+     * @param result an {@link SurroundingText} object describing the
      * surrounding text and state of selection, or null if the input connection is no longer valid,
      * or the editor can't comply with the request for some reason, or the application does not
      * implement this method. The length of the returned text might be less than the sum of
@@ -199,10 +198,10 @@
      * data.
      *
      * @param request Description of how the text should be returned.
-     * {@link android.view.inputmethod.ExtractedTextRequest}
+     * {@link ExtractedTextRequest}
      * @param flags Additional options to control the client, either {@code 0} or
      * {@link android.view.inputmethod.InputConnection#GET_EXTRACTED_TEXT_MONITOR}.
-     * @param result an {@link android.view.inputmethod.ExtractedText}
+     * @param result an {@link ExtractedText}
      * object describing the state of the text view and containing the
      * extracted text itself, or null if the input connection is no
      * longer valid of the editor can't comply with the request for
diff --git a/core/java/com/android/internal/view/IInputConnectionWrapper.java b/core/java/com/android/internal/view/IInputConnectionWrapper.java
index 783d088..1f18bb2b 100644
--- a/core/java/com/android/internal/view/IInputConnectionWrapper.java
+++ b/core/java/com/android/internal/view/IInputConnectionWrapper.java
@@ -27,8 +27,6 @@
 import android.os.RemoteException;
 import android.os.Trace;
 import android.util.Log;
-import android.util.imetracing.ImeTracing;
-import android.util.imetracing.InputConnectionHelper;
 import android.util.proto.ProtoOutputStream;
 import android.view.KeyEvent;
 import android.view.View;
@@ -49,6 +47,8 @@
 import com.android.internal.inputmethod.IExtractedTextResultCallback;
 import com.android.internal.inputmethod.IIntResultCallback;
 import com.android.internal.inputmethod.ISurroundingTextResultCallback;
+import com.android.internal.inputmethod.ImeTracing;
+import com.android.internal.inputmethod.InputConnectionProtoDumper;
 import com.android.internal.os.SomeArgs;
 
 import java.lang.ref.WeakReference;
@@ -366,7 +366,7 @@
                         result = ic.getTextAfterCursor(msg.arg1, msg.arg2);
                     }
                     if (ImeTracing.getInstance().isEnabled()) {
-                        icProto = InputConnectionHelper.buildGetTextAfterCursorProto(msg.arg1,
+                        icProto = InputConnectionProtoDumper.buildGetTextAfterCursorProto(msg.arg1,
                                 msg.arg2, result);
                         ImeTracing.getInstance().triggerClientDump(
                                 TAG + "#getTextAfterCursor", mParentInputMethodManager, icProto);
@@ -396,7 +396,7 @@
                         result = ic.getTextBeforeCursor(msg.arg1, msg.arg2);
                     }
                     if (ImeTracing.getInstance().isEnabled()) {
-                        icProto = InputConnectionHelper.buildGetTextBeforeCursorProto(msg.arg1,
+                        icProto = InputConnectionProtoDumper.buildGetTextBeforeCursorProto(msg.arg1,
                                 msg.arg2, result);
                         ImeTracing.getInstance().triggerClientDump(
                                 TAG + "#getTextBeforeCursor", mParentInputMethodManager, icProto);
@@ -426,7 +426,8 @@
                         result = ic.getSelectedText(msg.arg1);
                     }
                     if (ImeTracing.getInstance().isEnabled()) {
-                        icProto = InputConnectionHelper.buildGetSelectedTextProto(msg.arg1, result);
+                        icProto = InputConnectionProtoDumper.buildGetSelectedTextProto(msg.arg1,
+                                result);
                         ImeTracing.getInstance().triggerClientDump(
                                 TAG + "#getSelectedText", mParentInputMethodManager, icProto);
                     }
@@ -459,8 +460,8 @@
                         result = ic.getSurroundingText(beforeLength, afterLength, flags);
                     }
                     if (ImeTracing.getInstance().isEnabled()) {
-                        icProto = InputConnectionHelper.buildGetSurroundingTextProto(beforeLength,
-                                afterLength, flags, result);
+                        icProto = InputConnectionProtoDumper.buildGetSurroundingTextProto(
+                                beforeLength, afterLength, flags, result);
                         ImeTracing.getInstance().triggerClientDump(
                                 TAG + "#getSurroundingText", mParentInputMethodManager, icProto);
                     }
@@ -489,7 +490,7 @@
                         result = ic.getCursorCapsMode(msg.arg1);
                     }
                     if (ImeTracing.getInstance().isEnabled()) {
-                        icProto = InputConnectionHelper.buildGetCursorCapsModeProto(msg.arg1,
+                        icProto = InputConnectionProtoDumper.buildGetCursorCapsModeProto(msg.arg1,
                                 result);
                         ImeTracing.getInstance().triggerClientDump(
                                 TAG + "#getCursorCapsMode", mParentInputMethodManager, icProto);
@@ -521,7 +522,7 @@
                         result = ic.getExtractedText(request, msg.arg1);
                     }
                     if (ImeTracing.getInstance().isEnabled()) {
-                        icProto = InputConnectionHelper.buildGetExtractedTextProto(request,
+                        icProto = InputConnectionProtoDumper.buildGetExtractedTextProto(request,
                                 msg.arg1, result);
                         ImeTracing.getInstance().triggerClientDump(
                                 TAG + "#getExtractedText", mParentInputMethodManager, icProto);
diff --git a/services/core/java/com/android/server/inputmethod/InputMethodManagerService.java b/services/core/java/com/android/server/inputmethod/InputMethodManagerService.java
index 7955ecac..de78bec 100644
--- a/services/core/java/com/android/server/inputmethod/InputMethodManagerService.java
+++ b/services/core/java/com/android/server/inputmethod/InputMethodManagerService.java
@@ -44,7 +44,6 @@
 import static android.server.inputmethod.InputMethodManagerServiceProto.SHOW_IME_WITH_HARD_KEYBOARD;
 import static android.server.inputmethod.InputMethodManagerServiceProto.SHOW_REQUESTED;
 import static android.server.inputmethod.InputMethodManagerServiceProto.SYSTEM_READY;
-import static android.util.imetracing.ImeTracing.IME_TRACING_FROM_IMMS;
 import static android.view.Display.DEFAULT_DISPLAY;
 import static android.view.Display.INVALID_DISPLAY;
 import static android.view.WindowManager.DISPLAY_IME_POLICY_HIDE;
@@ -124,7 +123,6 @@
 import android.util.PrintWriterPrinter;
 import android.util.Printer;
 import android.util.Slog;
-import android.util.imetracing.ImeTracing;
 import android.util.proto.ProtoOutputStream;
 import android.view.IWindowManager;
 import android.view.InputChannel;
@@ -160,6 +158,7 @@
 import com.android.internal.inputmethod.IInputContentUriToken;
 import com.android.internal.inputmethod.IInputMethodPrivilegedOperations;
 import com.android.internal.inputmethod.IVoidResultCallback;
+import com.android.internal.inputmethod.ImeTracing;
 import com.android.internal.inputmethod.InputMethodDebug;
 import com.android.internal.inputmethod.SoftInputShowHideReason;
 import com.android.internal.inputmethod.StartInputFlags;
@@ -3927,7 +3926,7 @@
     @BinderThread
     @Override
     public void startProtoDump(byte[] protoDump, int source, String where) {
-        if (protoDump == null && source != IME_TRACING_FROM_IMMS) {
+        if (protoDump == null && source != ImeTracing.IME_TRACING_FROM_IMMS) {
             // Dump not triggered from IMMS, but no proto information provided.
             return;
         }
@@ -3954,7 +3953,7 @@
                 proto.write(InputMethodServiceTraceProto.INPUT_METHOD_SERVICE, protoDump);
                 proto.end(service_token);
                 break;
-            case IME_TRACING_FROM_IMMS:
+            case ImeTracing.IME_TRACING_FROM_IMMS:
                 final long managerservice_token =
                         proto.start(InputMethodManagerServiceTraceFileProto.ENTRY);
                 proto.write(InputMethodManagerServiceTraceProto.ELAPSED_REALTIME_NANOS,