Merge "Fix errorprone warnings that should be errors"
diff --git a/Cronet/Android.bp b/Cronet/Android.bp
new file mode 100644
index 0000000..e699656
--- /dev/null
+++ b/Cronet/Android.bp
@@ -0,0 +1,103 @@
+// Copyright (C) 2019 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.
+
+package {
+    default_applicable_licenses: ["Android-Apache-2.0"],
+}
+
+java_import {
+    name: "cronet_impl_native_java",
+    jars: ["prebuilt/cronet_impl_native_java.jar"],
+    visibility: ["//visibility:private"],
+    apex_available: ["com.android.tethering"],
+    min_sdk_version: "29",
+}
+
+java_import {
+    name: "cronet_impl_common_java",
+    jars: ["prebuilt/cronet_impl_common_java.jar"],
+    visibility: ["//visibility:private"],
+    apex_available: ["com.android.tethering"],
+    min_sdk_version: "29",
+}
+
+java_import {
+    name: "cronet_impl_platform_java",
+    jars: ["prebuilt/cronet_impl_platform_java.jar"],
+    visibility: ["//visibility:private"],
+    apex_available: ["com.android.tethering"],
+    min_sdk_version: "29",
+}
+
+cc_prebuilt_library_shared {
+    name: "libcronet.80.0.3986.0",
+    shared_libs: [
+        "libandroid",
+        "libc",
+        "libdl",
+        "liblog",
+        "libm",
+    ],
+    stl: "libc++_static",
+    target: {
+        android_arm64: {
+            srcs: ["prebuilt/libs/arm64-v8a/libcronet.80.0.3986.0.so"],
+        },
+        android_arm: {
+            srcs: ["prebuilt/libs/armeabi-v7a/libcronet.80.0.3986.0.so"],
+        },
+        android_x86_64: {
+            srcs: ["prebuilt/libs/x86_64/libcronet.80.0.3986.0.so"],
+        },
+        android_x86: {
+            srcs: ["prebuilt/libs/x86/libcronet.80.0.3986.0.so"],
+        },
+    },
+    // These are already stripped, and restripping them just issues diagnostics.
+    strip: {
+        none: true,
+    },
+    apex_available: ["com.android.tethering"],
+    min_sdk_version: "29",
+}
+
+genrule {
+    name: "cronet_api-src",
+    srcs: ["prebuilt/cronet_api-src.jar"],
+    cmd: "cp $(in) $(out)",
+    out: [
+        "cronet_api-src.srcjar",
+    ],
+}
+
+java_sdk_library {
+    name: "framework-cronet",
+    defaults: ["framework-module-defaults"],
+    srcs: [
+        ":cronet_api-src",
+    ],
+    libs: [
+        "androidx.annotation_annotation",
+    ],
+    static_libs: [
+        "cronet_impl_common_java",
+        "cronet_impl_native_java",
+        "cronet_impl_platform_java",
+    ],
+    apex_available: ["com.android.tethering"],
+    unsafe_ignore_missing_latest_api: true,
+    dist_group: "android",
+    // cronet is used as a shared library.
+    shared_library: true,
+}
diff --git a/Cronet/AndroidManifest.xml b/Cronet/AndroidManifest.xml
new file mode 100644
index 0000000..f3b3c3e
--- /dev/null
+++ b/Cronet/AndroidManifest.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+ * Copyright (C) 2019 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.
+ */
+-->
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+  package="com.android.cronet"
+  android:versionCode="11"
+  android:versionName="R-initial">
+</manifest>
diff --git a/Cronet/OWNERS b/Cronet/OWNERS
new file mode 100644
index 0000000..62c5737
--- /dev/null
+++ b/Cronet/OWNERS
@@ -0,0 +1,2 @@
+set noparent
+file:platform/packages/modules/Connectivity:master:/OWNERS_core_networking
diff --git a/Cronet/TEST_MAPPING b/Cronet/TEST_MAPPING
new file mode 100644
index 0000000..815d496
--- /dev/null
+++ b/Cronet/TEST_MAPPING
@@ -0,0 +1,7 @@
+{
+  "postsubmit": [
+    {
+      "name": "CronetApiTest"
+    }
+  ]
+}
diff --git a/Cronet/apex/Android.bp b/Cronet/apex/Android.bp
new file mode 100644
index 0000000..64362da
--- /dev/null
+++ b/Cronet/apex/Android.bp
@@ -0,0 +1,53 @@
+// Copyright (C) 2019 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.
+
+package {
+    default_applicable_licenses: ["Android-Apache-2.0"],
+}
+
+// CronetApexDefaults uses apex_defaults cronet_apex_defaults specifies. cronet_apex_defaults
+// could be "CronetApexDefaultsEnabled" or "CronetApexDefaultsDisabled" depending on the branch.
+cronet_apex_defaults = "CronetApexDefaultsEnabled"
+// This is a placeholder comment to avoid merge conflicts
+// as cronet_apex_defaults may have different values
+// depending on the branch
+
+apex_defaults {
+    name: "CronetApexDefaults",
+    defaults: [cronet_apex_defaults],
+}
+
+apex_defaults {
+    name: "CronetApexDefaultsEnabled",
+    jni_libs: ["libcronet.80.0.3986.0"],
+    java_libs: ["framework-cronet"],
+}
+
+apex_defaults {
+    name: "CronetApexDefaultsDisabled",
+}
+
+// TODO: Remove cronet apex after com.android.cronet is removed from PRODUCT_PACKAGES
+apex {
+    name: "com.android.cronet",
+    key: "com.android.cronet.key",
+    updatable: false,
+    manifest: "manifest.json",
+}
+
+apex_key {
+    name: "com.android.cronet.key",
+    public_key: "com.android.cronet.avbpubkey",
+    private_key: "com.android.cronet.pem",
+}
diff --git a/Cronet/apex/AndroidManifest.xml b/Cronet/apex/AndroidManifest.xml
new file mode 100644
index 0000000..650badc
--- /dev/null
+++ b/Cronet/apex/AndroidManifest.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ * Copyright (C) 2019 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.
+ -->
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+  package="com.android.cronet">
+  <!-- APEX does not have classes.dex -->
+  <application android:hasCode="false" />
+  <uses-sdk
+      android:minSdkVersion="29"
+  />
+</manifest>
diff --git a/Cronet/apex/com.android.cronet.avbpubkey b/Cronet/apex/com.android.cronet.avbpubkey
new file mode 100644
index 0000000..38aebe0
--- /dev/null
+++ b/Cronet/apex/com.android.cronet.avbpubkey
Binary files differ
diff --git a/Cronet/apex/com.android.cronet.pem b/Cronet/apex/com.android.cronet.pem
new file mode 100644
index 0000000..438653f
--- /dev/null
+++ b/Cronet/apex/com.android.cronet.pem
@@ -0,0 +1,51 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIIJKAIBAAKCAgEAqpxkMMK57w+fzxLcwF+mEQEbKrDFWXYHL697tv8DBu/aL2tM
+LRHiKFdov0Fsnup++bd9oojI+6qyAyJh4I8nvzKc4onM0eXL++0FPZuiTv6a6r7K
+wyn+NVT2X/0yr2Hs5NL1rKXFmJPAfMoRCW9vQdi5xMlM9QN8mNaqSWddKtrQM3yC
+HDLy2zZd7MlQ1UTnmDqGCG0AVtuM34X0v1o0wAL7UwNdzOARtmnuWzcL5vBwAJg8
+eXFZH5Pt5rITxbU+eYw/V+/sUYyI0Anrj4GG+oyWQxgdxz+FwdpSAt14xtw5IDl7
+pTYqEIm+TQKnWe6NzVWfI89s2nh85hgOSgugfpS4symbfbZd4qNSOcHGQTB1ssvf
+vdYGF1WRFA20VEEOMzTMYsvcfModKNVCpibzHu/SYDIJGL0JyJWu2eIE+mrn3lLD
+nwDZ2P39YyVNpritEkbk5qugaLh9mIFqAD4L4niYLu/AtYq+CXzd7yroM2ycleRq
+JRNsCIUx3A/Z5vKx7IJaMb7Pwap3DAe3u3/2L9NCL6oo074Rf7fh5xkDF4Dua3Gg
+kPw+k183jAQECHORstdVlgVZlMxPif4lxQ8uCHJWxyDsgShPgzMtEjJyrJJQyDon
+X8pN4xqb+WX30XNYBK5sp7x6mc8w4rdAGExhUSdmTS0J/lcfar6A6/j/yg8CAwEA
+AQKCAgAiYafTJ7q+kWB8I2n3Ho9hx95IqRzsHVvvYSbGRve+MyG+App0TrFLvemu
++SlBkTILcs3Prk8KYGjFNu2QimjRIAr7oBd1iSClYSt4Md/wmWBwxAgqclD3QGry
+Bx1quIo7xsOZikKar9PPkg0C4MED/P/ax1JJ4ez/A+uHJVxiIXxpk8LImf/U60zc
+RemTQPKG++w80HKMDmyCMwWSdkRBGZi6Luh9O/51yz0shphQbs2zYPp24r+6HF6J
+6gMQCalQZ1Hwj7oI6RA9FHKzFcA0x5YUaUy+9W8oFK4IQ8duE70zYEIplhO+B3Qh
+ItLEzc0nvwR1+/wMvtE0sU5X36X06AFhkcpjyAdmNVMiG91KGrZqruOufrOQu4VE
+njJ5VEUvWOr+6inZDWIdT3NQvwJCZkT4Vvn9WBAoKM8pkpfhY5HTGq4ttX7McHjF
+p7YBFbHRpzO+OfSwM7f/xq2WLcjOKgsFgv17CUo7KQo1rqWPD/4IKJKW5n6dzDwX
+RRF4dehUMYK2UNAbcN9S8O8nJGcJfb76FExjZtGLrhlDgawLmu71bbq5afot/IQ9
+JuB4KxG59t2JAHGNgM7WfFvcL1Zp1D+kzDEHYKYkyDJh3qB7Tw+StlAQFSQjNBX/
+c1I6DUl68rSHOc2LF4oK8ID1oe/URMg2YoaLlF8un2nGZBfwGQKCAQEA20Ie5hBC
+H8W1vTtyI4jOdn/h11RL8UuLN0xtXYunYCzD4+gAEKsAShbhKnvINThZaoxQ2sxy
+9EB+2Ob8R9muYAxR4Eu4tDBWedYmJEl74MflLMFnIrtFIKy4F54zk7J6uNG3cHRo
+yTpoIcmK101xzz1Ed9Dd0XL6rpegnWIuVlWV4slGAf1l3h6pycfx+HCYcCboz6Nq
+JMA0ioKY0fgz5q+mb7IIObN8JjGdLeBQtNh3fcXby08AT/03psKhjgBsbuyTs7s7
+E3n+jxJ3p4xHP/psU3D/HgKWewp48AJNHY8MLY+Kp0KNoQMSQKHKqsiluGTCKLTJ
+sCWg/2c8xf728wKCAQEAxzNdZ54e6WXexMMIsGoH+wVknTHiizuxN4ZqzY/nCM0M
+9heooChfMAFrq8XMC/6MXgiy5rBhl3H12HlG4S6cq3J07MsMR0N+sUFEobuZURB4
++CbEBebmXx1kymC6FrRG4JuKZWbQ8AKpfd28QO7x915safeq6FA8cILJn4oqBGqQ
+Y8TzMKtuaCzQGoBjSgiMpx1fo9Stl7+dpGiPNsnQEG+SEsXxKoZweJPsuK8G+ZgB
+8YARajLwFfgfsCNp/8fXjA98BYM8eSxURa7USUyCmY4hU3WIGG5qc0/C69Fl35ex
+YZG7XQo1DxW/+gWsdUbAFbI4y+iJ8SRpsFxtFYifdQKCAQA5DiW4PHbYibxXN8bl
+1E3VrEV6oSb57WyWwT6cXyD49+0pu095BuaWYQnK4lcg8j7iaQ0JQraPNNFNZB42
+HEEyIUKVGV9BFGsMXVujibPAtIPAd7t84DqG3Csziillv8YLnhccHk6+PoKmeCm3
+CSIaiZjtjN6MCF2PXUmgatIgCTltwG6FSgleGaCZL3yZ58LjPFzM23tdgN6rRHy7
+9tiaqQ6odi2JxlkCH1sFex/FT6cYhYpCh5ZPOldm/7LGnvmYi9uLo6cl1FMXq/iT
+Ev/feC0EMZ1Rk97QudLqsc6baIQEvxuXlswAICp5wyBX/MqTBzU3HoR1X/VbQOQh
+qc1dAoIBACLjNhqtsNBDzS480krDZz5phWOalwi3naQR4Ka760S5VOnM3vWd3H31
+4bul2sTHAiJ994c7oPv7M4mERAuwNDQ6yYunTDE2+vtkaPbCemmeLvGXKIG4HOTP
+qxVet3i+fiNcWnLD/Rfr/29R5GSi9LHUUbyFaeNiGhPCdDmC4zT+zOcMWWNOwvlv
+z8q0ba9LrAaguF1jJDwNjTh8L4jy84PNZpHvJPvDq/MSRUVbMieInd6EBYjJ/w55
+9GLO8QOhJnkbRSdaAr9eKixCIF/uDHmEUQXi8cEFpZMohwTyGZt9X82szlnPLdfE
+gWjykW/AwmeKXTQpN++J5xDCP0CkOvkCggEBAND4wviHue/+bqY9R5EAIDIZn6kx
+VCK9roebvGjq/Az5AM7IiyUQRANv+6CmeIlXCRBMbaAtgQxhvW5UodA1livgVuzR
+ElF7Br3wfikZ34oWY0Qu8fZI0ru4syAoTiGpaUPJJgStYi76dqne15usTRk/MvwP
+tJzqpkWUYcmNv3g/w92Wr1nIJYXlPKrANSSppRg0P/CAPOHkPxLF0RwC5yIZzC5C
+hiTXSE9AwCFllMRKInnbhUdy/L+xUL6mAbGVvD/DHE7Q2xmPSsdEX5nTZkhEnW/L
+TLLgbsy2+8ouvMJCSNaMq77jq7iCIMTogEfA5GX0UO2Kjf4pnjREOzNQg4I=
+-----END RSA PRIVATE KEY-----
diff --git a/Cronet/apex/com.android.cronet.pk8 b/Cronet/apex/com.android.cronet.pk8
new file mode 100644
index 0000000..a63d761
--- /dev/null
+++ b/Cronet/apex/com.android.cronet.pk8
Binary files differ
diff --git a/Cronet/apex/com.android.cronet.x509.pem b/Cronet/apex/com.android.cronet.x509.pem
new file mode 100644
index 0000000..c9cd874
--- /dev/null
+++ b/Cronet/apex/com.android.cronet.x509.pem
@@ -0,0 +1,35 @@
+-----BEGIN CERTIFICATE-----
+MIIGIzCCBAugAwIBAgIUKEbkVLro9rIJE3M71D8sgUIngUIwDQYJKoZIhvcNAQEL
+BQAwgZ8xCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMRYwFAYDVQQH
+DA1Nb3VudGFpbiBWaWV3MRAwDgYDVQQKDAdBbmRyb2lkMRAwDgYDVQQLDAdBbmRy
+b2lkMRswGQYDVQQDDBJjb20uYW5kcm9pZC5jcm9uZXQxIjAgBgkqhkiG9w0BCQEW
+E2FuZHJvaWRAYW5kcm9pZC5jb20wIBcNMTkxMjA1MDcwOTIxWhgPNDc1NzEwMzEw
+NzA5MjFaMIGfMQswCQYDVQQGEwJVUzETMBEGA1UECAwKQ2FsaWZvcm5pYTEWMBQG
+A1UEBwwNTW91bnRhaW4gVmlldzEQMA4GA1UECgwHQW5kcm9pZDEQMA4GA1UECwwH
+QW5kcm9pZDEbMBkGA1UEAwwSY29tLmFuZHJvaWQuY3JvbmV0MSIwIAYJKoZIhvcN
+AQkBFhNhbmRyb2lkQGFuZHJvaWQuY29tMIICIjANBgkqhkiG9w0BAQEFAAOCAg8A
+MIICCgKCAgEAwNXIHR2BeZl/R7tOXgC3KK71rrtK98zucfrNBNp/rUiFqiN527P4
+HLW+CAwnFJGLLzHhSbXiZLXyLS7FfPuMeiULUsv1mIVEVwVhtPvbodxwh5szxlVe
+iVf1WkIV90n2tZojTnhMsiEPt0EBWriPJstdO264snqg+oY9Dktxk4tXtTah/rUI
+KWPHeB0SWQMXZTKb30CVVHZfpG/HCXjUlVLx+14/X56EGi8fxd13q5c56qAybx73
+i6+Sm3+F/jcivDpATuPluvcPaZ4Tel9Nz5NjqjycyXBXh8f8azpN1GkJkltE116W
+ZT1iVIJoDAd540UXhW+TpjTeaEH5OeDOWorQM6nE1N9FMiyReprU7tz+HVmyD44Z
+ah43whi3gmwyjgzscW2Z0xGpgVoHgfz/RyBg5+w6p5AGPR0sewv6zr9HvQhpJsoj
+pl+HD9xcrdGb2yMiwm8RuH9dGW0Nos6p1LiXsxg6VBic3N7S+MGXo/dXdX39tkad
+tD+lNskJUJqyx70ynQtRI66YicyxsFv0BImBC+eGECT3hCgyyxnlvTAeRsVsEWtV
+Z+Xwf5M53/8uXkqGal7cC1bHEkG+0zsR8cc0U+22Nif9HQNIrsjEnybOlP6erV/M
+8yX9umVwDz5QlVKCYJFQOq+awSqR9KD9VX3xIRu8kB6aPtB4A7q3828CAwEAAaNT
+MFEwHQYDVR0OBBYEFBQBcdf/bfLa3knW1ukCOFOt++FtMB8GA1UdIwQYMBaAFBQB
+cdf/bfLa3knW1ukCOFOt++FtMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEL
+BQADggIBALG0r81xb6NwaGCF79SeDecbnDE1MbQ2+cRt+eU/Wl2SI2oQqbaa/WP7
+k3vsZvsBFI6r+ZBiKizpbT/N1Fx8pcoH7rsL0MoZRXaCZY6kQJLZN6AAvXEo4NR0
+p01zDvGibVk3z87R98IJHlDPU3NrljxxMCsaUxFEAjae4eS4j8G2TFm6DsTVTeqy
+zveh4NdZFsZSyUN8blChFC/7TytlizeSGNlXLMx8e/VAcxIw+wQPWLk5pNnk3TXu
+HcqwAryW/lt46+iVeTpF4ylFqYyab6Vmf9Vp6+HVatg7YkErJACeoeN4eRv6DfeY
+slMqa2i+W+veVAGP4VApg7iZE5RnNPPHn/80yATKAe0/AztoZpQWZ5g1IAnpCISg
+k65FHVhbkcKdjNQePOGwjictq21KaYFrbXfIwqpejxSqQdLMne02Dj/2kv0dU1jV
+JG9YxVWIpobauYD5mmZvN6PTYJWGQRAsIFFyWfhvnEiohGmVLNEQ3uRaue0yNMXc
+V2t8B81/jNGXwi06qxmjCMnMhucSCSFl2a2V5oiDEcVj4YbaJ+CEJPdopMhQwqab
+EgTkJBeEXoPFenToSIprL/YiuBNvvPETyTYN+hAXh3P7MSeWewkgGhpZhuyzT8F0
+vEo+nt5WhRWl0pEVLFLiOOXR+/LAB3aqrPEdd0NXvxiCb/QaZnCp
+-----END CERTIFICATE-----
diff --git a/Cronet/apex/manifest.json b/Cronet/apex/manifest.json
new file mode 100644
index 0000000..0301e9f
--- /dev/null
+++ b/Cronet/apex/manifest.json
@@ -0,0 +1,4 @@
+{
+  "name": "com.android.cronet",
+  "version": 1
+}
diff --git a/Cronet/api/current.txt b/Cronet/api/current.txt
new file mode 100644
index 0000000..21779bc
--- /dev/null
+++ b/Cronet/api/current.txt
@@ -0,0 +1,175 @@
+// Signature format: 2.0
+package org.chromium.net {
+
+  public abstract class CallbackException extends org.chromium.net.CronetException {
+    ctor protected CallbackException(String, Throwable);
+  }
+
+  public abstract class CronetEngine {
+    ctor public CronetEngine();
+    method public abstract java.net.URLStreamHandlerFactory createURLStreamHandlerFactory();
+    method public abstract byte[] getGlobalMetricsDeltas();
+    method public abstract String getVersionString();
+    method public abstract org.chromium.net.UrlRequest.Builder newUrlRequestBuilder(String, org.chromium.net.UrlRequest.Callback, java.util.concurrent.Executor);
+    method public abstract java.net.URLConnection openConnection(java.net.URL) throws java.io.IOException;
+    method public abstract void shutdown();
+    method public abstract void startNetLogToFile(String, boolean);
+    method public abstract void stopNetLog();
+  }
+
+  public static class CronetEngine.Builder {
+    ctor public CronetEngine.Builder(android.content.Context);
+    method public org.chromium.net.CronetEngine.Builder addPublicKeyPins(String, java.util.Set<byte[]>, boolean, java.util.Date);
+    method public org.chromium.net.CronetEngine.Builder addQuicHint(String, int, int);
+    method public org.chromium.net.CronetEngine build();
+    method public org.chromium.net.CronetEngine.Builder enableBrotli(boolean);
+    method public org.chromium.net.CronetEngine.Builder enableHttp2(boolean);
+    method public org.chromium.net.CronetEngine.Builder enableHttpCache(int, long);
+    method public org.chromium.net.CronetEngine.Builder enablePublicKeyPinningBypassForLocalTrustAnchors(boolean);
+    method public org.chromium.net.CronetEngine.Builder enableQuic(boolean);
+    method public String getDefaultUserAgent();
+    method public org.chromium.net.CronetEngine.Builder setLibraryLoader(org.chromium.net.CronetEngine.Builder.LibraryLoader);
+    method public org.chromium.net.CronetEngine.Builder setStoragePath(String);
+    method public org.chromium.net.CronetEngine.Builder setUserAgent(String);
+    field public static final int HTTP_CACHE_DISABLED = 0; // 0x0
+    field public static final int HTTP_CACHE_DISK = 3; // 0x3
+    field public static final int HTTP_CACHE_DISK_NO_HTTP = 2; // 0x2
+    field public static final int HTTP_CACHE_IN_MEMORY = 1; // 0x1
+  }
+
+  public abstract static class CronetEngine.Builder.LibraryLoader {
+    ctor public CronetEngine.Builder.LibraryLoader();
+    method public abstract void loadLibrary(String);
+  }
+
+  public abstract class CronetException extends java.io.IOException {
+    ctor protected CronetException(String, Throwable);
+  }
+
+  public final class InlineExecutionProhibitedException extends java.util.concurrent.RejectedExecutionException {
+    ctor public InlineExecutionProhibitedException();
+  }
+
+  public abstract class NetworkException extends org.chromium.net.CronetException {
+    ctor protected NetworkException(String, Throwable);
+    method public abstract int getCronetInternalErrorCode();
+    method public abstract int getErrorCode();
+    method public abstract boolean immediatelyRetryable();
+    field public static final int ERROR_ADDRESS_UNREACHABLE = 9; // 0x9
+    field public static final int ERROR_CONNECTION_CLOSED = 5; // 0x5
+    field public static final int ERROR_CONNECTION_REFUSED = 7; // 0x7
+    field public static final int ERROR_CONNECTION_RESET = 8; // 0x8
+    field public static final int ERROR_CONNECTION_TIMED_OUT = 6; // 0x6
+    field public static final int ERROR_HOSTNAME_NOT_RESOLVED = 1; // 0x1
+    field public static final int ERROR_INTERNET_DISCONNECTED = 2; // 0x2
+    field public static final int ERROR_NETWORK_CHANGED = 3; // 0x3
+    field public static final int ERROR_OTHER = 11; // 0xb
+    field public static final int ERROR_QUIC_PROTOCOL_FAILED = 10; // 0xa
+    field public static final int ERROR_TIMED_OUT = 4; // 0x4
+  }
+
+  public abstract class QuicException extends org.chromium.net.NetworkException {
+    ctor protected QuicException(String, Throwable);
+    method public abstract int getQuicDetailedErrorCode();
+  }
+
+  public abstract class UploadDataProvider implements java.io.Closeable {
+    ctor public UploadDataProvider();
+    method public void close() throws java.io.IOException;
+    method public abstract long getLength() throws java.io.IOException;
+    method public abstract void read(org.chromium.net.UploadDataSink, java.nio.ByteBuffer) throws java.io.IOException;
+    method public abstract void rewind(org.chromium.net.UploadDataSink) throws java.io.IOException;
+  }
+
+  public final class UploadDataProviders {
+    method public static org.chromium.net.UploadDataProvider create(java.io.File);
+    method public static org.chromium.net.UploadDataProvider create(android.os.ParcelFileDescriptor);
+    method public static org.chromium.net.UploadDataProvider create(java.nio.ByteBuffer);
+    method public static org.chromium.net.UploadDataProvider create(byte[], int, int);
+    method public static org.chromium.net.UploadDataProvider create(byte[]);
+  }
+
+  public abstract class UploadDataSink {
+    ctor public UploadDataSink();
+    method public abstract void onReadError(Exception);
+    method public abstract void onReadSucceeded(boolean);
+    method public abstract void onRewindError(Exception);
+    method public abstract void onRewindSucceeded();
+  }
+
+  public abstract class UrlRequest {
+    ctor public UrlRequest();
+    method public abstract void cancel();
+    method public abstract void followRedirect();
+    method public abstract void getStatus(org.chromium.net.UrlRequest.StatusListener);
+    method public abstract boolean isDone();
+    method public abstract void read(java.nio.ByteBuffer);
+    method public abstract void start();
+  }
+
+  public abstract static class UrlRequest.Builder {
+    ctor public UrlRequest.Builder();
+    method public abstract org.chromium.net.UrlRequest.Builder addHeader(String, String);
+    method public abstract org.chromium.net.UrlRequest.Builder allowDirectExecutor();
+    method public abstract org.chromium.net.UrlRequest build();
+    method public abstract org.chromium.net.UrlRequest.Builder disableCache();
+    method public abstract org.chromium.net.UrlRequest.Builder setHttpMethod(String);
+    method public abstract org.chromium.net.UrlRequest.Builder setPriority(int);
+    method public abstract org.chromium.net.UrlRequest.Builder setUploadDataProvider(org.chromium.net.UploadDataProvider, java.util.concurrent.Executor);
+    field public static final int REQUEST_PRIORITY_HIGHEST = 4; // 0x4
+    field public static final int REQUEST_PRIORITY_IDLE = 0; // 0x0
+    field public static final int REQUEST_PRIORITY_LOW = 2; // 0x2
+    field public static final int REQUEST_PRIORITY_LOWEST = 1; // 0x1
+    field public static final int REQUEST_PRIORITY_MEDIUM = 3; // 0x3
+  }
+
+  public abstract static class UrlRequest.Callback {
+    ctor public UrlRequest.Callback();
+    method public void onCanceled(org.chromium.net.UrlRequest, org.chromium.net.UrlResponseInfo);
+    method public abstract void onFailed(org.chromium.net.UrlRequest, org.chromium.net.UrlResponseInfo, org.chromium.net.CronetException);
+    method public abstract void onReadCompleted(org.chromium.net.UrlRequest, org.chromium.net.UrlResponseInfo, java.nio.ByteBuffer) throws java.lang.Exception;
+    method public abstract void onRedirectReceived(org.chromium.net.UrlRequest, org.chromium.net.UrlResponseInfo, String) throws java.lang.Exception;
+    method public abstract void onResponseStarted(org.chromium.net.UrlRequest, org.chromium.net.UrlResponseInfo) throws java.lang.Exception;
+    method public abstract void onSucceeded(org.chromium.net.UrlRequest, org.chromium.net.UrlResponseInfo);
+  }
+
+  public static class UrlRequest.Status {
+    field public static final int CONNECTING = 10; // 0xa
+    field public static final int DOWNLOADING_PAC_FILE = 5; // 0x5
+    field public static final int ESTABLISHING_PROXY_TUNNEL = 8; // 0x8
+    field public static final int IDLE = 0; // 0x0
+    field public static final int INVALID = -1; // 0xffffffff
+    field public static final int READING_RESPONSE = 14; // 0xe
+    field public static final int RESOLVING_HOST = 9; // 0x9
+    field public static final int RESOLVING_HOST_IN_PAC_FILE = 7; // 0x7
+    field public static final int RESOLVING_PROXY_FOR_URL = 6; // 0x6
+    field public static final int SENDING_REQUEST = 12; // 0xc
+    field public static final int SSL_HANDSHAKE = 11; // 0xb
+    field public static final int WAITING_FOR_AVAILABLE_SOCKET = 2; // 0x2
+    field public static final int WAITING_FOR_CACHE = 4; // 0x4
+    field public static final int WAITING_FOR_DELEGATE = 3; // 0x3
+    field public static final int WAITING_FOR_RESPONSE = 13; // 0xd
+    field public static final int WAITING_FOR_STALLED_SOCKET_POOL = 1; // 0x1
+  }
+
+  public abstract static class UrlRequest.StatusListener {
+    ctor public UrlRequest.StatusListener();
+    method public abstract void onStatus(int);
+  }
+
+  public abstract class UrlResponseInfo {
+    ctor public UrlResponseInfo();
+    method public abstract java.util.Map<java.lang.String,java.util.List<java.lang.String>> getAllHeaders();
+    method public abstract java.util.List<java.util.Map.Entry<java.lang.String,java.lang.String>> getAllHeadersAsList();
+    method public abstract int getHttpStatusCode();
+    method public abstract String getHttpStatusText();
+    method public abstract String getNegotiatedProtocol();
+    method public abstract String getProxyServer();
+    method public abstract long getReceivedByteCount();
+    method public abstract String getUrl();
+    method public abstract java.util.List<java.lang.String> getUrlChain();
+    method public abstract boolean wasCached();
+  }
+
+}
+
diff --git a/Cronet/api/lint-baseline.txt b/Cronet/api/lint-baseline.txt
new file mode 100644
index 0000000..0e2f25b
--- /dev/null
+++ b/Cronet/api/lint-baseline.txt
@@ -0,0 +1,263 @@
+// Baseline format: 1.0
+AcronymName: org.chromium.net.CronetEngine#createURLStreamHandlerFactory():
+    Acronyms should not be capitalized in method names: was `createURLStreamHandlerFactory`, should this be `createUrlStreamHandlerFactory`?
+
+
+AndroidUri: org.chromium.net.CronetEngine#createURLStreamHandlerFactory():
+    Use android.net.Uri instead of java.net.URL (method org.chromium.net.CronetEngine.createURLStreamHandlerFactory())
+AndroidUri: org.chromium.net.CronetEngine#openConnection(java.net.URL):
+    Use android.net.Uri instead of java.net.URL (method org.chromium.net.CronetEngine.openConnection(java.net.URL))
+AndroidUri: org.chromium.net.CronetEngine#openConnection(java.net.URL) parameter #0:
+    Use android.net.Uri instead of java.net.URL (parameter url in org.chromium.net.CronetEngine.openConnection(java.net.URL url))
+
+
+BuilderSetStyle: org.chromium.net.CronetEngine.Builder#enableBrotli(boolean):
+    Builder methods names should use setFoo() / addFoo() / clearFoo() style: method org.chromium.net.CronetEngine.Builder.enableBrotli(boolean)
+BuilderSetStyle: org.chromium.net.CronetEngine.Builder#enableHttp2(boolean):
+    Builder methods names should use setFoo() / addFoo() / clearFoo() style: method org.chromium.net.CronetEngine.Builder.enableHttp2(boolean)
+BuilderSetStyle: org.chromium.net.CronetEngine.Builder#enableHttpCache(int, long):
+    Builder methods names should use setFoo() / addFoo() / clearFoo() style: method org.chromium.net.CronetEngine.Builder.enableHttpCache(int,long)
+BuilderSetStyle: org.chromium.net.CronetEngine.Builder#enablePublicKeyPinningBypassForLocalTrustAnchors(boolean):
+    Builder methods names should use setFoo() / addFoo() / clearFoo() style: method org.chromium.net.CronetEngine.Builder.enablePublicKeyPinningBypassForLocalTrustAnchors(boolean)
+BuilderSetStyle: org.chromium.net.CronetEngine.Builder#enableQuic(boolean):
+    Builder methods names should use setFoo() / addFoo() / clearFoo() style: method org.chromium.net.CronetEngine.Builder.enableQuic(boolean)
+BuilderSetStyle: org.chromium.net.UrlRequest.Builder#allowDirectExecutor():
+    Builder methods names should use setFoo() / addFoo() / clearFoo() style: method org.chromium.net.UrlRequest.Builder.allowDirectExecutor()
+BuilderSetStyle: org.chromium.net.UrlRequest.Builder#disableCache():
+    Builder methods names should use setFoo() / addFoo() / clearFoo() style: method org.chromium.net.UrlRequest.Builder.disableCache()
+
+
+ExecutorRegistration: org.chromium.net.UrlRequest#getStatus(org.chromium.net.UrlRequest.StatusListener):
+    Registration methods should have overload that accepts delivery Executor: `getStatus`
+
+
+GenericException: org.chromium.net.UrlRequest.Callback#onReadCompleted(org.chromium.net.UrlRequest, org.chromium.net.UrlResponseInfo, java.nio.ByteBuffer):
+    Methods must not throw generic exceptions (`java.lang.Exception`)
+GenericException: org.chromium.net.UrlRequest.Callback#onRedirectReceived(org.chromium.net.UrlRequest, org.chromium.net.UrlResponseInfo, String):
+    Methods must not throw generic exceptions (`java.lang.Exception`)
+GenericException: org.chromium.net.UrlRequest.Callback#onResponseStarted(org.chromium.net.UrlRequest, org.chromium.net.UrlResponseInfo):
+    Methods must not throw generic exceptions (`java.lang.Exception`)
+
+
+GetterOnBuilder: org.chromium.net.CronetEngine.Builder#getDefaultUserAgent():
+    Getter should be on the built object, not the builder: method org.chromium.net.CronetEngine.Builder.getDefaultUserAgent()
+
+
+ListenerInterface: org.chromium.net.UrlRequest.StatusListener:
+    Listeners should be an interface, or otherwise renamed Callback: StatusListener
+
+
+ListenerLast: org.chromium.net.CronetEngine#newUrlRequestBuilder(String, org.chromium.net.UrlRequest.Callback, java.util.concurrent.Executor) parameter #2:
+    Listeners should always be at end of argument list (method `newUrlRequestBuilder`)
+
+
+MissingGetterMatchingBuilder: org.chromium.net.CronetEngine.Builder#addPublicKeyPins(String, java.util.Set<byte[]>, boolean, java.util.Date):
+    org.chromium.net.CronetEngine does not declare a `getPublicKeyPinss()` method matching method org.chromium.net.CronetEngine.Builder.addPublicKeyPins(String,java.util.Set<byte[]>,boolean,java.util.Date)
+MissingGetterMatchingBuilder: org.chromium.net.CronetEngine.Builder#addQuicHint(String, int, int):
+    org.chromium.net.CronetEngine does not declare a `getQuicHints()` method matching method org.chromium.net.CronetEngine.Builder.addQuicHint(String,int,int)
+MissingGetterMatchingBuilder: org.chromium.net.CronetEngine.Builder#setLibraryLoader(org.chromium.net.CronetEngine.Builder.LibraryLoader):
+    org.chromium.net.CronetEngine does not declare a `getLibraryLoader()` method matching method org.chromium.net.CronetEngine.Builder.setLibraryLoader(org.chromium.net.CronetEngine.Builder.LibraryLoader)
+MissingGetterMatchingBuilder: org.chromium.net.CronetEngine.Builder#setStoragePath(String):
+    org.chromium.net.CronetEngine does not declare a `getStoragePath()` method matching method org.chromium.net.CronetEngine.Builder.setStoragePath(String)
+MissingGetterMatchingBuilder: org.chromium.net.CronetEngine.Builder#setUserAgent(String):
+    org.chromium.net.CronetEngine does not declare a `getUserAgent()` method matching method org.chromium.net.CronetEngine.Builder.setUserAgent(String)
+MissingGetterMatchingBuilder: org.chromium.net.UrlRequest.Builder#addHeader(String, String):
+    org.chromium.net.UrlRequest does not declare a `getHeaders()` method matching method org.chromium.net.UrlRequest.Builder.addHeader(String,String)
+MissingGetterMatchingBuilder: org.chromium.net.UrlRequest.Builder#setHttpMethod(String):
+    org.chromium.net.UrlRequest does not declare a `getHttpMethod()` method matching method org.chromium.net.UrlRequest.Builder.setHttpMethod(String)
+MissingGetterMatchingBuilder: org.chromium.net.UrlRequest.Builder#setPriority(int):
+    org.chromium.net.UrlRequest does not declare a `getPriority()` method matching method org.chromium.net.UrlRequest.Builder.setPriority(int)
+MissingGetterMatchingBuilder: org.chromium.net.UrlRequest.Builder#setUploadDataProvider(org.chromium.net.UploadDataProvider, java.util.concurrent.Executor):
+    org.chromium.net.UrlRequest does not declare a `getUploadDataProvider()` method matching method org.chromium.net.UrlRequest.Builder.setUploadDataProvider(org.chromium.net.UploadDataProvider,java.util.concurrent.Executor)
+
+
+MissingNullability: org.chromium.net.CallbackException#CallbackException(String, Throwable) parameter #0:
+    Missing nullability on parameter `message` in method `CallbackException`
+MissingNullability: org.chromium.net.CallbackException#CallbackException(String, Throwable) parameter #1:
+    Missing nullability on parameter `cause` in method `CallbackException`
+MissingNullability: org.chromium.net.CronetEngine#createURLStreamHandlerFactory():
+    Missing nullability on method `createURLStreamHandlerFactory` return
+MissingNullability: org.chromium.net.CronetEngine#getGlobalMetricsDeltas():
+    Missing nullability on method `getGlobalMetricsDeltas` return
+MissingNullability: org.chromium.net.CronetEngine#getVersionString():
+    Missing nullability on method `getVersionString` return
+MissingNullability: org.chromium.net.CronetEngine#newUrlRequestBuilder(String, org.chromium.net.UrlRequest.Callback, java.util.concurrent.Executor):
+    Missing nullability on method `newUrlRequestBuilder` return
+MissingNullability: org.chromium.net.CronetEngine#newUrlRequestBuilder(String, org.chromium.net.UrlRequest.Callback, java.util.concurrent.Executor) parameter #0:
+    Missing nullability on parameter `url` in method `newUrlRequestBuilder`
+MissingNullability: org.chromium.net.CronetEngine#newUrlRequestBuilder(String, org.chromium.net.UrlRequest.Callback, java.util.concurrent.Executor) parameter #1:
+    Missing nullability on parameter `callback` in method `newUrlRequestBuilder`
+MissingNullability: org.chromium.net.CronetEngine#newUrlRequestBuilder(String, org.chromium.net.UrlRequest.Callback, java.util.concurrent.Executor) parameter #2:
+    Missing nullability on parameter `executor` in method `newUrlRequestBuilder`
+MissingNullability: org.chromium.net.CronetEngine#openConnection(java.net.URL):
+    Missing nullability on method `openConnection` return
+MissingNullability: org.chromium.net.CronetEngine#openConnection(java.net.URL) parameter #0:
+    Missing nullability on parameter `url` in method `openConnection`
+MissingNullability: org.chromium.net.CronetEngine#startNetLogToFile(String, boolean) parameter #0:
+    Missing nullability on parameter `fileName` in method `startNetLogToFile`
+MissingNullability: org.chromium.net.CronetEngine.Builder#Builder(android.content.Context) parameter #0:
+    Missing nullability on parameter `context` in method `Builder`
+MissingNullability: org.chromium.net.CronetEngine.Builder#addPublicKeyPins(String, java.util.Set<byte[]>, boolean, java.util.Date):
+    Missing nullability on method `addPublicKeyPins` return
+MissingNullability: org.chromium.net.CronetEngine.Builder#addPublicKeyPins(String, java.util.Set<byte[]>, boolean, java.util.Date) parameter #0:
+    Missing nullability on parameter `hostName` in method `addPublicKeyPins`
+MissingNullability: org.chromium.net.CronetEngine.Builder#addPublicKeyPins(String, java.util.Set<byte[]>, boolean, java.util.Date) parameter #1:
+    Missing nullability on parameter `pinsSha256` in method `addPublicKeyPins`
+MissingNullability: org.chromium.net.CronetEngine.Builder#addPublicKeyPins(String, java.util.Set<byte[]>, boolean, java.util.Date) parameter #3:
+    Missing nullability on parameter `expirationDate` in method `addPublicKeyPins`
+MissingNullability: org.chromium.net.CronetEngine.Builder#addQuicHint(String, int, int):
+    Missing nullability on method `addQuicHint` return
+MissingNullability: org.chromium.net.CronetEngine.Builder#addQuicHint(String, int, int) parameter #0:
+    Missing nullability on parameter `host` in method `addQuicHint`
+MissingNullability: org.chromium.net.CronetEngine.Builder#build():
+    Missing nullability on method `build` return
+MissingNullability: org.chromium.net.CronetEngine.Builder#enableBrotli(boolean):
+    Missing nullability on method `enableBrotli` return
+MissingNullability: org.chromium.net.CronetEngine.Builder#enableHttp2(boolean):
+    Missing nullability on method `enableHttp2` return
+MissingNullability: org.chromium.net.CronetEngine.Builder#enableHttpCache(int, long):
+    Missing nullability on method `enableHttpCache` return
+MissingNullability: org.chromium.net.CronetEngine.Builder#enablePublicKeyPinningBypassForLocalTrustAnchors(boolean):
+    Missing nullability on method `enablePublicKeyPinningBypassForLocalTrustAnchors` return
+MissingNullability: org.chromium.net.CronetEngine.Builder#enableQuic(boolean):
+    Missing nullability on method `enableQuic` return
+MissingNullability: org.chromium.net.CronetEngine.Builder#getDefaultUserAgent():
+    Missing nullability on method `getDefaultUserAgent` return
+MissingNullability: org.chromium.net.CronetEngine.Builder#setLibraryLoader(org.chromium.net.CronetEngine.Builder.LibraryLoader):
+    Missing nullability on method `setLibraryLoader` return
+MissingNullability: org.chromium.net.CronetEngine.Builder#setLibraryLoader(org.chromium.net.CronetEngine.Builder.LibraryLoader) parameter #0:
+    Missing nullability on parameter `loader` in method `setLibraryLoader`
+MissingNullability: org.chromium.net.CronetEngine.Builder#setStoragePath(String):
+    Missing nullability on method `setStoragePath` return
+MissingNullability: org.chromium.net.CronetEngine.Builder#setStoragePath(String) parameter #0:
+    Missing nullability on parameter `value` in method `setStoragePath`
+MissingNullability: org.chromium.net.CronetEngine.Builder#setUserAgent(String):
+    Missing nullability on method `setUserAgent` return
+MissingNullability: org.chromium.net.CronetEngine.Builder#setUserAgent(String) parameter #0:
+    Missing nullability on parameter `userAgent` in method `setUserAgent`
+MissingNullability: org.chromium.net.CronetEngine.Builder.LibraryLoader#loadLibrary(String) parameter #0:
+    Missing nullability on parameter `libName` in method `loadLibrary`
+MissingNullability: org.chromium.net.CronetException#CronetException(String, Throwable) parameter #0:
+    Missing nullability on parameter `message` in method `CronetException`
+MissingNullability: org.chromium.net.CronetException#CronetException(String, Throwable) parameter #1:
+    Missing nullability on parameter `cause` in method `CronetException`
+MissingNullability: org.chromium.net.NetworkException#NetworkException(String, Throwable) parameter #0:
+    Missing nullability on parameter `message` in method `NetworkException`
+MissingNullability: org.chromium.net.NetworkException#NetworkException(String, Throwable) parameter #1:
+    Missing nullability on parameter `cause` in method `NetworkException`
+MissingNullability: org.chromium.net.QuicException#QuicException(String, Throwable) parameter #0:
+    Missing nullability on parameter `message` in method `QuicException`
+MissingNullability: org.chromium.net.QuicException#QuicException(String, Throwable) parameter #1:
+    Missing nullability on parameter `cause` in method `QuicException`
+MissingNullability: org.chromium.net.UploadDataProvider#read(org.chromium.net.UploadDataSink, java.nio.ByteBuffer) parameter #0:
+    Missing nullability on parameter `uploadDataSink` in method `read`
+MissingNullability: org.chromium.net.UploadDataProvider#read(org.chromium.net.UploadDataSink, java.nio.ByteBuffer) parameter #1:
+    Missing nullability on parameter `byteBuffer` in method `read`
+MissingNullability: org.chromium.net.UploadDataProvider#rewind(org.chromium.net.UploadDataSink) parameter #0:
+    Missing nullability on parameter `uploadDataSink` in method `rewind`
+MissingNullability: org.chromium.net.UploadDataProviders#create(android.os.ParcelFileDescriptor):
+    Missing nullability on method `create` return
+MissingNullability: org.chromium.net.UploadDataProviders#create(android.os.ParcelFileDescriptor) parameter #0:
+    Missing nullability on parameter `fd` in method `create`
+MissingNullability: org.chromium.net.UploadDataProviders#create(byte[]):
+    Missing nullability on method `create` return
+MissingNullability: org.chromium.net.UploadDataProviders#create(byte[]) parameter #0:
+    Missing nullability on parameter `data` in method `create`
+MissingNullability: org.chromium.net.UploadDataProviders#create(byte[], int, int):
+    Missing nullability on method `create` return
+MissingNullability: org.chromium.net.UploadDataProviders#create(byte[], int, int) parameter #0:
+    Missing nullability on parameter `data` in method `create`
+MissingNullability: org.chromium.net.UploadDataProviders#create(java.io.File):
+    Missing nullability on method `create` return
+MissingNullability: org.chromium.net.UploadDataProviders#create(java.io.File) parameter #0:
+    Missing nullability on parameter `file` in method `create`
+MissingNullability: org.chromium.net.UploadDataProviders#create(java.nio.ByteBuffer):
+    Missing nullability on method `create` return
+MissingNullability: org.chromium.net.UploadDataProviders#create(java.nio.ByteBuffer) parameter #0:
+    Missing nullability on parameter `buffer` in method `create`
+MissingNullability: org.chromium.net.UploadDataSink#onReadError(Exception) parameter #0:
+    Missing nullability on parameter `exception` in method `onReadError`
+MissingNullability: org.chromium.net.UploadDataSink#onRewindError(Exception) parameter #0:
+    Missing nullability on parameter `exception` in method `onRewindError`
+MissingNullability: org.chromium.net.UrlRequest#getStatus(org.chromium.net.UrlRequest.StatusListener) parameter #0:
+    Missing nullability on parameter `listener` in method `getStatus`
+MissingNullability: org.chromium.net.UrlRequest#read(java.nio.ByteBuffer) parameter #0:
+    Missing nullability on parameter `buffer` in method `read`
+MissingNullability: org.chromium.net.UrlRequest.Builder#addHeader(String, String):
+    Missing nullability on method `addHeader` return
+MissingNullability: org.chromium.net.UrlRequest.Builder#addHeader(String, String) parameter #0:
+    Missing nullability on parameter `header` in method `addHeader`
+MissingNullability: org.chromium.net.UrlRequest.Builder#addHeader(String, String) parameter #1:
+    Missing nullability on parameter `value` in method `addHeader`
+MissingNullability: org.chromium.net.UrlRequest.Builder#allowDirectExecutor():
+    Missing nullability on method `allowDirectExecutor` return
+MissingNullability: org.chromium.net.UrlRequest.Builder#build():
+    Missing nullability on method `build` return
+MissingNullability: org.chromium.net.UrlRequest.Builder#disableCache():
+    Missing nullability on method `disableCache` return
+MissingNullability: org.chromium.net.UrlRequest.Builder#setHttpMethod(String):
+    Missing nullability on method `setHttpMethod` return
+MissingNullability: org.chromium.net.UrlRequest.Builder#setHttpMethod(String) parameter #0:
+    Missing nullability on parameter `method` in method `setHttpMethod`
+MissingNullability: org.chromium.net.UrlRequest.Builder#setPriority(int):
+    Missing nullability on method `setPriority` return
+MissingNullability: org.chromium.net.UrlRequest.Builder#setUploadDataProvider(org.chromium.net.UploadDataProvider, java.util.concurrent.Executor):
+    Missing nullability on method `setUploadDataProvider` return
+MissingNullability: org.chromium.net.UrlRequest.Builder#setUploadDataProvider(org.chromium.net.UploadDataProvider, java.util.concurrent.Executor) parameter #0:
+    Missing nullability on parameter `uploadDataProvider` in method `setUploadDataProvider`
+MissingNullability: org.chromium.net.UrlRequest.Builder#setUploadDataProvider(org.chromium.net.UploadDataProvider, java.util.concurrent.Executor) parameter #1:
+    Missing nullability on parameter `executor` in method `setUploadDataProvider`
+MissingNullability: org.chromium.net.UrlRequest.Callback#onCanceled(org.chromium.net.UrlRequest, org.chromium.net.UrlResponseInfo) parameter #0:
+    Missing nullability on parameter `request` in method `onCanceled`
+MissingNullability: org.chromium.net.UrlRequest.Callback#onCanceled(org.chromium.net.UrlRequest, org.chromium.net.UrlResponseInfo) parameter #1:
+    Missing nullability on parameter `info` in method `onCanceled`
+MissingNullability: org.chromium.net.UrlRequest.Callback#onFailed(org.chromium.net.UrlRequest, org.chromium.net.UrlResponseInfo, org.chromium.net.CronetException) parameter #0:
+    Missing nullability on parameter `request` in method `onFailed`
+MissingNullability: org.chromium.net.UrlRequest.Callback#onFailed(org.chromium.net.UrlRequest, org.chromium.net.UrlResponseInfo, org.chromium.net.CronetException) parameter #1:
+    Missing nullability on parameter `info` in method `onFailed`
+MissingNullability: org.chromium.net.UrlRequest.Callback#onFailed(org.chromium.net.UrlRequest, org.chromium.net.UrlResponseInfo, org.chromium.net.CronetException) parameter #2:
+    Missing nullability on parameter `error` in method `onFailed`
+MissingNullability: org.chromium.net.UrlRequest.Callback#onReadCompleted(org.chromium.net.UrlRequest, org.chromium.net.UrlResponseInfo, java.nio.ByteBuffer) parameter #0:
+    Missing nullability on parameter `request` in method `onReadCompleted`
+MissingNullability: org.chromium.net.UrlRequest.Callback#onReadCompleted(org.chromium.net.UrlRequest, org.chromium.net.UrlResponseInfo, java.nio.ByteBuffer) parameter #1:
+    Missing nullability on parameter `info` in method `onReadCompleted`
+MissingNullability: org.chromium.net.UrlRequest.Callback#onReadCompleted(org.chromium.net.UrlRequest, org.chromium.net.UrlResponseInfo, java.nio.ByteBuffer) parameter #2:
+    Missing nullability on parameter `byteBuffer` in method `onReadCompleted`
+MissingNullability: org.chromium.net.UrlRequest.Callback#onRedirectReceived(org.chromium.net.UrlRequest, org.chromium.net.UrlResponseInfo, String) parameter #0:
+    Missing nullability on parameter `request` in method `onRedirectReceived`
+MissingNullability: org.chromium.net.UrlRequest.Callback#onRedirectReceived(org.chromium.net.UrlRequest, org.chromium.net.UrlResponseInfo, String) parameter #1:
+    Missing nullability on parameter `info` in method `onRedirectReceived`
+MissingNullability: org.chromium.net.UrlRequest.Callback#onRedirectReceived(org.chromium.net.UrlRequest, org.chromium.net.UrlResponseInfo, String) parameter #2:
+    Missing nullability on parameter `newLocationUrl` in method `onRedirectReceived`
+MissingNullability: org.chromium.net.UrlRequest.Callback#onResponseStarted(org.chromium.net.UrlRequest, org.chromium.net.UrlResponseInfo) parameter #0:
+    Missing nullability on parameter `request` in method `onResponseStarted`
+MissingNullability: org.chromium.net.UrlRequest.Callback#onResponseStarted(org.chromium.net.UrlRequest, org.chromium.net.UrlResponseInfo) parameter #1:
+    Missing nullability on parameter `info` in method `onResponseStarted`
+MissingNullability: org.chromium.net.UrlRequest.Callback#onSucceeded(org.chromium.net.UrlRequest, org.chromium.net.UrlResponseInfo) parameter #0:
+    Missing nullability on parameter `request` in method `onSucceeded`
+MissingNullability: org.chromium.net.UrlRequest.Callback#onSucceeded(org.chromium.net.UrlRequest, org.chromium.net.UrlResponseInfo) parameter #1:
+    Missing nullability on parameter `info` in method `onSucceeded`
+MissingNullability: org.chromium.net.UrlResponseInfo#getAllHeaders():
+    Missing nullability on method `getAllHeaders` return
+MissingNullability: org.chromium.net.UrlResponseInfo#getAllHeadersAsList():
+    Missing nullability on method `getAllHeadersAsList` return
+MissingNullability: org.chromium.net.UrlResponseInfo#getHttpStatusText():
+    Missing nullability on method `getHttpStatusText` return
+MissingNullability: org.chromium.net.UrlResponseInfo#getNegotiatedProtocol():
+    Missing nullability on method `getNegotiatedProtocol` return
+MissingNullability: org.chromium.net.UrlResponseInfo#getProxyServer():
+    Missing nullability on method `getProxyServer` return
+MissingNullability: org.chromium.net.UrlResponseInfo#getUrl():
+    Missing nullability on method `getUrl` return
+MissingNullability: org.chromium.net.UrlResponseInfo#getUrlChain():
+    Missing nullability on method `getUrlChain` return
+
+
+NotCloseable: org.chromium.net.CronetEngine:
+    Classes that release resources (shutdown()) should implement AutoClosable and CloseGuard: class org.chromium.net.CronetEngine
+
+
+StaticFinalBuilder: org.chromium.net.CronetEngine.Builder:
+    Builder must be final: org.chromium.net.CronetEngine.Builder
+StaticFinalBuilder: org.chromium.net.UrlRequest.Builder:
+    Builder must be final: org.chromium.net.UrlRequest.Builder
diff --git a/Cronet/api/module-lib-current.txt b/Cronet/api/module-lib-current.txt
new file mode 100644
index 0000000..d802177
--- /dev/null
+++ b/Cronet/api/module-lib-current.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/Cronet/api/module-lib-removed.txt b/Cronet/api/module-lib-removed.txt
new file mode 100644
index 0000000..d802177
--- /dev/null
+++ b/Cronet/api/module-lib-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/Cronet/api/removed.txt b/Cronet/api/removed.txt
new file mode 100644
index 0000000..d802177
--- /dev/null
+++ b/Cronet/api/removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/Cronet/api/system-current.txt b/Cronet/api/system-current.txt
new file mode 100644
index 0000000..d802177
--- /dev/null
+++ b/Cronet/api/system-current.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/Cronet/api/system-removed.txt b/Cronet/api/system-removed.txt
new file mode 100644
index 0000000..d802177
--- /dev/null
+++ b/Cronet/api/system-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/Cronet/api/test-current.txt b/Cronet/api/test-current.txt
new file mode 100644
index 0000000..d802177
--- /dev/null
+++ b/Cronet/api/test-current.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/Cronet/api/test-removed.txt b/Cronet/api/test-removed.txt
new file mode 100644
index 0000000..d802177
--- /dev/null
+++ b/Cronet/api/test-removed.txt
@@ -0,0 +1 @@
+// Signature format: 2.0
diff --git a/Cronet/prebuilt/VERSION b/Cronet/prebuilt/VERSION
new file mode 100644
index 0000000..c16ab94
--- /dev/null
+++ b/Cronet/prebuilt/VERSION
@@ -0,0 +1,4 @@
+MAJOR=80
+MINOR=0
+BUILD=3986
+PATCH=0
diff --git a/Cronet/prebuilt/api_version.txt b/Cronet/prebuilt/api_version.txt
new file mode 100644
index 0000000..48082f7
--- /dev/null
+++ b/Cronet/prebuilt/api_version.txt
@@ -0,0 +1 @@
+12
diff --git a/Cronet/prebuilt/cronet_api-src.jar b/Cronet/prebuilt/cronet_api-src.jar
new file mode 100644
index 0000000..9d0aa34
--- /dev/null
+++ b/Cronet/prebuilt/cronet_api-src.jar
Binary files differ
diff --git a/Cronet/prebuilt/cronet_api.jar b/Cronet/prebuilt/cronet_api.jar
new file mode 100644
index 0000000..b0c3967
--- /dev/null
+++ b/Cronet/prebuilt/cronet_api.jar
Binary files differ
diff --git a/Cronet/prebuilt/cronet_impl_common_java.jar b/Cronet/prebuilt/cronet_impl_common_java.jar
new file mode 100644
index 0000000..7006c09
--- /dev/null
+++ b/Cronet/prebuilt/cronet_impl_common_java.jar
Binary files differ
diff --git a/Cronet/prebuilt/cronet_impl_native_java.jar b/Cronet/prebuilt/cronet_impl_native_java.jar
new file mode 100644
index 0000000..835d882
--- /dev/null
+++ b/Cronet/prebuilt/cronet_impl_native_java.jar
Binary files differ
diff --git a/Cronet/prebuilt/cronet_impl_platform_java.jar b/Cronet/prebuilt/cronet_impl_platform_java.jar
new file mode 100644
index 0000000..8394ddb
--- /dev/null
+++ b/Cronet/prebuilt/cronet_impl_platform_java.jar
Binary files differ
diff --git a/Cronet/prebuilt/libs/arm64-v8a/libcronet.80.0.3986.0.so b/Cronet/prebuilt/libs/arm64-v8a/libcronet.80.0.3986.0.so
new file mode 100644
index 0000000..34809eb
--- /dev/null
+++ b/Cronet/prebuilt/libs/arm64-v8a/libcronet.80.0.3986.0.so
Binary files differ
diff --git a/Cronet/prebuilt/libs/armeabi-v7a/libcronet.80.0.3986.0.so b/Cronet/prebuilt/libs/armeabi-v7a/libcronet.80.0.3986.0.so
new file mode 100644
index 0000000..91bd63f
--- /dev/null
+++ b/Cronet/prebuilt/libs/armeabi-v7a/libcronet.80.0.3986.0.so
Binary files differ
diff --git a/Cronet/prebuilt/libs/x86/libcronet.80.0.3986.0.so b/Cronet/prebuilt/libs/x86/libcronet.80.0.3986.0.so
new file mode 100644
index 0000000..b97d497
--- /dev/null
+++ b/Cronet/prebuilt/libs/x86/libcronet.80.0.3986.0.so
Binary files differ
diff --git a/Cronet/prebuilt/libs/x86_64/libcronet.80.0.3986.0.so b/Cronet/prebuilt/libs/x86_64/libcronet.80.0.3986.0.so
new file mode 100644
index 0000000..14c6281
--- /dev/null
+++ b/Cronet/prebuilt/libs/x86_64/libcronet.80.0.3986.0.so
Binary files differ
diff --git a/Cronet/tests/apitest/Android.bp b/Cronet/tests/apitest/Android.bp
new file mode 100644
index 0000000..e71c707
--- /dev/null
+++ b/Cronet/tests/apitest/Android.bp
@@ -0,0 +1,46 @@
+//
+// Copyright (C) 2019 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.
+//
+
+package {
+    default_applicable_licenses: ["Android-Apache-2.0"],
+}
+
+java_library {
+    name: "CronetApiCommonTests",
+    srcs: ["src/**/*.java"],
+    static_libs: [
+        "androidx.test.rules",
+        "androidx.core_core",
+        "junit",
+    ],
+    libs: [
+        "android.test.runner",
+        "android.test.base",
+        "android.test.mock",
+        "androidx.annotation_annotation",
+        "framework-cronet",
+    ],
+}
+
+android_test {
+    name: "CronetApiTest",
+    sdk_version: "test_current",
+    test_suites: ["device-tests"],
+    certificate: "platform",
+    static_libs: [
+        "CronetApiCommonTests",
+    ],
+}
diff --git a/Cronet/tests/apitest/AndroidManifest.xml b/Cronet/tests/apitest/AndroidManifest.xml
new file mode 100644
index 0000000..db0f0b3
--- /dev/null
+++ b/Cronet/tests/apitest/AndroidManifest.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+ * Copyright (C) 2019 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.
+ */
+-->
+
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+        package="org.chromium.net.test">
+
+    <uses-permission android:name="android.permission.INTERNET"/>
+    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
+
+    <application>
+        <uses-library android:name="android.test.runner" />
+        <uses-library android:name="framework-cronet" />
+    </application>
+
+    <instrumentation
+        android:name="androidx.test.runner.AndroidJUnitRunner"
+        android:targetPackage="org.chromium.net.test"
+        android:label="Cronet API Networking Tests" />
+</manifest>
\ No newline at end of file
diff --git a/Cronet/tests/apitest/src/org/chromium/net/test/CronetApiTest.java b/Cronet/tests/apitest/src/org/chromium/net/test/CronetApiTest.java
new file mode 100644
index 0000000..86f2173
--- /dev/null
+++ b/Cronet/tests/apitest/src/org/chromium/net/test/CronetApiTest.java
@@ -0,0 +1,144 @@
+/*
+ * Copyright (C) 2019 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.
+ */
+package org.chromium.net.test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+
+import android.content.Context;
+import android.net.ConnectivityManager;
+import android.os.Handler;
+import android.os.Looper;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.test.platform.app.InstrumentationRegistry;
+import androidx.test.runner.AndroidJUnit4;
+
+import java.nio.ByteBuffer;
+import java.util.concurrent.CountDownLatch;
+import java.util.concurrent.Executor;
+import java.util.concurrent.TimeUnit;
+import java.util.Random;
+
+import org.chromium.net.CronetEngine;
+import org.chromium.net.CronetException;
+import org.chromium.net.UrlRequest;
+import org.chromium.net.UrlResponseInfo;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+@RunWith(AndroidJUnit4.class)
+public class CronetApiTest {
+    private static final String TAG = CronetApiTest.class.getSimpleName();
+    static final String HTTPS_PREFIX = "https://";
+    static final int TIMEOUT_MS = 12_000;
+
+    private final String[] mTestDomains = {"www.google.com", "www.android.com"};
+    @NonNull
+    private CronetEngine mCronetEngine;
+    @NonNull
+    private ConnectivityManager mCm;
+    @NonNull
+    private Executor mExecutor;
+
+    @Before
+    public void setUp() throws Exception {
+        Context context = InstrumentationRegistry.getInstrumentation().getContext();
+        mCm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
+        CronetEngine.Builder builder = new CronetEngine.Builder(context);
+        builder.enableHttpCache(CronetEngine.Builder.HTTP_CACHE_IN_MEMORY, 100 * 1024)
+                .enableHttp2(true)
+                //.enableBrotli(true)
+                .enableQuic(true);
+        mCronetEngine = builder.build();
+        mExecutor = new Handler(Looper.getMainLooper())::post;
+    }
+
+    static private void assertGreaterThan(String msg, int first, int second) {
+        assertTrue(msg + " Excepted " + first + " to be greater than " + second, first > second);
+    }
+
+    private void assertHasTestableNetworks() {
+        assertNotNull("This test requires a working Internet connection",
+            mCm.getActiveNetwork());
+    }
+
+    private String getRandomDomain() {
+        int index = (new Random()).nextInt(mTestDomains.length);
+        return mTestDomains[index];
+    }
+
+    class VerifyUrlRequestCallback extends UrlRequest.Callback {
+        private final CountDownLatch mLatch = new CountDownLatch(1);
+        private final String mUrl;
+
+        VerifyUrlRequestCallback(@NonNull String url) {
+            this.mUrl = url;
+        }
+
+        public boolean waitForAnswer() throws InterruptedException {
+            return mLatch.await(TIMEOUT_MS, TimeUnit.MILLISECONDS);
+        }
+
+        @Override
+        public void onRedirectReceived(
+                UrlRequest request, UrlResponseInfo info, String newLocationUrl) {
+            request.followRedirect();
+        }
+
+        @Override
+        public void onResponseStarted(UrlRequest request, UrlResponseInfo info) {
+            request.read(ByteBuffer.allocateDirect(32 * 1024));
+        }
+
+        @Override
+        public void onReadCompleted(
+            UrlRequest request, UrlResponseInfo info, ByteBuffer byteBuffer) {
+            byteBuffer.clear();
+            request.read(byteBuffer);
+        }
+
+
+        @Override
+        public void onSucceeded(UrlRequest request, UrlResponseInfo info) {
+            assertEquals("Unexpected http status code from " + mUrl + ".",
+                    200, info.getHttpStatusCode());
+            assertGreaterThan("Received byte from " + mUrl + " is 0.",
+                    (int)info.getReceivedByteCount(), 0);
+            mLatch.countDown();
+        }
+
+        @Override
+        public void onFailed(UrlRequest request, UrlResponseInfo info, CronetException error) {
+            fail(mUrl + error.getMessage());
+        }
+    }
+
+    @Test
+    public void testUrlGet() throws Exception {
+        assertHasTestableNetworks();
+        String url = HTTPS_PREFIX + getRandomDomain();
+        VerifyUrlRequestCallback callback = new VerifyUrlRequestCallback(url);
+        UrlRequest.Builder builder = mCronetEngine.newUrlRequestBuilder(url, callback, mExecutor);
+        builder.build().start();
+        assertTrue(url + " but not complete after " + TIMEOUT_MS + "ms.",
+                callback.waitForAnswer());
+    }
+
+}
diff --git a/Tethering/apex/Android.bp b/Tethering/apex/Android.bp
index 8cf46ef..c590850 100644
--- a/Tethering/apex/Android.bp
+++ b/Tethering/apex/Android.bp
@@ -54,6 +54,7 @@
     name: "com.android.tethering",
     defaults: [
         "ConnectivityApexDefaults",
+        "CronetApexDefaults",
         "r-launched-apex-module",
     ],
     compile_multilib: "both",
diff --git a/framework/src/android/net/ConnectivityManager.java b/framework/src/android/net/ConnectivityManager.java
index 547b4ba..b5c3c64 100644
--- a/framework/src/android/net/ConnectivityManager.java
+++ b/framework/src/android/net/ConnectivityManager.java
@@ -4080,7 +4080,7 @@
         }
     }
 
-    private class CallbackHandler extends Handler {
+    private static class CallbackHandler extends Handler {
         private static final String TAG = "ConnectivityManager.CallbackHandler";
         private static final boolean DBG = false;
 
@@ -4095,7 +4095,10 @@
         @Override
         public void handleMessage(Message message) {
             if (message.what == EXPIRE_LEGACY_REQUEST) {
-                expireRequest((NetworkCapabilities) message.obj, message.arg1);
+                // the sInstance can't be null because to send this message a ConnectivityManager
+                // instance must have been created prior to creating the thread on which this
+                // Handler is running.
+                sInstance.expireRequest((NetworkCapabilities) message.obj, message.arg1);
                 return;
             }
 
diff --git a/service-t/src/com/android/server/IpSecService.java b/service-t/src/com/android/server/IpSecService.java
index 16b9f1e..6cee08a 100644
--- a/service-t/src/com/android/server/IpSecService.java
+++ b/service-t/src/com/android/server/IpSecService.java
@@ -859,6 +859,13 @@
                             mIkey,
                             0xffffffff,
                             mIfId);
+                    mNetd.ipSecDeleteSecurityPolicy(
+                            mUid,
+                            selAddrFamily,
+                            IpSecManager.DIRECTION_FWD,
+                            mIkey,
+                            0xffffffff,
+                            mIfId);
                 }
             } catch (ServiceSpecificException | RemoteException e) {
                 Log.e(
diff --git a/service/src/com/android/server/connectivity/ClatCoordinator.java b/service/src/com/android/server/connectivity/ClatCoordinator.java
index 42b3827..5d04632 100644
--- a/service/src/com/android/server/connectivity/ClatCoordinator.java
+++ b/service/src/com/android/server/connectivity/ClatCoordinator.java
@@ -899,7 +899,7 @@
     }
 
     /**
-     * Dump the cordinator information.
+     * Dump the coordinator information.
      *
      * @param pw print writer.
      */
@@ -907,7 +907,7 @@
         // TODO: move map dump to a global place to avoid duplicate dump while there are two or
         // more IPv6 only networks.
         if (isStarted()) {
-            pw.println("CLAT tracker: " + mClatdTracker.toString());
+            pw.println("CLAT tracker: " + mClatdTracker);
             pw.println("Forwarding rules:");
             pw.increaseIndent();
             dumpBpfIngress(pw);
diff --git a/tests/unit/java/com/android/server/ConnectivityServiceTest.java b/tests/unit/java/com/android/server/ConnectivityServiceTest.java
index d7e1e6a..e8e3ae8 100755
--- a/tests/unit/java/com/android/server/ConnectivityServiceTest.java
+++ b/tests/unit/java/com/android/server/ConnectivityServiceTest.java
@@ -16946,7 +16946,7 @@
         // Wi-Fi disconnecting (e.g., because the capability change to wifiNc2 caused it
         // to stop satisfying the default request).
         mCellNetworkAgent.disconnect();
-        mDefaultNetworkCallback.expectCallback(CallbackEntry.LOST, mCellNetworkAgent);
+        mDefaultNetworkCallback.expect(CallbackEntry.LOST, mCellNetworkAgent);
         mDefaultNetworkCallback.expectAvailableCallbacksUnvalidated(mWiFiNetworkAgent);
 
     }
diff --git a/tests/unit/java/com/android/server/IpSecServiceParameterizedTest.java b/tests/unit/java/com/android/server/IpSecServiceParameterizedTest.java
index 9401d47..624071a 100644
--- a/tests/unit/java/com/android/server/IpSecServiceParameterizedTest.java
+++ b/tests/unit/java/com/android/server/IpSecServiceParameterizedTest.java
@@ -748,6 +748,13 @@
         // Verify quota and RefcountedResource objects cleaned up
         assertEquals(0, userRecord.mTunnelQuotaTracker.mCurrent);
         verify(mMockNetd).ipSecRemoveTunnelInterface(eq(createTunnelResp.interfaceName));
+
+        for (int direction : new int[] {DIRECTION_OUT, DIRECTION_IN, DIRECTION_FWD}) {
+            verify(mMockNetd, times(ADDRESS_FAMILIES.length))
+                    .ipSecDeleteSecurityPolicy(
+                            anyInt(), anyInt(), eq(direction), anyInt(), anyInt(), anyInt());
+        }
+
         try {
             userRecord.mTunnelInterfaceRecords.getRefcountedResourceOrThrow(
                     createTunnelResp.resourceId);
diff --git a/tests/unit/java/com/android/server/connectivity/VpnTest.java b/tests/unit/java/com/android/server/connectivity/VpnTest.java
index ff771f6..3c23d7b 100644
--- a/tests/unit/java/com/android/server/connectivity/VpnTest.java
+++ b/tests/unit/java/com/android/server/connectivity/VpnTest.java
@@ -31,6 +31,7 @@
 import static android.os.Build.VERSION_CODES.S_V2;
 import static android.os.UserHandle.PER_USER_RANGE;
 
+import static com.android.net.module.util.NetworkStackConstants.IPV6_MIN_MTU;
 import static com.android.testutils.Cleanup.testAndCleanup;
 import static com.android.testutils.DevSdkIgnoreRule.IgnoreUpTo;
 import static com.android.testutils.MiscAsserts.assertThrows;
@@ -205,6 +206,7 @@
     private static final byte[] TEST_VPN_PSK = "psk".getBytes();
 
     private static final int IP4_PREFIX_LEN = 32;
+    private static final int IP6_PREFIX_LEN = 64;
     private static final int MIN_PORT = 0;
     private static final int MAX_PORT = 65535;
 
@@ -218,15 +220,28 @@
             InetAddresses.parseNumericAddress("192.0.2.201");
     private static final InetAddress TEST_VPN_INTERNAL_IP =
             InetAddresses.parseNumericAddress("198.51.100.10");
+    private static final InetAddress TEST_VPN_INTERNAL_IP6 =
+            InetAddresses.parseNumericAddress("2001:db8::1");
     private static final InetAddress TEST_VPN_INTERNAL_DNS =
             InetAddresses.parseNumericAddress("8.8.8.8");
+    private static final InetAddress TEST_VPN_INTERNAL_DNS6 =
+            InetAddresses.parseNumericAddress("2001:4860:4860::8888");
 
     private static final IkeTrafficSelector IN_TS =
             new IkeTrafficSelector(MIN_PORT, MAX_PORT, TEST_VPN_INTERNAL_IP, TEST_VPN_INTERNAL_IP);
+    private static final IkeTrafficSelector IN_TS6 =
+            new IkeTrafficSelector(
+                    MIN_PORT, MAX_PORT, TEST_VPN_INTERNAL_IP6, TEST_VPN_INTERNAL_IP6);
     private static final IkeTrafficSelector OUT_TS =
             new IkeTrafficSelector(MIN_PORT, MAX_PORT,
                     InetAddresses.parseNumericAddress("0.0.0.0"),
                     InetAddresses.parseNumericAddress("255.255.255.255"));
+    private static final IkeTrafficSelector OUT_TS6 =
+            new IkeTrafficSelector(
+                    MIN_PORT,
+                    MAX_PORT,
+                    InetAddresses.parseNumericAddress("::"),
+                    InetAddresses.parseNumericAddress("ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff"));
 
     private static final Network TEST_NETWORK = new Network(Integer.MAX_VALUE);
     private static final Network TEST_NETWORK_2 = new Network(Integer.MAX_VALUE - 1);
@@ -278,6 +293,10 @@
 
         mIpSecManager = new IpSecManager(mContext, mIpSecService);
         mTestDeps = spy(new TestDeps());
+        doReturn(IPV6_MIN_MTU)
+                .when(mTestDeps)
+                .calculateVpnMtu(any(), anyInt(), anyInt(), anyBoolean());
+        doReturn(1500).when(mTestDeps).getJavaNetworkInterfaceMtu(any(), anyInt());
 
         when(mContext.getPackageManager()).thenReturn(mPackageManager);
         setMockedPackages(sPackages);
@@ -316,6 +335,8 @@
                         IpSecManager.Status.OK, TEST_TUNNEL_RESOURCE_ID, TEST_IFACE_NAME);
         when(mIpSecService.createTunnelInterface(any(), any(), any(), any(), any()))
                 .thenReturn(tunnelResp);
+        doReturn(new LinkProperties()).when(mConnectivityManager).getLinkProperties(any());
+
         // The unit test should know what kind of permission it needs and set the permission by
         // itself, so set the default value of Context#checkCallingOrSelfPermission to
         // PERMISSION_DENIED.
@@ -1694,9 +1715,12 @@
     }
 
     private ChildSessionConfiguration createChildConfig() {
-        return new ChildSessionConfiguration.Builder(Arrays.asList(IN_TS), Arrays.asList(OUT_TS))
+        return new ChildSessionConfiguration.Builder(
+                        Arrays.asList(IN_TS, IN_TS6), Arrays.asList(OUT_TS, OUT_TS6))
                 .addInternalAddress(new LinkAddress(TEST_VPN_INTERNAL_IP, IP4_PREFIX_LEN))
+                .addInternalAddress(new LinkAddress(TEST_VPN_INTERNAL_IP6, IP6_PREFIX_LEN))
                 .addInternalDnsServer(TEST_VPN_INTERNAL_DNS)
+                .addInternalDnsServer(TEST_VPN_INTERNAL_DNS6)
                 .build();
     }
 
@@ -1743,6 +1767,16 @@
 
     private PlatformVpnSnapshot verifySetupPlatformVpn(IkeSessionConfiguration ikeConfig)
             throws Exception {
+        return verifySetupPlatformVpn(ikeConfig, true);
+    }
+
+    private PlatformVpnSnapshot verifySetupPlatformVpn(
+            IkeSessionConfiguration ikeConfig, boolean mtuSupportsIpv6) throws Exception {
+        if (!mtuSupportsIpv6) {
+            doReturn(IPV6_MIN_MTU - 1).when(mTestDeps).calculateVpnMtu(any(), anyInt(), anyInt(),
+                    anyBoolean());
+        }
+
         doReturn(mMockNetworkAgent).when(mTestDeps)
                 .newNetworkAgent(
                         any(), any(), anyString(), any(), any(), any(), any(), any(), any());
@@ -1779,20 +1813,40 @@
 
         // Check LinkProperties
         final LinkProperties lp = lpCaptor.getValue();
-        final List<RouteInfo> expectedRoutes = Arrays.asList(
-                new RouteInfo(new IpPrefix(Inet4Address.ANY, 0), null /*gateway*/,
-                        TEST_IFACE_NAME, RouteInfo.RTN_UNICAST),
-                new RouteInfo(new IpPrefix(Inet6Address.ANY, 0), null /*gateway*/,
-                        TEST_IFACE_NAME, RTN_UNREACHABLE));
-        assertEquals(expectedRoutes, lp.getRoutes());
-
-        // Check internal addresses
+        final List<RouteInfo> expectedRoutes =
+                new ArrayList<>(
+                        Arrays.asList(
+                                new RouteInfo(
+                                        new IpPrefix(Inet4Address.ANY, 0),
+                                        null /* gateway */,
+                                        TEST_IFACE_NAME,
+                                        RouteInfo.RTN_UNICAST)));
         final List<LinkAddress> expectedAddresses =
-                Arrays.asList(new LinkAddress(TEST_VPN_INTERNAL_IP, IP4_PREFIX_LEN));
-        assertEquals(expectedAddresses, lp.getLinkAddresses());
+                new ArrayList<>(
+                        Arrays.asList(new LinkAddress(TEST_VPN_INTERNAL_IP, IP4_PREFIX_LEN)));
+        final List<InetAddress> expectedDns = new ArrayList<>(Arrays.asList(TEST_VPN_INTERNAL_DNS));
 
-        // Check internal DNS
-        assertEquals(Arrays.asList(TEST_VPN_INTERNAL_DNS), lp.getDnsServers());
+        if (mtuSupportsIpv6) {
+            expectedRoutes.add(
+                    new RouteInfo(
+                            new IpPrefix(Inet6Address.ANY, 0),
+                            null /* gateway */,
+                            TEST_IFACE_NAME,
+                            RouteInfo.RTN_UNICAST));
+            expectedAddresses.add(new LinkAddress(TEST_VPN_INTERNAL_IP6, IP6_PREFIX_LEN));
+            expectedDns.add(TEST_VPN_INTERNAL_DNS6);
+        } else {
+            expectedRoutes.add(
+                    new RouteInfo(
+                            new IpPrefix(Inet6Address.ANY, 0),
+                            null /* gateway */,
+                            TEST_IFACE_NAME,
+                            RTN_UNREACHABLE));
+        }
+
+        assertEquals(expectedRoutes, lp.getRoutes());
+        assertEquals(expectedAddresses, lp.getLinkAddresses());
+        assertEquals(expectedDns, lp.getDnsServers());
 
         // Check NetworkCapabilities
         assertEquals(Arrays.asList(TEST_NETWORK), ncCaptor.getValue().getUnderlyingNetworks());
@@ -1811,10 +1865,23 @@
     }
 
     @Test
+    public void testStartPlatformVpn_mtuDoesNotSupportIpv6() throws Exception {
+        final PlatformVpnSnapshot vpnSnapShot =
+                verifySetupPlatformVpn(
+                        createIkeConfig(createIkeConnectInfo(), true /* isMobikeEnabled */),
+                        false /* mtuSupportsIpv6 */);
+        vpnSnapShot.vpn.mVpnRunner.exitVpnRunner();
+    }
+
+    @Test
     public void testStartPlatformVpnMobility_mobikeEnabled() throws Exception {
         final PlatformVpnSnapshot vpnSnapShot = verifySetupPlatformVpn(
                 createIkeConfig(createIkeConnectInfo(), true /* isMobikeEnabled */));
 
+        // Set new MTU on a different network
+        final int newMtu = IPV6_MIN_MTU + 1;
+        doReturn(newMtu).when(mTestDeps).calculateVpnMtu(any(), anyInt(), anyInt(), anyBoolean());
+
         // Mock network loss and verify a cleanup task is scheduled
         vpnSnapShot.nwCb.onLost(TEST_NETWORK);
         verify(mExecutor).schedule(any(Runnable.class), anyLong(), any());
@@ -1843,6 +1910,61 @@
                 vpnSnapShot.vpn.mNetworkCapabilities.getUnderlyingNetworks());
         verify(mMockNetworkAgent)
                 .doSetUnderlyingNetworks(Collections.singletonList(TEST_NETWORK_2));
+        verify(mMockNetworkAgent).doSendLinkProperties(argThat(lp -> lp.getMtu() == newMtu));
+        verify(mMockNetworkAgent, never()).unregister();
+
+        vpnSnapShot.vpn.mVpnRunner.exitVpnRunner();
+    }
+
+    @Test
+    public void testStartPlatformVpnMobility_mobikeEnabledMtuDoesNotSupportIpv6() throws Exception {
+        final PlatformVpnSnapshot vpnSnapShot =
+                verifySetupPlatformVpn(
+                        createIkeConfig(createIkeConnectInfo(), true /* isMobikeEnabled */));
+
+        // Set MTU below 1280
+        final int newMtu = IPV6_MIN_MTU - 1;
+        doReturn(newMtu).when(mTestDeps).calculateVpnMtu(any(), anyInt(), anyInt(), anyBoolean());
+
+        // Mock new network available & MOBIKE procedures
+        vpnSnapShot.nwCb.onAvailable(TEST_NETWORK_2);
+        vpnSnapShot.ikeCb.onIkeSessionConnectionInfoChanged(createIkeConnectInfo_2());
+        vpnSnapShot.childCb.onIpSecTransformsMigrated(
+                createIpSecTransform(), createIpSecTransform());
+
+        // Verify removal of IPv6 addresses and routes triggers a network agent restart
+        final ArgumentCaptor<LinkProperties> lpCaptor =
+                ArgumentCaptor.forClass(LinkProperties.class);
+        verify(mTestDeps, times(2))
+                .newNetworkAgent(any(), any(), anyString(), any(), lpCaptor.capture(), any(), any(),
+                        any(), any());
+        verify(mMockNetworkAgent).unregister();
+        // mMockNetworkAgent is an old NetworkAgent, so it won't update LinkProperties after
+        // unregistering.
+        verify(mMockNetworkAgent, never()).doSendLinkProperties(any());
+
+        final LinkProperties lp = lpCaptor.getValue();
+
+        for (LinkAddress addr : lp.getLinkAddresses()) {
+            if (addr.isIpv6()) {
+                fail("IPv6 address found on VPN with MTU < IPv6 minimum MTU");
+            }
+        }
+
+        for (InetAddress dnsAddr : lp.getDnsServers()) {
+            if (dnsAddr instanceof Inet6Address) {
+                fail("IPv6 DNS server found on VPN with MTU < IPv6 minimum MTU");
+            }
+        }
+
+        for (RouteInfo routeInfo : lp.getRoutes()) {
+            if (routeInfo.getDestinationLinkAddress().isIpv6()
+                    && !routeInfo.isIPv6UnreachableDefault()) {
+                fail("IPv6 route found on VPN with MTU < IPv6 minimum MTU");
+            }
+        }
+
+        assertEquals(newMtu, lp.getMtu());
 
         vpnSnapShot.vpn.mVpnRunner.exitVpnRunner();
     }
diff --git a/tools/gn2bp/Android.bp.swp b/tools/gn2bp/Android.bp.swp
index 739b2b1..ad075f3 100644
--- a/tools/gn2bp/Android.bp.swp
+++ b/tools/gn2bp/Android.bp.swp
@@ -167,7 +167,7 @@
         "base/allocator/partition_allocator/starscan/pcscan_internal.cc",
         "base/allocator/partition_allocator/starscan/pcscan_scheduling.cc",
         "base/allocator/partition_allocator/starscan/snapshot.cc",
-        "base/allocator/partition_allocator/starscan/stack/asm/arm/push_registers_asm.cc",
+        "base/allocator/partition_allocator/starscan/stack/asm/x64/push_registers_asm.cc",
         "base/allocator/partition_allocator/starscan/stack/stack.cc",
         "base/allocator/partition_allocator/starscan/stats_collector.cc",
         "base/allocator/partition_allocator/starscan/write_protector.cc",
@@ -213,12 +213,12 @@
     local_include_dirs: [
         "./",
         "buildtools/third_party/libc++/",
-        "out/test/gen/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
         "third_party/android_ndk/sources/android/cpufeatures/",
+        "third_party/android_ndk/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include",
     ],
-    header_libs: [
-        "jni_headers",
-    ],
+    cpp_std: "c++20",
 }
 
 // GN: //base/allocator/partition_allocator:partition_alloc_buildflags
@@ -266,14 +266,14 @@
     name: "cronet_aml_base_android_runtime_jni_headers",
     cmd: "$(location base/android/jni_generator/jni_generator.py) --ptr_type " +
          "long " +
-         "--prev_output_dir " +
-         "gen/base/android_runtime_jni_headers " +
+         " " +
+         " " +
          "--output_dir " +
-         "$(genDir)/jni_headers/base/android_runtime_jni_headers " +
+         "$(genDir)/base/android_runtime_jni_headers " +
          "--includes " +
-         "../../../../../../base/android/jni_generator/jni_generator_helper.h " +
+         "base/android/jni_generator/jni_generator_helper.h " +
          "--jar_file " +
-         "../../third_party/android_sdk/public/platforms/android-33/android.jar " +
+         "$(location third_party/android_sdk/public/platforms/android-33/android.jar) " +
          "--output_name " +
          "Runnable_jni.h " +
          "--output_name " +
@@ -281,10 +281,12 @@
          "--input_file " +
          "java/lang/Runnable.class " +
          "--input_file " +
-         "java/lang/Runtime.class",
+         "java/lang/Runtime.class " +
+         "--javap " +
+         "$$(find out/.path -name javap)",
     out: [
-        "jni_headers/base/android_runtime_jni_headers/Runnable_jni.h",
-        "jni_headers/base/android_runtime_jni_headers/Runtime_jni.h",
+        "base/android_runtime_jni_headers/Runnable_jni.h",
+        "base/android_runtime_jni_headers/Runtime_jni.h",
     ],
     tool_files: [
         "base/android/jni_generator/jni_generator.py",
@@ -463,7 +465,7 @@
         "base/android/path_utils.cc",
         "base/android/radio_utils.cc",
         "base/android/reached_addresses_bitset.cc",
-        "base/android/reached_code_profiler.cc",
+        "base/android/reached_code_profiler_stub.cc",
         "base/android/remove_stale_data.cc",
         "base/android/scoped_hardware_buffer_fence_sync.cc",
         "base/android/scoped_hardware_buffer_handle.cc",
@@ -658,9 +660,6 @@
         "base/process/process_metrics_posix.cc",
         "base/process/process_posix.cc",
         "base/profiler/arm_cfi_table.cc",
-        "base/profiler/chrome_unwind_info_android.cc",
-        "base/profiler/chrome_unwinder_android.cc",
-        "base/profiler/chrome_unwinder_android_v2.cc",
         "base/profiler/frame.cc",
         "base/profiler/metadata_recorder.cc",
         "base/profiler/module_cache.cc",
@@ -840,7 +839,6 @@
         "base/timer/timer.cc",
         "base/timer/wall_clock_timer.cc",
         "base/token.cc",
-        "base/trace_event/cfi_backtrace_android.cc",
         "base/trace_event/heap_profiler_allocation_context.cc",
         "base/trace_event/heap_profiler_allocation_context_tracker.cc",
         "base/trace_event/memory_allocator_dump_guid.cc",
@@ -875,6 +873,7 @@
         "cronet_aml_base_allocator_partition_allocator_logging_buildflags",
         "cronet_aml_base_allocator_partition_allocator_partition_alloc_buildflags",
         "cronet_aml_base_anchor_functions_buildflags",
+        "cronet_aml_base_android_runtime_jni_headers",
         "cronet_aml_base_base_jni_headers",
         "cronet_aml_base_build_date",
         "cronet_aml_base_cfi_buildflags",
@@ -904,6 +903,7 @@
         "cronet_aml_base_allocator_partition_allocator_logging_buildflags",
         "cronet_aml_base_allocator_partition_allocator_partition_alloc_buildflags",
         "cronet_aml_base_anchor_functions_buildflags",
+        "cronet_aml_base_android_runtime_jni_headers",
         "cronet_aml_base_base_jni_headers",
         "cronet_aml_base_build_date",
         "cronet_aml_base_cfi_buildflags",
@@ -957,17 +957,19 @@
     local_include_dirs: [
         "./",
         "buildtools/third_party/libc++/",
-        "out/test/gen/",
-        "out/test/gen/jni_headers/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
         "third_party/abseil-cpp/",
         "third_party/android_ndk/sources/android/cpufeatures/",
         "third_party/boringssl/src/include/",
         "third_party/icu/source/common/",
         "third_party/icu/source/i18n/",
+        "third_party/android_ndk/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include",
     ],
     header_libs: [
         "jni_headers",
     ],
+    cpp_std: "c++20",
 }
 
 // GN: //base:base_jni_headers
@@ -1017,12 +1019,12 @@
     ],
     cmd: "$(location base/android/jni_generator/jni_generator.py) --ptr_type " +
          "long " +
-         "--prev_output_dir " +
-         "gen/base/base_jni_headers " +
+         " " +
+         " " +
          "--output_dir " +
-         "$(genDir)/jni_headers/base/base_jni_headers " +
+         "$(genDir)/base/base_jni_headers " +
          "--includes " +
-         "../../../../../../base/android/jni_generator/jni_generator_helper.h " +
+         "base/android/jni_generator/jni_generator_helper.h " +
          "--use_proxy_hash " +
          "--output_name " +
          "ApkAssets_jni.h " +
@@ -1185,46 +1187,46 @@
          "--input_file " +
          "$(location base/android/java/src/org/chromium/base/task/TaskRunnerImpl.java)",
     out: [
-        "jni_headers/base/base_jni_headers/ApkAssets_jni.h",
-        "jni_headers/base/base_jni_headers/ApplicationStatus_jni.h",
-        "jni_headers/base/base_jni_headers/BaseFeatureList_jni.h",
-        "jni_headers/base/base_jni_headers/BuildInfo_jni.h",
-        "jni_headers/base/base_jni_headers/BundleUtils_jni.h",
-        "jni_headers/base/base_jni_headers/Callback_jni.h",
-        "jni_headers/base/base_jni_headers/ChildProcessService_jni.h",
-        "jni_headers/base/base_jni_headers/CommandLine_jni.h",
-        "jni_headers/base/base_jni_headers/ContentUriUtils_jni.h",
-        "jni_headers/base/base_jni_headers/CpuFeatures_jni.h",
-        "jni_headers/base/base_jni_headers/EarlyTraceEvent_jni.h",
-        "jni_headers/base/base_jni_headers/EventLog_jni.h",
-        "jni_headers/base/base_jni_headers/FeatureList_jni.h",
-        "jni_headers/base/base_jni_headers/Features_jni.h",
-        "jni_headers/base/base_jni_headers/FieldTrialList_jni.h",
-        "jni_headers/base/base_jni_headers/FileUtils_jni.h",
-        "jni_headers/base/base_jni_headers/ImportantFileWriterAndroid_jni.h",
-        "jni_headers/base/base_jni_headers/IntStringCallback_jni.h",
-        "jni_headers/base/base_jni_headers/JNIUtils_jni.h",
-        "jni_headers/base/base_jni_headers/JankMetricUMARecorder_jni.h",
-        "jni_headers/base/base_jni_headers/JavaExceptionReporter_jni.h",
-        "jni_headers/base/base_jni_headers/JavaHandlerThread_jni.h",
-        "jni_headers/base/base_jni_headers/JavaHeapDumpGenerator_jni.h",
-        "jni_headers/base/base_jni_headers/LibraryLoader_jni.h",
-        "jni_headers/base/base_jni_headers/LibraryPrefetcher_jni.h",
-        "jni_headers/base/base_jni_headers/LocaleUtils_jni.h",
-        "jni_headers/base/base_jni_headers/MemoryPressureListener_jni.h",
-        "jni_headers/base/base_jni_headers/NativeUmaRecorder_jni.h",
-        "jni_headers/base/base_jni_headers/PathService_jni.h",
-        "jni_headers/base/base_jni_headers/PathUtils_jni.h",
-        "jni_headers/base/base_jni_headers/PostTask_jni.h",
-        "jni_headers/base/base_jni_headers/PowerMonitor_jni.h",
-        "jni_headers/base/base_jni_headers/RadioUtils_jni.h",
-        "jni_headers/base/base_jni_headers/StatisticsRecorderAndroid_jni.h",
-        "jni_headers/base/base_jni_headers/SysUtils_jni.h",
-        "jni_headers/base/base_jni_headers/TaskRunnerImpl_jni.h",
-        "jni_headers/base/base_jni_headers/ThreadUtils_jni.h",
-        "jni_headers/base/base_jni_headers/TimezoneUtils_jni.h",
-        "jni_headers/base/base_jni_headers/TraceEvent_jni.h",
-        "jni_headers/base/base_jni_headers/UnguessableToken_jni.h",
+        "base/base_jni_headers/ApkAssets_jni.h",
+        "base/base_jni_headers/ApplicationStatus_jni.h",
+        "base/base_jni_headers/BaseFeatureList_jni.h",
+        "base/base_jni_headers/BuildInfo_jni.h",
+        "base/base_jni_headers/BundleUtils_jni.h",
+        "base/base_jni_headers/Callback_jni.h",
+        "base/base_jni_headers/ChildProcessService_jni.h",
+        "base/base_jni_headers/CommandLine_jni.h",
+        "base/base_jni_headers/ContentUriUtils_jni.h",
+        "base/base_jni_headers/CpuFeatures_jni.h",
+        "base/base_jni_headers/EarlyTraceEvent_jni.h",
+        "base/base_jni_headers/EventLog_jni.h",
+        "base/base_jni_headers/FeatureList_jni.h",
+        "base/base_jni_headers/Features_jni.h",
+        "base/base_jni_headers/FieldTrialList_jni.h",
+        "base/base_jni_headers/FileUtils_jni.h",
+        "base/base_jni_headers/ImportantFileWriterAndroid_jni.h",
+        "base/base_jni_headers/IntStringCallback_jni.h",
+        "base/base_jni_headers/JNIUtils_jni.h",
+        "base/base_jni_headers/JankMetricUMARecorder_jni.h",
+        "base/base_jni_headers/JavaExceptionReporter_jni.h",
+        "base/base_jni_headers/JavaHandlerThread_jni.h",
+        "base/base_jni_headers/JavaHeapDumpGenerator_jni.h",
+        "base/base_jni_headers/LibraryLoader_jni.h",
+        "base/base_jni_headers/LibraryPrefetcher_jni.h",
+        "base/base_jni_headers/LocaleUtils_jni.h",
+        "base/base_jni_headers/MemoryPressureListener_jni.h",
+        "base/base_jni_headers/NativeUmaRecorder_jni.h",
+        "base/base_jni_headers/PathService_jni.h",
+        "base/base_jni_headers/PathUtils_jni.h",
+        "base/base_jni_headers/PostTask_jni.h",
+        "base/base_jni_headers/PowerMonitor_jni.h",
+        "base/base_jni_headers/RadioUtils_jni.h",
+        "base/base_jni_headers/StatisticsRecorderAndroid_jni.h",
+        "base/base_jni_headers/SysUtils_jni.h",
+        "base/base_jni_headers/TaskRunnerImpl_jni.h",
+        "base/base_jni_headers/ThreadUtils_jni.h",
+        "base/base_jni_headers/TimezoneUtils_jni.h",
+        "base/base_jni_headers/TraceEvent_jni.h",
+        "base/base_jni_headers/UnguessableToken_jni.h",
     ],
     tool_files: [
         "base/android/jni_generator/jni_generator.py",
@@ -1269,11 +1271,11 @@
     local_include_dirs: [
         "./",
         "buildtools/third_party/libc++/",
-        "out/test/gen/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
+        "third_party/android_ndk/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include",
     ],
-    header_libs: [
-        "jni_headers",
-    ],
+    cpp_std: "c++20",
 }
 
 // GN: //base:build_date
@@ -1332,7 +1334,7 @@
 // GN: //base:debugging_buildflags
 genrule {
     name: "cronet_aml_base_debugging_buildflags",
-    cmd: "echo '--flags DCHECK_IS_CONFIGURABLE=\"false\" ENABLE_LOCATION_SOURCE=\"true\" ENABLE_PROFILING=\"false\" CAN_UNWIND_WITH_FRAME_POINTERS=\"false\" UNSAFE_DEVELOPER_BUILD=\"true\" CAN_UNWIND_WITH_CFI_TABLE=\"true\" EXCLUDE_UNWIND_TABLES=\"false\" ENABLE_GDBINIT_WARNING=\"true\" ENABLE_LLDBINIT_WARNING=\"false\" EXPENSIVE_DCHECKS_ARE_ON=\"true\" ENABLE_STACK_TRACE_LINE_NUMBERS=\"false\"' | " +
+    cmd: "echo '--flags DCHECK_IS_CONFIGURABLE=\"false\" ENABLE_LOCATION_SOURCE=\"true\" ENABLE_PROFILING=\"false\" CAN_UNWIND_WITH_FRAME_POINTERS=\"false\" UNSAFE_DEVELOPER_BUILD=\"true\" CAN_UNWIND_WITH_CFI_TABLE=\"false\" EXCLUDE_UNWIND_TABLES=\"false\" ENABLE_GDBINIT_WARNING=\"true\" ENABLE_LLDBINIT_WARNING=\"false\" EXPENSIVE_DCHECKS_ARE_ON=\"true\" ENABLE_STACK_TRACE_LINE_NUMBERS=\"false\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
          "--rulename " +
@@ -1389,6 +1391,405 @@
     ],
 }
 
+// GN: //base:jni_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_base_jni_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[\"$(location build/android/build_java.build_config.json)\", \"$(location third_party/android_sdk/android_sdk_java.build_config.json)\"] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/base/jni_java.build_config.json " +
+         "--gn-target " +
+         "//base:jni_java " +
+         "--device-jar-path " +
+         "$(location base/jni_java.processed.jar) " +
+         "--host-jar-path " +
+         "$(location lib.java/base/jni_java.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location base/jni_java.processed.jar) " +
+         "--interface-jar-path " +
+         "$(location base/jni_java.turbine.jar) " +
+         "--dex-path " +
+         "obj/base/jni_java.dex.jar " +
+         "--supports-android " +
+         "--java-sources-file " +
+         "gen/base/jni_java.sources " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "base/jni_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //base:jni_java__compile_java
+genrule {
+    name: "cronet_aml_base_jni_java__compile_java",
+    srcs: [
+        "base/android/java/src/org/chromium/base/JniException.java",
+        "base/android/java/src/org/chromium/base/JniStaticTestMocker.java",
+        "base/android/java/src/org/chromium/base/NativeLibraryLoadedStatus.java",
+        "base/android/java/src/org/chromium/base/annotations/AccessedByNative.java",
+        "base/android/java/src/org/chromium/base/annotations/CalledByNative.java",
+        "base/android/java/src/org/chromium/base/annotations/CalledByNativeForTesting.java",
+        "base/android/java/src/org/chromium/base/annotations/CalledByNativeUnchecked.java",
+        "base/android/java/src/org/chromium/base/annotations/JNIAdditionalImport.java",
+        "base/android/java/src/org/chromium/base/annotations/JNINamespace.java",
+        "base/android/java/src/org/chromium/base/annotations/JniIgnoreNatives.java",
+        "base/android/java/src/org/chromium/base/annotations/NativeClassQualifiedName.java",
+        "base/android/java/src/org/chromium/base/annotations/NativeMethods.java",
+    ],
+    cmd: "$(location build/android/gyp/compile_java.py) --depfile " +
+         "gen/base/jni_java__compile_java.d " +
+         "--generated-dir " +
+         "gen/base/jni_java/generated_java " +
+         "--jar-path " +
+         "obj/base/jni_java.processed.jar " +
+         "--java-srcjars " +
+         "[\"gen/base/jni_java.generated.srcjar\"] " +
+         "--target-name " +
+         "//base:jni_java__compile_java " +
+         "--header-jar " +
+         "obj/base/jni_java.turbine.jar " +
+         "--classpath " +
+         "[\"obj/base/jni_java.turbine.jar\"] " +
+         "--classpath " +
+         "@FileArg(gen/base/jni_java.build_config.json:deps_info:javac_full_interface_classpath) " +
+         "--chromium-code " +
+         "1 " +
+         "@gen/base/jni_java.sources",
+    out: [
+        "//out/test/obj/base/jni_java.processed.jar",
+        "//out/test/obj/base/jni_java.processed.jar.info",
+    ],
+    tool_files: [
+        "build/android/gyp/compile_java.py",
+        "build/android/gyp/javac_output_processor.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/jar_info_utils.py",
+        "build/android/gyp/util/md5_check.py",
+        "build/android/gyp/util/server_utils.py",
+        "build/android/list_java_targets.py",
+        "build/android/pylib/__init__.py",
+        "build/android/pylib/constants/__init__.py",
+        "build/gn_helpers.py",
+        "build/print_python_deps.py",
+        "out/test/gen/base/jni_java.build_config.json",
+        "out/test/gen/base/jni_java.generated.srcjar",
+        "out/test/gen/base/jni_java.sources",
+        "out/test/obj/base/jni_java.turbine.jar",
+        "third_party/catapult/devil/devil/__init__.py",
+        "third_party/catapult/devil/devil/android/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/chrome.py",
+        "third_party/catapult/devil/devil/android/sdk/__init__.py",
+        "third_party/catapult/devil/devil/android/sdk/keyevent.py",
+        "third_party/catapult/devil/devil/android/sdk/version_codes.py",
+        "third_party/catapult/devil/devil/constants/__init__.py",
+        "third_party/catapult/devil/devil/constants/exit_codes.py",
+        "third_party/colorama/src/colorama/__init__.py",
+        "third_party/colorama/src/colorama/ansi.py",
+        "third_party/colorama/src/colorama/ansitowin32.py",
+        "third_party/colorama/src/colorama/initialise.py",
+        "third_party/colorama/src/colorama/win32.py",
+        "third_party/colorama/src/colorama/winterm.py",
+        "tools/android/modularization/convenience/lookup_dep.py",
+    ],
+}
+
+// GN: //base:jni_java__dex
+genrule {
+    name: "cronet_aml_base_jni_java__dex",
+    cmd: "$(location build/android/gyp/dex.py) --depfile " +
+         "gen/base/jni_java__dex.d " +
+         "--output " +
+         "obj/base/jni_java.dex.jar " +
+         "--min-api " +
+         "19 " +
+         "--r8-jar-path " +
+         "../../third_party/r8/lib/r8.jar " +
+         "--custom-d8-jar-path " +
+         "../../third_party/r8/custom_d8.jar " +
+         "--incremental-dir " +
+         "obj/base/jni_java__dex " +
+         "--library " +
+         "--class-inputs " +
+         "[\"obj/base/jni_java.processed.jar\"] " +
+         "--desugar " +
+         "--desugar-jdk-libs-json " +
+         "../../third_party/r8/desugar_jdk_libs.json " +
+         "--show-desugar-default-interface-warnings " +
+         "--classpath " +
+         "obj/base/jni_java.processed.jar " +
+         "--desugar-dependencies " +
+         "gen/base/jni_java__dex.desugardeps " +
+         "--bootclasspath " +
+         "@FileArg(gen/base/jni_java.build_config.json:android:sdk_jars) " +
+         "--classpath " +
+         "@FileArg(gen/base/jni_java.build_config.json:deps_info:javac_full_interface_classpath) " +
+         "--force-enable-assertions",
+    out: [
+        "//out/test/obj/base/jni_java.dex.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/dex.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/md5_check.py",
+        "build/android/gyp/util/zipalign.py",
+        "build/gn_helpers.py",
+        "build/print_python_deps.py",
+        "out/test/obj/base/jni_java.processed.jar",
+        "third_party/r8/custom_d8.jar",
+        "third_party/r8/d8/lib/r8.jar",
+        "third_party/r8/desugar_jdk_libs.json",
+    ],
+}
+
+// GN: //base:jni_java__errorprone
+genrule {
+    name: "cronet_aml_base_jni_java__errorprone",
+    srcs: [
+        "base/android/java/src/org/chromium/base/JniException.java",
+        "base/android/java/src/org/chromium/base/JniStaticTestMocker.java",
+        "base/android/java/src/org/chromium/base/NativeLibraryLoadedStatus.java",
+        "base/android/java/src/org/chromium/base/annotations/AccessedByNative.java",
+        "base/android/java/src/org/chromium/base/annotations/CalledByNative.java",
+        "base/android/java/src/org/chromium/base/annotations/CalledByNativeForTesting.java",
+        "base/android/java/src/org/chromium/base/annotations/CalledByNativeUnchecked.java",
+        "base/android/java/src/org/chromium/base/annotations/JNIAdditionalImport.java",
+        "base/android/java/src/org/chromium/base/annotations/JNINamespace.java",
+        "base/android/java/src/org/chromium/base/annotations/JniIgnoreNatives.java",
+        "base/android/java/src/org/chromium/base/annotations/NativeClassQualifiedName.java",
+        "base/android/java/src/org/chromium/base/annotations/NativeMethods.java",
+    ],
+    cmd: "$(location build/android/gyp/compile_java.py) --depfile " +
+         "gen/base/jni_java__errorprone.d " +
+         "--generated-dir " +
+         "gen/base/jni_java/generated_java " +
+         "--jar-path " +
+         "obj/base/jni_java__errorprone.errorprone.stamp " +
+         "--java-srcjars " +
+         "[\"gen/base/jni_java.generated.srcjar\"] " +
+         "--target-name " +
+         "//base:jni_java__errorprone " +
+         "--header-jar " +
+         "obj/base/jni_java.turbine.jar " +
+         "--classpath " +
+         "[\"obj/base/jni_java.turbine.jar\"] " +
+         "--classpath " +
+         "@FileArg(gen/base/jni_java.build_config.json:deps_info:javac_full_interface_classpath) " +
+         "--chromium-code " +
+         "1 " +
+         "--processorpath " +
+         "@FileArg(gen/tools/android/errorprone_plugin/errorprone_plugin.build_config.json:deps_info:host_classpath) " +
+         "--enable-errorprone " +
+         "@gen/base/jni_java.sources",
+    out: [
+        "//out/test/obj/base/jni_java__errorprone.errorprone.stamp",
+    ],
+    tool_files: [
+        "build/android/gyp/compile_java.py",
+        "build/android/gyp/javac_output_processor.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/jar_info_utils.py",
+        "build/android/gyp/util/md5_check.py",
+        "build/android/gyp/util/server_utils.py",
+        "build/android/list_java_targets.py",
+        "build/android/pylib/__init__.py",
+        "build/android/pylib/constants/__init__.py",
+        "build/gn_helpers.py",
+        "build/print_python_deps.py",
+        "out/test/gen/base/jni_java.build_config.json",
+        "out/test/gen/base/jni_java.generated.srcjar",
+        "out/test/gen/base/jni_java.sources",
+        "out/test/obj/base/jni_java.turbine.jar",
+        "third_party/catapult/devil/devil/__init__.py",
+        "third_party/catapult/devil/devil/android/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/chrome.py",
+        "third_party/catapult/devil/devil/android/sdk/__init__.py",
+        "third_party/catapult/devil/devil/android/sdk/keyevent.py",
+        "third_party/catapult/devil/devil/android/sdk/version_codes.py",
+        "third_party/catapult/devil/devil/constants/__init__.py",
+        "third_party/catapult/devil/devil/constants/exit_codes.py",
+        "third_party/colorama/src/colorama/__init__.py",
+        "third_party/colorama/src/colorama/ansi.py",
+        "third_party/colorama/src/colorama/ansitowin32.py",
+        "third_party/colorama/src/colorama/initialise.py",
+        "third_party/colorama/src/colorama/win32.py",
+        "third_party/colorama/src/colorama/winterm.py",
+        "tools/android/modularization/convenience/lookup_dep.py",
+    ],
+}
+
+// GN: //base:jni_java__header
+genrule {
+    name: "cronet_aml_base_jni_java__header",
+    srcs: [
+        "base/android/java/src/org/chromium/base/JniException.java",
+        "base/android/java/src/org/chromium/base/JniStaticTestMocker.java",
+        "base/android/java/src/org/chromium/base/NativeLibraryLoadedStatus.java",
+        "base/android/java/src/org/chromium/base/annotations/AccessedByNative.java",
+        "base/android/java/src/org/chromium/base/annotations/CalledByNative.java",
+        "base/android/java/src/org/chromium/base/annotations/CalledByNativeForTesting.java",
+        "base/android/java/src/org/chromium/base/annotations/CalledByNativeUnchecked.java",
+        "base/android/java/src/org/chromium/base/annotations/JNIAdditionalImport.java",
+        "base/android/java/src/org/chromium/base/annotations/JNINamespace.java",
+        "base/android/java/src/org/chromium/base/annotations/JniIgnoreNatives.java",
+        "base/android/java/src/org/chromium/base/annotations/NativeClassQualifiedName.java",
+        "base/android/java/src/org/chromium/base/annotations/NativeMethods.java",
+    ],
+    cmd: "$(location build/android/gyp/turbine.py) --depfile " +
+         "gen/base/jni_java__header.d " +
+         "--generated-dir " +
+         "gen/base/jni_java/generated_java " +
+         "--jar-path " +
+         "obj/base/jni_java.turbine.jar " +
+         "--java-srcjars " +
+         "[] " +
+         "--target-name " +
+         "//base:jni_java__header " +
+         "--classpath " +
+         "@FileArg(gen/base/jni_java.build_config.json:javac:interface_classpath) " +
+         "--processorpath " +
+         "@FileArg(gen/base/jni_java.build_config.json:javac:processor_classpath) " +
+         "--processors " +
+         "@FileArg(gen/base/jni_java.build_config.json:javac:processor_classes) " +
+         "--turbine-jar-path " +
+         "../../third_party/turbine/turbine.jar " +
+         "--generated-jar-path " +
+         "gen/base/jni_java.generated.srcjar " +
+         "--chromium-code " +
+         "1 " +
+         "@gen/base/jni_java.sources",
+    out: [
+        "//out/test/obj/base/jni_java.turbine.jar",
+        "base/jni_java.generated.srcjar",
+    ],
+    tool_files: [
+        "build/android/gyp/javac_output_processor.py",
+        "build/android/gyp/turbine.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/list_java_targets.py",
+        "build/android/pylib/__init__.py",
+        "build/android/pylib/constants/__init__.py",
+        "build/gn_helpers.py",
+        "out/test/gen/base/jni_java.build_config.json",
+        "out/test/gen/base/jni_java.sources",
+        "third_party/catapult/devil/devil/__init__.py",
+        "third_party/catapult/devil/devil/android/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/chrome.py",
+        "third_party/catapult/devil/devil/android/sdk/__init__.py",
+        "third_party/catapult/devil/devil/android/sdk/keyevent.py",
+        "third_party/catapult/devil/devil/android/sdk/version_codes.py",
+        "third_party/catapult/devil/devil/constants/__init__.py",
+        "third_party/catapult/devil/devil/constants/exit_codes.py",
+        "third_party/colorama/src/colorama/__init__.py",
+        "third_party/colorama/src/colorama/ansi.py",
+        "third_party/colorama/src/colorama/ansitowin32.py",
+        "third_party/colorama/src/colorama/initialise.py",
+        "third_party/colorama/src/colorama/win32.py",
+        "third_party/colorama/src/colorama/winterm.py",
+        "third_party/turbine/turbine.jar",
+        "tools/android/modularization/convenience/lookup_dep.py",
+    ],
+}
+
+// GN: //base:jni_java__host
+genrule {
+    name: "cronet_aml_base_jni_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "obj/base/jni_java.processed.jar " +
+         "--output " +
+         "lib.java/base/jni_java.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/base/jni_java.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/obj/base/jni_java.processed.jar",
+    ],
+}
+
+// GN: //base:jni_java__validate
+genrule {
+    name: "cronet_aml_base_jni_java__validate",
+    cmd: "$(location build/android/gyp/bytecode_processor.py) --target-name " +
+         "//base:jni_java__validate " +
+         "--script " +
+         "bin/helper/bytecode_processor " +
+         "--gn-target " +
+         "//base:jni_java " +
+         "--input-jar " +
+         "obj/base/jni_java.processed.jar " +
+         "--stamp " +
+         "obj/base/jni_java__validate.bytecode.stamp " +
+         "--direct-classpath-jars " +
+         "@FileArg(gen/base/jni_java.build_config.json:javac:classpath) " +
+         "--full-classpath-jars " +
+         "@FileArg(gen/base/jni_java.build_config.json:deps_info:javac_full_classpath) " +
+         "--full-classpath-gn-targets " +
+         "@FileArg(gen/base/jni_java.build_config.json:deps_info:javac_full_classpath_targets)",
+    out: [
+        "//out/test/obj/base/jni_java__validate.bytecode.stamp",
+    ],
+    tool_files: [
+        "build/android/gyp/bytecode_processor.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/server_utils.py",
+        "build/gn_helpers.py",
+        "out/test/bin/helper/bytecode_processor",
+        "out/test/gen/base/jni_java.build_config.json",
+        "out/test/obj/base/jni_java.processed.jar",
+    ],
+}
+
 // GN: //base:logging_buildflags
 genrule {
     name: "cronet_aml_base_logging_buildflags",
@@ -1497,7 +1898,7 @@
 // GN: //base:profiler_buildflags
 genrule {
     name: "cronet_aml_base_profiler_buildflags",
-    cmd: "echo '--flags ENABLE_ARM_CFI_TABLE=\"true\" IOS_STACK_PROFILER_ENABLED=\"true\" USE_ANDROID_UNWINDER_V2=\"true\"' | " +
+    cmd: "echo '--flags ENABLE_ARM_CFI_TABLE=\"false\" IOS_STACK_PROFILER_ENABLED=\"true\" USE_ANDROID_UNWINDER_V2=\"true\"' | " +
          "$(location build/write_buildflag_header.py) --output " +
          "$(out) " +
          "--rulename " +
@@ -1590,11 +1991,11 @@
     local_include_dirs: [
         "./",
         "buildtools/third_party/libc++/",
-        "out/test/gen/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
+        "third_party/android_ndk/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include",
     ],
-    header_libs: [
-        "jni_headers",
-    ],
+    cpp_std: "c++20",
 }
 
 // GN: //base/third_party/dynamic_annotations:dynamic_annotations
@@ -1624,11 +2025,11 @@
     local_include_dirs: [
         "./",
         "buildtools/third_party/libc++/",
-        "out/test/gen/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
+        "third_party/android_ndk/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include",
     ],
-    header_libs: [
-        "jni_headers",
-    ],
+    cpp_std: "c++20",
 }
 
 // GN: //base:tracing_buildflags
@@ -1651,6 +2052,834 @@
     ],
 }
 
+// GN: //build/android:build_config_gen
+genrule {
+    name: "cronet_aml_build_android_build_config_gen",
+    tools: [
+        "soong_zip",
+    ],
+    cmd: "echo " +
+         "\"package org.chromium.build;\n " +
+         "public class BuildConfig {\n " +
+         "public static boolean IS_MULTIDEX_ENABLED ;\n " +
+         "public static boolean ENABLE_ASSERTS = true;\n " +
+         "public static boolean IS_UBSAN ;\n " +
+         "public static boolean IS_CHROME_BRANDED ;\n " +
+         "public static int R_STRING_PRODUCT_VERSION ;\n " +
+         "public static int MIN_SDK_VERSION = 1;\n " +
+         "public static boolean BUNDLES_SUPPORTED ;\n " +
+         "public static boolean IS_INCREMENTAL_INSTALL ;\n " +
+         "public static boolean ISOLATED_SPLITS_ENABLED ;\n " +
+         "public static boolean IS_FOR_TEST ;\n " +
+         "}\n\" " +
+         "> $(genDir)/BuildConfig.java && " +
+         "$(location soong_zip) -o $(out) -srcjar -f $(genDir)/BuildConfig.java",
+    out: [
+        "build/android/build_config_gen.srcjar",
+    ],
+}
+
+// GN: //build/android:build_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_build_android_build_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[\"$(location third_party/android_sdk/android_sdk_java.build_config.json)\"] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/build/android/build_java.build_config.json " +
+         "--gn-target " +
+         "//build/android:build_java " +
+         "--device-jar-path " +
+         "$(location build/android/build_java.processed.jar) " +
+         "--host-jar-path " +
+         "$(location lib.java/build/android/build_java.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location build/android/build_java.javac.jar) " +
+         "--interface-jar-path " +
+         "$(location build/android/build_java.turbine.jar) " +
+         "--dex-path " +
+         "obj/build/android/build_java.dex.jar " +
+         "--supports-android " +
+         "--java-sources-file " +
+         "gen/build/android/build_java.sources " +
+         "--bundled-srcjars " +
+         "[\"$(location build/android/build_config_gen.srcjar)\", \"$(location build/android/native_libraries_gen.srcjar)\"] " +
+         "--proguard-configs " +
+         "[$(location build/android/chromium_annotations.flags)]",
+    out: [
+        "build/android/build_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/chromium_annotations.flags",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //build/android:build_java__compile_java
+genrule {
+    name: "cronet_aml_build_android_build_java__compile_java",
+    srcs: [
+        "build/android/java/src/org/chromium/build/annotations/AlwaysInline.java",
+        "build/android/java/src/org/chromium/build/annotations/CheckDiscard.java",
+        "build/android/java/src/org/chromium/build/annotations/DoNotClassMerge.java",
+        "build/android/java/src/org/chromium/build/annotations/DoNotInline.java",
+        "build/android/java/src/org/chromium/build/annotations/IdentifierNameString.java",
+        "build/android/java/src/org/chromium/build/annotations/MainDex.java",
+        "build/android/java/src/org/chromium/build/annotations/MockedInTests.java",
+        "build/android/java/src/org/chromium/build/annotations/UsedByReflection.java",
+    ],
+    cmd: "$(location build/android/gyp/compile_java.py) --depfile " +
+         "gen/build/android/build_java__compile_java.d " +
+         "--generated-dir " +
+         "gen/build/android/build_java/generated_java " +
+         "--jar-path " +
+         "obj/build/android/build_java.javac.jar " +
+         "--java-srcjars " +
+         "[\"gen/build/android/build_config_gen.srcjar\", \"gen/build/android/native_libraries_gen.srcjar\", \"gen/build/android/build_java.generated.srcjar\"] " +
+         "--target-name " +
+         "//build/android:build_java__compile_java " +
+         "--header-jar " +
+         "obj/build/android/build_java.turbine.jar " +
+         "--classpath " +
+         "[\"obj/build/android/build_java.turbine.jar\"] " +
+         "--classpath " +
+         "@FileArg(gen/build/android/build_java.build_config.json:deps_info:javac_full_interface_classpath) " +
+         "--chromium-code " +
+         "1 " +
+         "--jar-info-exclude-globs " +
+         "[\"*/build/BuildConfig.class\", \"*/NativeLibraries.class\"] " +
+         "@gen/build/android/build_java.sources",
+    out: [
+        "//out/test/obj/build/android/build_java.javac.jar",
+        "//out/test/obj/build/android/build_java.javac.jar.info",
+    ],
+    tool_files: [
+        "build/android/gyp/compile_java.py",
+        "build/android/gyp/javac_output_processor.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/jar_info_utils.py",
+        "build/android/gyp/util/md5_check.py",
+        "build/android/gyp/util/server_utils.py",
+        "build/android/list_java_targets.py",
+        "build/android/pylib/__init__.py",
+        "build/android/pylib/constants/__init__.py",
+        "build/gn_helpers.py",
+        "build/print_python_deps.py",
+        "out/test/gen/build/android/build_config_gen.srcjar",
+        "out/test/gen/build/android/build_java.build_config.json",
+        "out/test/gen/build/android/build_java.generated.srcjar",
+        "out/test/gen/build/android/build_java.sources",
+        "out/test/gen/build/android/native_libraries_gen.srcjar",
+        "out/test/obj/build/android/build_java.turbine.jar",
+        "third_party/catapult/devil/devil/__init__.py",
+        "third_party/catapult/devil/devil/android/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/chrome.py",
+        "third_party/catapult/devil/devil/android/sdk/__init__.py",
+        "third_party/catapult/devil/devil/android/sdk/keyevent.py",
+        "third_party/catapult/devil/devil/android/sdk/version_codes.py",
+        "third_party/catapult/devil/devil/constants/__init__.py",
+        "third_party/catapult/devil/devil/constants/exit_codes.py",
+        "third_party/colorama/src/colorama/__init__.py",
+        "third_party/colorama/src/colorama/ansi.py",
+        "third_party/colorama/src/colorama/ansitowin32.py",
+        "third_party/colorama/src/colorama/initialise.py",
+        "third_party/colorama/src/colorama/win32.py",
+        "third_party/colorama/src/colorama/winterm.py",
+        "tools/android/modularization/convenience/lookup_dep.py",
+    ],
+}
+
+// GN: //build/android:build_java__dex
+genrule {
+    name: "cronet_aml_build_android_build_java__dex",
+    cmd: "$(location build/android/gyp/dex.py) --depfile " +
+         "gen/build/android/build_java__dex.d " +
+         "--output " +
+         "obj/build/android/build_java.dex.jar " +
+         "--min-api " +
+         "19 " +
+         "--r8-jar-path " +
+         "../../third_party/r8/lib/r8.jar " +
+         "--custom-d8-jar-path " +
+         "../../third_party/r8/custom_d8.jar " +
+         "--incremental-dir " +
+         "obj/build/android/build_java__dex " +
+         "--library " +
+         "--class-inputs " +
+         "[\"obj/build/android/build_java.processed.jar\"] " +
+         "--desugar " +
+         "--desugar-jdk-libs-json " +
+         "../../third_party/r8/desugar_jdk_libs.json " +
+         "--show-desugar-default-interface-warnings " +
+         "--classpath " +
+         "obj/build/android/build_java.javac.jar " +
+         "--desugar-dependencies " +
+         "gen/build/android/build_java__dex.desugardeps " +
+         "--bootclasspath " +
+         "@FileArg(gen/build/android/build_java.build_config.json:android:sdk_jars) " +
+         "--classpath " +
+         "@FileArg(gen/build/android/build_java.build_config.json:deps_info:javac_full_interface_classpath) " +
+         "--force-enable-assertions",
+    out: [
+        "//out/test/obj/build/android/build_java.dex.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/dex.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/md5_check.py",
+        "build/android/gyp/util/zipalign.py",
+        "build/gn_helpers.py",
+        "build/print_python_deps.py",
+        "out/test/obj/build/android/build_java.javac.jar",
+        "out/test/obj/build/android/build_java.processed.jar",
+        "third_party/r8/custom_d8.jar",
+        "third_party/r8/d8/lib/r8.jar",
+        "third_party/r8/desugar_jdk_libs.json",
+    ],
+}
+
+// GN: //build/android:build_java__errorprone
+genrule {
+    name: "cronet_aml_build_android_build_java__errorprone",
+    srcs: [
+        "build/android/java/src/org/chromium/build/annotations/AlwaysInline.java",
+        "build/android/java/src/org/chromium/build/annotations/CheckDiscard.java",
+        "build/android/java/src/org/chromium/build/annotations/DoNotClassMerge.java",
+        "build/android/java/src/org/chromium/build/annotations/DoNotInline.java",
+        "build/android/java/src/org/chromium/build/annotations/IdentifierNameString.java",
+        "build/android/java/src/org/chromium/build/annotations/MainDex.java",
+        "build/android/java/src/org/chromium/build/annotations/MockedInTests.java",
+        "build/android/java/src/org/chromium/build/annotations/UsedByReflection.java",
+    ],
+    cmd: "$(location build/android/gyp/compile_java.py) --depfile " +
+         "gen/build/android/build_java__errorprone.d " +
+         "--generated-dir " +
+         "gen/build/android/build_java/generated_java " +
+         "--jar-path " +
+         "obj/build/android/build_java__errorprone.errorprone.stamp " +
+         "--java-srcjars " +
+         "[\"gen/build/android/build_java.generated.srcjar\"] " +
+         "--target-name " +
+         "//build/android:build_java__errorprone " +
+         "--header-jar " +
+         "obj/build/android/build_java.turbine.jar " +
+         "--classpath " +
+         "[\"obj/build/android/build_java.turbine.jar\"] " +
+         "--classpath " +
+         "@FileArg(gen/build/android/build_java.build_config.json:deps_info:javac_full_interface_classpath) " +
+         "--chromium-code " +
+         "1 " +
+         "--jar-info-exclude-globs " +
+         "[\"*/build/BuildConfig.class\", \"*/NativeLibraries.class\"] " +
+         "--processorpath " +
+         "@FileArg(gen/tools/android/errorprone_plugin/errorprone_plugin.build_config.json:deps_info:host_classpath) " +
+         "--enable-errorprone " +
+         "@gen/build/android/build_java.sources",
+    out: [
+        "//out/test/obj/build/android/build_java__errorprone.errorprone.stamp",
+    ],
+    tool_files: [
+        "build/android/gyp/compile_java.py",
+        "build/android/gyp/javac_output_processor.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/jar_info_utils.py",
+        "build/android/gyp/util/md5_check.py",
+        "build/android/gyp/util/server_utils.py",
+        "build/android/list_java_targets.py",
+        "build/android/pylib/__init__.py",
+        "build/android/pylib/constants/__init__.py",
+        "build/gn_helpers.py",
+        "build/print_python_deps.py",
+        "out/test/gen/build/android/build_java.build_config.json",
+        "out/test/gen/build/android/build_java.generated.srcjar",
+        "out/test/gen/build/android/build_java.sources",
+        "out/test/obj/build/android/build_java.turbine.jar",
+        "third_party/catapult/devil/devil/__init__.py",
+        "third_party/catapult/devil/devil/android/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/chrome.py",
+        "third_party/catapult/devil/devil/android/sdk/__init__.py",
+        "third_party/catapult/devil/devil/android/sdk/keyevent.py",
+        "third_party/catapult/devil/devil/android/sdk/version_codes.py",
+        "third_party/catapult/devil/devil/constants/__init__.py",
+        "third_party/catapult/devil/devil/constants/exit_codes.py",
+        "third_party/colorama/src/colorama/__init__.py",
+        "third_party/colorama/src/colorama/ansi.py",
+        "third_party/colorama/src/colorama/ansitowin32.py",
+        "third_party/colorama/src/colorama/initialise.py",
+        "third_party/colorama/src/colorama/win32.py",
+        "third_party/colorama/src/colorama/winterm.py",
+        "tools/android/modularization/convenience/lookup_dep.py",
+    ],
+}
+
+// GN: //build/android:build_java__header
+genrule {
+    name: "cronet_aml_build_android_build_java__header",
+    srcs: [
+        "build/android/java/src/org/chromium/build/annotations/AlwaysInline.java",
+        "build/android/java/src/org/chromium/build/annotations/CheckDiscard.java",
+        "build/android/java/src/org/chromium/build/annotations/DoNotClassMerge.java",
+        "build/android/java/src/org/chromium/build/annotations/DoNotInline.java",
+        "build/android/java/src/org/chromium/build/annotations/IdentifierNameString.java",
+        "build/android/java/src/org/chromium/build/annotations/MainDex.java",
+        "build/android/java/src/org/chromium/build/annotations/MockedInTests.java",
+        "build/android/java/src/org/chromium/build/annotations/UsedByReflection.java",
+    ],
+    cmd: "$(location build/android/gyp/turbine.py) --depfile " +
+         "gen/build/android/build_java__header.d " +
+         "--generated-dir " +
+         "gen/build/android/build_java/generated_java " +
+         "--jar-path " +
+         "obj/build/android/build_java.turbine.jar " +
+         "--java-srcjars " +
+         "[\"gen/build/android/build_config_gen.srcjar\", \"gen/build/android/native_libraries_gen.srcjar\"] " +
+         "--target-name " +
+         "//build/android:build_java__header " +
+         "--classpath " +
+         "@FileArg(gen/build/android/build_java.build_config.json:javac:interface_classpath) " +
+         "--processorpath " +
+         "@FileArg(gen/build/android/build_java.build_config.json:javac:processor_classpath) " +
+         "--processors " +
+         "@FileArg(gen/build/android/build_java.build_config.json:javac:processor_classes) " +
+         "--turbine-jar-path " +
+         "../../third_party/turbine/turbine.jar " +
+         "--generated-jar-path " +
+         "gen/build/android/build_java.generated.srcjar " +
+         "--chromium-code " +
+         "1 " +
+         "--jar-info-exclude-globs " +
+         "[\"*/build/BuildConfig.class\", \"*/NativeLibraries.class\"] " +
+         "@gen/build/android/build_java.sources",
+    out: [
+        "//out/test/obj/build/android/build_java.turbine.jar",
+        "build/android/build_java.generated.srcjar",
+    ],
+    tool_files: [
+        "build/android/gyp/javac_output_processor.py",
+        "build/android/gyp/turbine.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/list_java_targets.py",
+        "build/android/pylib/__init__.py",
+        "build/android/pylib/constants/__init__.py",
+        "build/gn_helpers.py",
+        "out/test/gen/build/android/build_config_gen.srcjar",
+        "out/test/gen/build/android/build_java.build_config.json",
+        "out/test/gen/build/android/build_java.sources",
+        "out/test/gen/build/android/native_libraries_gen.srcjar",
+        "third_party/catapult/devil/devil/__init__.py",
+        "third_party/catapult/devil/devil/android/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/chrome.py",
+        "third_party/catapult/devil/devil/android/sdk/__init__.py",
+        "third_party/catapult/devil/devil/android/sdk/keyevent.py",
+        "third_party/catapult/devil/devil/android/sdk/version_codes.py",
+        "third_party/catapult/devil/devil/constants/__init__.py",
+        "third_party/catapult/devil/devil/constants/exit_codes.py",
+        "third_party/colorama/src/colorama/__init__.py",
+        "third_party/colorama/src/colorama/ansi.py",
+        "third_party/colorama/src/colorama/ansitowin32.py",
+        "third_party/colorama/src/colorama/initialise.py",
+        "third_party/colorama/src/colorama/win32.py",
+        "third_party/colorama/src/colorama/winterm.py",
+        "third_party/turbine/turbine.jar",
+        "tools/android/modularization/convenience/lookup_dep.py",
+    ],
+}
+
+// GN: //build/android:build_java__host
+genrule {
+    name: "cronet_aml_build_android_build_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "obj/build/android/build_java.javac.jar " +
+         "--output " +
+         "lib.java/build/android/build_java.jar " +
+         "--exclude-globs " +
+         "[\"*/build/BuildConfig.class\", \"*/NativeLibraries.class\"] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/build/android/build_java.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/obj/build/android/build_java.javac.jar",
+    ],
+}
+
+// GN: //build/android:build_java__process_device
+genrule {
+    name: "cronet_aml_build_android_build_java__process_device",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "obj/build/android/build_java.javac.jar " +
+         "--output " +
+         "obj/build/android/build_java.processed.jar " +
+         "--exclude-globs " +
+         "[\"*/build/BuildConfig.class\", \"*/NativeLibraries.class\"] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/obj/build/android/build_java.processed.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/obj/build/android/build_java.javac.jar",
+    ],
+}
+
+// GN: //build/android:build_java__validate
+genrule {
+    name: "cronet_aml_build_android_build_java__validate",
+    cmd: "$(location build/android/gyp/bytecode_processor.py) --target-name " +
+         "//build/android:build_java__validate " +
+         "--script " +
+         "bin/helper/bytecode_processor " +
+         "--gn-target " +
+         "//build/android:build_java " +
+         "--input-jar " +
+         "obj/build/android/build_java.javac.jar " +
+         "--stamp " +
+         "obj/build/android/build_java__validate.bytecode.stamp " +
+         "--direct-classpath-jars " +
+         "@FileArg(gen/build/android/build_java.build_config.json:javac:classpath) " +
+         "--full-classpath-jars " +
+         "@FileArg(gen/build/android/build_java.build_config.json:deps_info:javac_full_classpath) " +
+         "--full-classpath-gn-targets " +
+         "@FileArg(gen/build/android/build_java.build_config.json:deps_info:javac_full_classpath_targets)",
+    out: [
+        "//out/test/obj/build/android/build_java__validate.bytecode.stamp",
+    ],
+    tool_files: [
+        "build/android/gyp/bytecode_processor.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/server_utils.py",
+        "build/gn_helpers.py",
+        "out/test/bin/helper/bytecode_processor",
+        "out/test/gen/build/android/build_java.build_config.json",
+        "out/test/obj/build/android/build_java.javac.jar",
+    ],
+}
+
+// GN: //build/android/bytecode:bytecode_processor__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_build_android_bytecode_bytecode_processor__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_binary " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[\"$(location build/android/bytecode/bytecode_processor_java.build_config.json)\"] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/build/android/bytecode/bytecode_processor.build_config.json " +
+         "--gn-target " +
+         "//build/android/bytecode:bytecode_processor " +
+         "--bundled-srcjars " +
+         "[] " +
+         "--main-class " +
+         "org.chromium.bytecode.ByteCodeProcessor",
+    out: [
+        "build/android/bytecode/bytecode_processor.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //build/android/bytecode:bytecode_processor__java_binary_script
+genrule {
+    name: "cronet_aml_build_android_bytecode_bytecode_processor__java_binary_script",
+    cmd: "$(location build/android/gyp/create_java_binary_script.py) --output " +
+         "bin/helper/bytecode_processor " +
+         "--main-class " +
+         "org.chromium.bytecode.ByteCodeProcessor " +
+         "--classpath " +
+         "@FileArg(gen/build/android/bytecode/bytecode_processor.build_config.json:deps_info:host_classpath) " +
+         "--noverify",
+    out: [
+        "//out/test/bin/helper/bytecode_processor",
+    ],
+    tool_files: [
+        "build/android/gyp/create_java_binary_script.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/gen/build/android/bytecode/bytecode_processor.build_config.json",
+    ],
+}
+
+// GN: //build/android/bytecode:bytecode_processor_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_build_android_bytecode_bytecode_processor_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[\"$(location third_party/android_deps/org_ow2_asm_asm_java.build_config.json)\", \"$(location third_party/android_deps/org_ow2_asm_asm_util_java.build_config.json)\"] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/build/android/bytecode/bytecode_processor_java.build_config.json " +
+         "--gn-target " +
+         "//build/android/bytecode:bytecode_processor_java " +
+         "--host-jar-path " +
+         "$(location lib.java/build/android/bytecode/bytecode_processor_java.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location build/android/bytecode/bytecode_processor_java.javac.jar) " +
+         "--interface-jar-path " +
+         "$(location build/android/bytecode/bytecode_processor_java.turbine.jar) " +
+         "--java-sources-file " +
+         "gen/build/android/bytecode/bytecode_processor_java.sources " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "build/android/bytecode/bytecode_processor_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //build/android/bytecode:bytecode_processor_java__compile_java
+genrule {
+    name: "cronet_aml_build_android_bytecode_bytecode_processor_java__compile_java",
+    srcs: [
+        "build/android/bytecode/java/org/chromium/bytecode/ByteCodeProcessor.java",
+        "build/android/bytecode/java/org/chromium/bytecode/ClassPathValidator.java",
+        "build/android/bytecode/java/org/chromium/bytecode/TypeUtils.java",
+    ],
+    cmd: "$(location build/android/gyp/compile_java.py) --depfile " +
+         "gen/build/android/bytecode/bytecode_processor_java__compile_java.d " +
+         "--generated-dir " +
+         "gen/build/android/bytecode/bytecode_processor_java/generated_java " +
+         "--jar-path " +
+         "obj/build/android/bytecode/bytecode_processor_java.javac.jar " +
+         "--java-srcjars " +
+         "[\"gen/build/android/bytecode/bytecode_processor_java.generated.srcjar\"] " +
+         "--target-name " +
+         "//build/android/bytecode:bytecode_processor_java__compile_java " +
+         "--header-jar " +
+         "obj/build/android/bytecode/bytecode_processor_java.turbine.jar " +
+         "--classpath " +
+         "[\"obj/build/android/bytecode/bytecode_processor_java.turbine.jar\"] " +
+         "--classpath " +
+         "@FileArg(gen/build/android/bytecode/bytecode_processor_java.build_config.json:deps_info:javac_full_interface_classpath) " +
+         "--chromium-code " +
+         "1 " +
+         "@gen/build/android/bytecode/bytecode_processor_java.sources",
+    out: [
+        "//out/test/obj/build/android/bytecode/bytecode_processor_java.javac.jar",
+        "//out/test/obj/build/android/bytecode/bytecode_processor_java.javac.jar.info",
+    ],
+    tool_files: [
+        "build/android/gyp/compile_java.py",
+        "build/android/gyp/javac_output_processor.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/jar_info_utils.py",
+        "build/android/gyp/util/md5_check.py",
+        "build/android/gyp/util/server_utils.py",
+        "build/android/list_java_targets.py",
+        "build/android/pylib/__init__.py",
+        "build/android/pylib/constants/__init__.py",
+        "build/gn_helpers.py",
+        "build/print_python_deps.py",
+        "out/test/gen/build/android/bytecode/bytecode_processor_java.build_config.json",
+        "out/test/gen/build/android/bytecode/bytecode_processor_java.generated.srcjar",
+        "out/test/gen/build/android/bytecode/bytecode_processor_java.sources",
+        "out/test/obj/build/android/bytecode/bytecode_processor_java.turbine.jar",
+        "third_party/catapult/devil/devil/__init__.py",
+        "third_party/catapult/devil/devil/android/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/chrome.py",
+        "third_party/catapult/devil/devil/android/sdk/__init__.py",
+        "third_party/catapult/devil/devil/android/sdk/keyevent.py",
+        "third_party/catapult/devil/devil/android/sdk/version_codes.py",
+        "third_party/catapult/devil/devil/constants/__init__.py",
+        "third_party/catapult/devil/devil/constants/exit_codes.py",
+        "third_party/colorama/src/colorama/__init__.py",
+        "third_party/colorama/src/colorama/ansi.py",
+        "third_party/colorama/src/colorama/ansitowin32.py",
+        "third_party/colorama/src/colorama/initialise.py",
+        "third_party/colorama/src/colorama/win32.py",
+        "third_party/colorama/src/colorama/winterm.py",
+        "tools/android/modularization/convenience/lookup_dep.py",
+    ],
+}
+
+// GN: //build/android/bytecode:bytecode_processor_java__errorprone
+genrule {
+    name: "cronet_aml_build_android_bytecode_bytecode_processor_java__errorprone",
+    srcs: [
+        "build/android/bytecode/java/org/chromium/bytecode/ByteCodeProcessor.java",
+        "build/android/bytecode/java/org/chromium/bytecode/ClassPathValidator.java",
+        "build/android/bytecode/java/org/chromium/bytecode/TypeUtils.java",
+    ],
+    cmd: "$(location build/android/gyp/compile_java.py) --depfile " +
+         "gen/build/android/bytecode/bytecode_processor_java__errorprone.d " +
+         "--generated-dir " +
+         "gen/build/android/bytecode/bytecode_processor_java/generated_java " +
+         "--jar-path " +
+         "obj/build/android/bytecode/bytecode_processor_java__errorprone.errorprone.stamp " +
+         "--java-srcjars " +
+         "[\"gen/build/android/bytecode/bytecode_processor_java.generated.srcjar\"] " +
+         "--target-name " +
+         "//build/android/bytecode:bytecode_processor_java__errorprone " +
+         "--header-jar " +
+         "obj/build/android/bytecode/bytecode_processor_java.turbine.jar " +
+         "--classpath " +
+         "[\"obj/build/android/bytecode/bytecode_processor_java.turbine.jar\"] " +
+         "--classpath " +
+         "@FileArg(gen/build/android/bytecode/bytecode_processor_java.build_config.json:deps_info:javac_full_interface_classpath) " +
+         "--chromium-code " +
+         "1 " +
+         "--processorpath " +
+         "@FileArg(gen/tools/android/errorprone_plugin/errorprone_plugin.build_config.json:deps_info:host_classpath) " +
+         "--enable-errorprone " +
+         "@gen/build/android/bytecode/bytecode_processor_java.sources",
+    out: [
+        "//out/test/obj/build/android/bytecode/bytecode_processor_java__errorprone.errorprone.stamp",
+    ],
+    tool_files: [
+        "build/android/gyp/compile_java.py",
+        "build/android/gyp/javac_output_processor.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/jar_info_utils.py",
+        "build/android/gyp/util/md5_check.py",
+        "build/android/gyp/util/server_utils.py",
+        "build/android/list_java_targets.py",
+        "build/android/pylib/__init__.py",
+        "build/android/pylib/constants/__init__.py",
+        "build/gn_helpers.py",
+        "build/print_python_deps.py",
+        "out/test/gen/build/android/bytecode/bytecode_processor_java.build_config.json",
+        "out/test/gen/build/android/bytecode/bytecode_processor_java.generated.srcjar",
+        "out/test/gen/build/android/bytecode/bytecode_processor_java.sources",
+        "out/test/obj/build/android/bytecode/bytecode_processor_java.turbine.jar",
+        "third_party/catapult/devil/devil/__init__.py",
+        "third_party/catapult/devil/devil/android/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/chrome.py",
+        "third_party/catapult/devil/devil/android/sdk/__init__.py",
+        "third_party/catapult/devil/devil/android/sdk/keyevent.py",
+        "third_party/catapult/devil/devil/android/sdk/version_codes.py",
+        "third_party/catapult/devil/devil/constants/__init__.py",
+        "third_party/catapult/devil/devil/constants/exit_codes.py",
+        "third_party/colorama/src/colorama/__init__.py",
+        "third_party/colorama/src/colorama/ansi.py",
+        "third_party/colorama/src/colorama/ansitowin32.py",
+        "third_party/colorama/src/colorama/initialise.py",
+        "third_party/colorama/src/colorama/win32.py",
+        "third_party/colorama/src/colorama/winterm.py",
+        "tools/android/modularization/convenience/lookup_dep.py",
+    ],
+}
+
+// GN: //build/android/bytecode:bytecode_processor_java__header
+genrule {
+    name: "cronet_aml_build_android_bytecode_bytecode_processor_java__header",
+    srcs: [
+        "build/android/bytecode/java/org/chromium/bytecode/ByteCodeProcessor.java",
+        "build/android/bytecode/java/org/chromium/bytecode/ClassPathValidator.java",
+        "build/android/bytecode/java/org/chromium/bytecode/TypeUtils.java",
+    ],
+    cmd: "$(location build/android/gyp/turbine.py) --depfile " +
+         "gen/build/android/bytecode/bytecode_processor_java__header.d " +
+         "--generated-dir " +
+         "gen/build/android/bytecode/bytecode_processor_java/generated_java " +
+         "--jar-path " +
+         "obj/build/android/bytecode/bytecode_processor_java.turbine.jar " +
+         "--java-srcjars " +
+         "[] " +
+         "--target-name " +
+         "//build/android/bytecode:bytecode_processor_java__header " +
+         "--classpath " +
+         "@FileArg(gen/build/android/bytecode/bytecode_processor_java.build_config.json:javac:interface_classpath) " +
+         "--processorpath " +
+         "@FileArg(gen/build/android/bytecode/bytecode_processor_java.build_config.json:javac:processor_classpath) " +
+         "--processors " +
+         "@FileArg(gen/build/android/bytecode/bytecode_processor_java.build_config.json:javac:processor_classes) " +
+         "--turbine-jar-path " +
+         "../../third_party/turbine/turbine.jar " +
+         "--generated-jar-path " +
+         "gen/build/android/bytecode/bytecode_processor_java.generated.srcjar " +
+         "--chromium-code " +
+         "1 " +
+         "@gen/build/android/bytecode/bytecode_processor_java.sources",
+    out: [
+        "//out/test/obj/build/android/bytecode/bytecode_processor_java.turbine.jar",
+        "build/android/bytecode/bytecode_processor_java.generated.srcjar",
+    ],
+    tool_files: [
+        "build/android/gyp/javac_output_processor.py",
+        "build/android/gyp/turbine.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/list_java_targets.py",
+        "build/android/pylib/__init__.py",
+        "build/android/pylib/constants/__init__.py",
+        "build/gn_helpers.py",
+        "out/test/gen/build/android/bytecode/bytecode_processor_java.build_config.json",
+        "out/test/gen/build/android/bytecode/bytecode_processor_java.sources",
+        "third_party/catapult/devil/devil/__init__.py",
+        "third_party/catapult/devil/devil/android/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/chrome.py",
+        "third_party/catapult/devil/devil/android/sdk/__init__.py",
+        "third_party/catapult/devil/devil/android/sdk/keyevent.py",
+        "third_party/catapult/devil/devil/android/sdk/version_codes.py",
+        "third_party/catapult/devil/devil/constants/__init__.py",
+        "third_party/catapult/devil/devil/constants/exit_codes.py",
+        "third_party/colorama/src/colorama/__init__.py",
+        "third_party/colorama/src/colorama/ansi.py",
+        "third_party/colorama/src/colorama/ansitowin32.py",
+        "third_party/colorama/src/colorama/initialise.py",
+        "third_party/colorama/src/colorama/win32.py",
+        "third_party/colorama/src/colorama/winterm.py",
+        "third_party/turbine/turbine.jar",
+        "tools/android/modularization/convenience/lookup_dep.py",
+    ],
+}
+
+// GN: //build/android/bytecode:bytecode_processor_java__host
+genrule {
+    name: "cronet_aml_build_android_bytecode_bytecode_processor_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "obj/build/android/bytecode/bytecode_processor_java.javac.jar " +
+         "--output " +
+         "lib.java/build/android/bytecode/bytecode_processor_java.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/build/android/bytecode/bytecode_processor_java.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/obj/build/android/bytecode/bytecode_processor_java.javac.jar",
+    ],
+}
+
+// GN: //build/android:native_libraries_gen
+genrule {
+    name: "cronet_aml_build_android_native_libraries_gen",
+    cmd: "$(location build/android/gyp/write_native_libraries_java.py) --output " +
+         "$(out) " +
+         "--cpu-family " +
+         "CPU_FAMILY_X86",
+    out: [
+        "build/android/native_libraries_gen.srcjar",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/write_native_libraries_java.py",
+        "build/gn_helpers.py",
+    ],
+}
+
 // GN: //build:branding_buildflags
 genrule {
     name: "cronet_aml_build_branding_buildflags",
@@ -1736,17 +2965,2090 @@
     ],
 }
 
+// GN: //buildtools/third_party/libc++:libc++
+filegroup {
+    name: "cronet_aml_buildtools_third_party_libc___libc__",
+}
+
+// GN: //buildtools/third_party/libc++abi:libc++abi
+filegroup {
+    name: "cronet_aml_buildtools_third_party_libc__abi_libc__abi",
+}
+
+// GN: //crypto:buildflags
+genrule {
+    name: "cronet_aml_crypto_buildflags",
+    cmd: "echo '--flags USE_NSS_CERTS=\"false\"' | " +
+         "$(location build/write_buildflag_header.py) --output " +
+         "$(out) " +
+         "--rulename " +
+         "//crypto:buildflags " +
+         "--gen-dir " +
+         ". " +
+         "--definitions " +
+         "/dev/stdin",
+    out: [
+        "crypto/crypto_buildflags.h",
+    ],
+    tool_files: [
+        "build/write_buildflag_header.py",
+    ],
+}
+
+// GN: //crypto:crypto
+cc_library_static {
+    name: "cronet_aml_crypto_crypto",
+    srcs: [
+        "crypto/aead.cc",
+        "crypto/ec_private_key.cc",
+        "crypto/ec_signature_creator.cc",
+        "crypto/ec_signature_creator_impl.cc",
+        "crypto/encryptor.cc",
+        "crypto/hkdf.cc",
+        "crypto/hmac.cc",
+        "crypto/openssl_util.cc",
+        "crypto/p224_spake.cc",
+        "crypto/random.cc",
+        "crypto/rsa_private_key.cc",
+        "crypto/secure_hash.cc",
+        "crypto/secure_util.cc",
+        "crypto/sha2.cc",
+        "crypto/signature_creator.cc",
+        "crypto/signature_verifier.cc",
+        "crypto/symmetric_key.cc",
+        "crypto/unexportable_key.cc",
+        "crypto/unexportable_key_metrics.cc",
+    ],
+    shared_libs: [
+        "libandroid",
+        "liblog",
+    ],
+    static_libs: [
+        "cronet_aml_base_base",
+        "cronet_aml_base_third_party_dynamic_annotations_dynamic_annotations",
+        "cronet_aml_third_party_boringssl_boringssl",
+    ],
+    generated_headers: [
+        "cronet_aml_crypto_buildflags",
+    ],
+    export_generated_headers: [
+        "cronet_aml_crypto_buildflags",
+    ],
+    defaults: [
+        "cronet_aml_defaults",
+    ],
+    cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
+        "-DCRYPTO_IMPLEMENTATION",
+        "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
+        "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
+        "-DDCHECK_ALWAYS_ON=1",
+        "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
+        "-D_DEBUG",
+        "-D_GNU_SOURCE",
+        "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
+        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D_LIBCPP_ENABLE_ASSERTIONS_DEFAULT=1",
+        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D__STDC_CONSTANT_MACROS",
+        "-D__STDC_FORMAT_MACROS",
+    ],
+    local_include_dirs: [
+        "./",
+        "buildtools/third_party/libc++/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
+        "third_party/abseil-cpp/",
+        "third_party/boringssl/src/include/",
+        "third_party/android_ndk/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include",
+    ],
+    cpp_std: "c++20",
+}
+
 // GN: //gn:default_deps
 cc_defaults {
     name: "cronet_aml_defaults",
     cflags: [
         "-O2",
         "-Wno-error=return-type",
+        "-Wno-missing-field-initializers",
+        "-Wno-non-virtual-dtor",
         "-Wno-sign-compare",
         "-Wno-sign-promo",
         "-Wno-unused-parameter",
         "-fvisibility=hidden",
     ],
+    stl: "none",
+}
+
+// GN: //ipc:param_traits
+filegroup {
+    name: "cronet_aml_ipc_param_traits",
+}
+
+// GN: //net:buildflags
+genrule {
+    name: "cronet_aml_net_buildflags",
+    cmd: "echo '--flags POSIX_BYPASS_MMAP=\"true\" DISABLE_FILE_SUPPORT=\"true\" ENABLE_MDNS=\"false\" ENABLE_REPORTING=\"true\" ENABLE_WEBSOCKETS=\"false\" INCLUDE_TRANSPORT_SECURITY_STATE_PRELOAD_LIST=\"false\" USE_KERBEROS=\"true\" USE_EXTERNAL_GSSAPI=\"false\" TRIAL_COMPARISON_CERT_VERIFIER_SUPPORTED=\"false\" CHROME_ROOT_STORE_SUPPORTED=\"false\"' | " +
+         "$(location build/write_buildflag_header.py) --output " +
+         "$(out) " +
+         "--rulename " +
+         "//net:buildflags " +
+         "--gen-dir " +
+         ". " +
+         "--definitions " +
+         "/dev/stdin",
+    out: [
+        "net/net_buildflags.h",
+    ],
+    tool_files: [
+        "build/write_buildflag_header.py",
+    ],
+}
+
+// GN: //net/cert:root_store_proto_full
+cc_library_static {
+    name: "cronet_aml_net_cert_root_store_proto_full",
+    srcs: [
+        "out/test/clang_x64/gen/net/cert/root_store_proto_full/root_store.pb.cc",
+    ],
+    static_libs: [
+        "cronet_aml_third_party_protobuf_protobuf_full",
+    ],
+    defaults: [
+        "cronet_aml_defaults",
+    ],
+    cflags: [
+        "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
+        "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
+        "-DCR_SYSROOT_KEY=20220331T153654Z-0",
+        "-DDCHECK_ALWAYS_ON=1",
+        "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DGOOGLE_PROTOBUF_INTERNAL_DONATE_STEAL_INLINE=0",
+        "-DGOOGLE_PROTOBUF_NO_RTTI",
+        "-DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER",
+        "-DHAVE_PTHREAD",
+        "-DUSE_AURA=1",
+        "-DUSE_OZONE=1",
+        "-DUSE_UDEV",
+        "-D_DEBUG",
+        "-D_FILE_OFFSET_BITS=64",
+        "-D_GNU_SOURCE",
+        "-D_LARGEFILE64_SOURCE",
+        "-D_LARGEFILE_SOURCE",
+        "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
+        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D_LIBCPP_ENABLE_ASSERTIONS_DEFAULT=1",
+        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D__STDC_CONSTANT_MACROS",
+        "-D__STDC_FORMAT_MACROS",
+    ],
+    local_include_dirs: [
+        "./",
+        "buildtools/third_party/libc++/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
+        "third_party/protobuf/src/",
+        "build/linux/debian_bullseye_amd64-sysroot/usr/include",
+    ],
+    cpp_std: "c++20",
+}
+
+// GN: //net/cert:root_store_proto_full_gen
+genrule {
+    name: "cronet_aml_net_cert_root_store_proto_full_gen",
+    srcs: [
+        "net/cert/root_store.proto",
+    ],
+    cmd: "$(location tools/protoc_wrapper/protoc_wrapper.py) root_store.proto " +
+         "--protoc " +
+         "./clang_x64/protoc " +
+         "--proto-in-dir " +
+         "../../net/cert " +
+         "--cc-out-dir " +
+         "clang_x64/gen/net/cert/root_store_proto_full/ " +
+         "--py-out-dir " +
+         "clang_x64/pyproto/net/cert/root_store_proto_full/",
+    out: [
+        "//out/test/clang_x64/pyproto/net/cert/root_store_proto_full/root_store_pb2.py",
+        "net/cert/root_store_proto_full/root_store.pb.cc",
+        "net/cert/root_store_proto_full/root_store.pb.h",
+    ],
+    tool_files: [
+        "tools/protoc_wrapper/protoc_wrapper.py",
+    ],
+}
+
+// GN: //net:constants
+filegroup {
+    name: "cronet_aml_net_constants",
+}
+
+// GN: //net/data/ssl/chrome_root_store:gen_root_store_inc
+genrule {
+    name: "cronet_aml_net_data_ssl_chrome_root_store_gen_root_store_inc",
+    cmd: "$(location build/gn_run_binary.py) clang_x64/root_store_tool " +
+         "--root-store " +
+         "../../net/data/ssl/chrome_root_store/root_store.textproto " +
+         "--certs " +
+         "../../net/data/ssl/chrome_root_store/root_store.certs " +
+         "--write-cpp-root-store " +
+         "gen/net/data/ssl/chrome_root_store/chrome-root-store-inc.cc " +
+         "--write-cpp-ev-roots " +
+         "gen/net/data/ssl/chrome_root_store/chrome-ev-roots-inc.cc",
+    out: [
+        "net/data/ssl/chrome_root_store/chrome-ev-roots-inc.cc",
+        "net/data/ssl/chrome_root_store/chrome-root-store-inc.cc",
+    ],
+    tool_files: [
+        "build/gn_run_binary.py",
+        "net/data/ssl/chrome_root_store/root_store.certs",
+        "net/data/ssl/chrome_root_store/root_store.textproto",
+    ],
+}
+
+// GN: //net/dns:dns
+filegroup {
+    name: "cronet_aml_net_dns_dns",
+    srcs: [
+        "net/dns/address_info.cc",
+        "net/dns/address_sorter_posix.cc",
+        "net/dns/context_host_resolver.cc",
+        "net/dns/dns_alias_utility.cc",
+        "net/dns/dns_client.cc",
+        "net/dns/dns_config.cc",
+        "net/dns/dns_config_service.cc",
+        "net/dns/dns_config_service_android.cc",
+        "net/dns/dns_hosts.cc",
+        "net/dns/dns_query.cc",
+        "net/dns/dns_reloader.cc",
+        "net/dns/dns_response.cc",
+        "net/dns/dns_response_result_extractor.cc",
+        "net/dns/dns_server_iterator.cc",
+        "net/dns/dns_session.cc",
+        "net/dns/dns_transaction.cc",
+        "net/dns/dns_udp_tracker.cc",
+        "net/dns/dns_util.cc",
+        "net/dns/host_cache.cc",
+        "net/dns/host_resolver.cc",
+        "net/dns/host_resolver_manager.cc",
+        "net/dns/host_resolver_mdns_listener_impl.cc",
+        "net/dns/host_resolver_mdns_task.cc",
+        "net/dns/host_resolver_nat64_task.cc",
+        "net/dns/host_resolver_proc.cc",
+        "net/dns/host_resolver_system_task.cc",
+        "net/dns/https_record_rdata.cc",
+        "net/dns/httpssvc_metrics.cc",
+        "net/dns/mapped_host_resolver.cc",
+        "net/dns/nsswitch_reader.cc",
+        "net/dns/opt_record_rdata.cc",
+        "net/dns/record_parsed.cc",
+        "net/dns/record_rdata.cc",
+        "net/dns/resolve_context.cc",
+        "net/dns/serial_worker.cc",
+        "net/dns/system_dns_config_change_notifier.cc",
+        "net/dns/test_dns_config_service.cc",
+    ],
+}
+
+// GN: //net/dns:dns_client
+filegroup {
+    name: "cronet_aml_net_dns_dns_client",
+}
+
+// GN: //net/dns:host_resolver
+filegroup {
+    name: "cronet_aml_net_dns_host_resolver",
+}
+
+// GN: //net/dns:host_resolver_manager
+filegroup {
+    name: "cronet_aml_net_dns_host_resolver_manager",
+}
+
+// GN: //net/dns:mdns_client
+filegroup {
+    name: "cronet_aml_net_dns_mdns_client",
+}
+
+// GN: //net/dns/public:public
+filegroup {
+    name: "cronet_aml_net_dns_public_public",
+    srcs: [
+        "net/dns/public/dns_config_overrides.cc",
+        "net/dns/public/dns_over_https_config.cc",
+        "net/dns/public/dns_over_https_server_config.cc",
+        "net/dns/public/dns_query_type.cc",
+        "net/dns/public/doh_provider_entry.cc",
+        "net/dns/public/host_resolver_results.cc",
+        "net/dns/public/resolve_error_info.cc",
+        "net/dns/public/util.cc",
+    ],
+}
+
+// GN: //net/http:transport_security_state_generated_files
+filegroup {
+    name: "cronet_aml_net_http_transport_security_state_generated_files",
+    srcs: [
+        "net/http/transport_security_state.cc",
+    ],
+}
+
+// GN: //net:ios_cronet_buildflags
+genrule {
+    name: "cronet_aml_net_ios_cronet_buildflags",
+    cmd: "echo '--flags CRONET_BUILD=\"false\"' | " +
+         "$(location build/write_buildflag_header.py) --output " +
+         "$(out) " +
+         "--rulename " +
+         "//net:ios_cronet_buildflags " +
+         "--gen-dir " +
+         ". " +
+         "--definitions " +
+         "/dev/stdin",
+    out: [
+        "net/socket/ios_cronet_buildflags.h",
+    ],
+    tool_files: [
+        "build/write_buildflag_header.py",
+    ],
+}
+
+// GN: //net:isolation_info_proto
+cc_library_static {
+    name: "cronet_aml_net_isolation_info_proto",
+    srcs: [
+        "out/test/gen/net/base/isolation_info.pb.cc",
+    ],
+    shared_libs: [
+        "liblog",
+    ],
+    static_libs: [
+        "cronet_aml_third_party_protobuf_protobuf_lite",
+    ],
+    defaults: [
+        "cronet_aml_defaults",
+    ],
+    cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
+        "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
+        "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
+        "-DDCHECK_ALWAYS_ON=1",
+        "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DGOOGLE_PROTOBUF_INTERNAL_DONATE_STEAL_INLINE=0",
+        "-DGOOGLE_PROTOBUF_NO_RTTI",
+        "-DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER",
+        "-DHAVE_PTHREAD",
+        "-DHAVE_SYS_UIO_H",
+        "-D_DEBUG",
+        "-D_GNU_SOURCE",
+        "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
+        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D_LIBCPP_ENABLE_ASSERTIONS_DEFAULT=1",
+        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D__STDC_CONSTANT_MACROS",
+        "-D__STDC_FORMAT_MACROS",
+    ],
+    local_include_dirs: [
+        "./",
+        "buildtools/third_party/libc++/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
+        "third_party/protobuf/src/",
+        "third_party/android_ndk/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include",
+    ],
+    cpp_std: "c++20",
+}
+
+// GN: //net:isolation_info_proto_gen
+genrule {
+    name: "cronet_aml_net_isolation_info_proto_gen",
+    srcs: [
+        "net/base/isolation_info.proto",
+    ],
+    cmd: "$(location tools/protoc_wrapper/protoc_wrapper.py) isolation_info.proto " +
+         "--protoc " +
+         "./clang_x64/protoc " +
+         "--proto-in-dir " +
+         "../../net/base " +
+         "--cc-out-dir " +
+         "gen/net/base " +
+         "--py-out-dir " +
+         "pyproto/net/base",
+    out: [
+        "//out/test/pyproto/net/base/isolation_info_pb2.py",
+        "net/base/isolation_info.pb.cc",
+        "net/base/isolation_info.pb.h",
+    ],
+    tool_files: [
+        "tools/protoc_wrapper/protoc_wrapper.py",
+    ],
+}
+
+// GN: //net:net
+cc_library_static {
+    name: "cronet_aml_net_net",
+    srcs: [
+        ":cronet_aml_net_constants",
+        ":cronet_aml_net_dns_dns",
+        ":cronet_aml_net_dns_dns_client",
+        ":cronet_aml_net_dns_host_resolver",
+        ":cronet_aml_net_dns_host_resolver_manager",
+        ":cronet_aml_net_dns_mdns_client",
+        ":cronet_aml_net_dns_public_public",
+        ":cronet_aml_net_http_transport_security_state_generated_files",
+        ":cronet_aml_net_net_deps",
+        ":cronet_aml_net_net_export_header",
+        ":cronet_aml_net_net_public_deps",
+        ":cronet_aml_net_net_resources",
+        ":cronet_aml_net_traffic_annotation_traffic_annotation",
+        "net/android/android_http_util.cc",
+        "net/android/cert_verify_result_android.cc",
+        "net/android/gurl_utils.cc",
+        "net/android/http_auth_negotiate_android.cc",
+        "net/android/keystore.cc",
+        "net/android/network_change_notifier_android.cc",
+        "net/android/network_change_notifier_delegate_android.cc",
+        "net/android/network_change_notifier_factory_android.cc",
+        "net/android/network_library.cc",
+        "net/android/radio_activity_tracker.cc",
+        "net/android/traffic_stats.cc",
+        "net/base/address_family.cc",
+        "net/base/address_list.cc",
+        "net/base/address_tracker_linux.cc",
+        "net/base/auth.cc",
+        "net/base/backoff_entry.cc",
+        "net/base/backoff_entry_serializer.cc",
+        "net/base/cache_metrics.cc",
+        "net/base/chunked_upload_data_stream.cc",
+        "net/base/connection_endpoint_metadata.cc",
+        "net/base/data_url.cc",
+        "net/base/datagram_buffer.cc",
+        "net/base/elements_upload_data_stream.cc",
+        "net/base/features.cc",
+        "net/base/file_stream.cc",
+        "net/base/file_stream_context.cc",
+        "net/base/file_stream_context_posix.cc",
+        "net/base/filename_util.cc",
+        "net/base/filename_util_internal.cc",
+        "net/base/hash_value.cc",
+        "net/base/hex_utils.cc",
+        "net/base/host_mapping_rules.cc",
+        "net/base/host_port_pair.cc",
+        "net/base/io_buffer.cc",
+        "net/base/ip_address.cc",
+        "net/base/ip_endpoint.cc",
+        "net/base/isolation_info.cc",
+        "net/base/load_timing_info.cc",
+        "net/base/logging_network_change_observer.cc",
+        "net/base/lookup_string_in_fixed_set.cc",
+        "net/base/mime_sniffer.cc",
+        "net/base/mime_util.cc",
+        "net/base/net_errors.cc",
+        "net/base/net_errors_posix.cc",
+        "net/base/net_module.cc",
+        "net/base/net_string_util_icu_alternatives_android.cc",
+        "net/base/network_activity_monitor.cc",
+        "net/base/network_anonymization_key.cc",
+        "net/base/network_change_notifier.cc",
+        "net/base/network_change_notifier_posix.cc",
+        "net/base/network_delegate.cc",
+        "net/base/network_delegate_impl.cc",
+        "net/base/network_interfaces.cc",
+        "net/base/network_interfaces_getifaddrs.cc",
+        "net/base/network_interfaces_getifaddrs_android.cc",
+        "net/base/network_interfaces_linux.cc",
+        "net/base/network_interfaces_posix.cc",
+        "net/base/network_isolation_key.cc",
+        "net/base/parse_number.cc",
+        "net/base/platform_mime_util_linux.cc",
+        "net/base/port_util.cc",
+        "net/base/prioritized_dispatcher.cc",
+        "net/base/prioritized_task_runner.cc",
+        "net/base/privacy_mode.cc",
+        "net/base/proxy_server.cc",
+        "net/base/proxy_string_util.cc",
+        "net/base/registry_controlled_domains/registry_controlled_domain.cc",
+        "net/base/request_priority.cc",
+        "net/base/scheme_host_port_matcher.cc",
+        "net/base/scheme_host_port_matcher_rule.cc",
+        "net/base/schemeful_site.cc",
+        "net/base/sockaddr_storage.cc",
+        "net/base/sockaddr_util_posix.cc",
+        "net/base/transport_info.cc",
+        "net/base/upload_bytes_element_reader.cc",
+        "net/base/upload_data_stream.cc",
+        "net/base/upload_element_reader.cc",
+        "net/base/upload_file_element_reader.cc",
+        "net/base/url_util.cc",
+        "net/cert/asn1_util.cc",
+        "net/cert/caching_cert_verifier.cc",
+        "net/cert/cert_and_ct_verifier.cc",
+        "net/cert/cert_database.cc",
+        "net/cert/cert_status_flags.cc",
+        "net/cert/cert_verifier.cc",
+        "net/cert/cert_verify_proc.cc",
+        "net/cert/cert_verify_proc_android.cc",
+        "net/cert/cert_verify_proc_builtin.cc",
+        "net/cert/cert_verify_result.cc",
+        "net/cert/coalescing_cert_verifier.cc",
+        "net/cert/crl_set.cc",
+        "net/cert/ct_log_response_parser.cc",
+        "net/cert/ct_log_verifier.cc",
+        "net/cert/ct_log_verifier_util.cc",
+        "net/cert/ct_objects_extractor.cc",
+        "net/cert/ct_policy_enforcer.cc",
+        "net/cert/ct_sct_to_string.cc",
+        "net/cert/ct_serialization.cc",
+        "net/cert/ct_signed_certificate_timestamp_log_param.cc",
+        "net/cert/do_nothing_ct_verifier.cc",
+        "net/cert/ev_root_ca_metadata.cc",
+        "net/cert/internal/cert_issuer_source_aia.cc",
+        "net/cert/internal/revocation_checker.cc",
+        "net/cert/internal/system_trust_store.cc",
+        "net/cert/known_roots.cc",
+        "net/cert/merkle_audit_proof.cc",
+        "net/cert/merkle_consistency_proof.cc",
+        "net/cert/merkle_tree_leaf.cc",
+        "net/cert/multi_log_ct_verifier.cc",
+        "net/cert/multi_threaded_cert_verifier.cc",
+        "net/cert/ocsp_verify_result.cc",
+        "net/cert/pem.cc",
+        "net/cert/pki/cert_error_id.cc",
+        "net/cert/pki/cert_error_params.cc",
+        "net/cert/pki/cert_errors.cc",
+        "net/cert/pki/cert_issuer_source_static.cc",
+        "net/cert/pki/certificate_policies.cc",
+        "net/cert/pki/common_cert_errors.cc",
+        "net/cert/pki/crl.cc",
+        "net/cert/pki/extended_key_usage.cc",
+        "net/cert/pki/general_names.cc",
+        "net/cert/pki/name_constraints.cc",
+        "net/cert/pki/ocsp.cc",
+        "net/cert/pki/parse_certificate.cc",
+        "net/cert/pki/parse_name.cc",
+        "net/cert/pki/parsed_certificate.cc",
+        "net/cert/pki/path_builder.cc",
+        "net/cert/pki/revocation_util.cc",
+        "net/cert/pki/signature_algorithm.cc",
+        "net/cert/pki/simple_path_builder_delegate.cc",
+        "net/cert/pki/string_util.cc",
+        "net/cert/pki/trust_store.cc",
+        "net/cert/pki/trust_store_collection.cc",
+        "net/cert/pki/trust_store_in_memory.cc",
+        "net/cert/pki/verify_certificate_chain.cc",
+        "net/cert/pki/verify_name_match.cc",
+        "net/cert/pki/verify_signed_data.cc",
+        "net/cert/sct_status_flags.cc",
+        "net/cert/signed_certificate_timestamp.cc",
+        "net/cert/signed_certificate_timestamp_and_status.cc",
+        "net/cert/signed_tree_head.cc",
+        "net/cert/symantec_certs.cc",
+        "net/cert/test_root_certs.cc",
+        "net/cert/test_root_certs_android.cc",
+        "net/cert/trial_comparison_cert_verifier_util.cc",
+        "net/cert/x509_cert_types.cc",
+        "net/cert/x509_certificate.cc",
+        "net/cert/x509_certificate_net_log_param.cc",
+        "net/cert/x509_util.cc",
+        "net/cert/x509_util_android.cc",
+        "net/cert_net/cert_net_fetcher_url_request.cc",
+        "net/cookies/canonical_cookie.cc",
+        "net/cookies/cookie_access_delegate.cc",
+        "net/cookies/cookie_access_result.cc",
+        "net/cookies/cookie_change_dispatcher.cc",
+        "net/cookies/cookie_constants.cc",
+        "net/cookies/cookie_deletion_info.cc",
+        "net/cookies/cookie_inclusion_status.cc",
+        "net/cookies/cookie_monster.cc",
+        "net/cookies/cookie_monster_change_dispatcher.cc",
+        "net/cookies/cookie_monster_netlog_params.cc",
+        "net/cookies/cookie_options.cc",
+        "net/cookies/cookie_partition_key.cc",
+        "net/cookies/cookie_partition_key_collection.cc",
+        "net/cookies/cookie_store.cc",
+        "net/cookies/cookie_util.cc",
+        "net/cookies/parsed_cookie.cc",
+        "net/cookies/site_for_cookies.cc",
+        "net/cookies/static_cookie_policy.cc",
+        "net/der/encode_values.cc",
+        "net/der/input.cc",
+        "net/der/parse_values.cc",
+        "net/der/parser.cc",
+        "net/der/tag.cc",
+        "net/disk_cache/backend_cleanup_tracker.cc",
+        "net/disk_cache/blockfile/addr.cc",
+        "net/disk_cache/blockfile/backend_impl.cc",
+        "net/disk_cache/blockfile/bitmap.cc",
+        "net/disk_cache/blockfile/block_files.cc",
+        "net/disk_cache/blockfile/disk_format.cc",
+        "net/disk_cache/blockfile/entry_impl.cc",
+        "net/disk_cache/blockfile/eviction.cc",
+        "net/disk_cache/blockfile/file.cc",
+        "net/disk_cache/blockfile/file_lock.cc",
+        "net/disk_cache/blockfile/file_posix.cc",
+        "net/disk_cache/blockfile/in_flight_backend_io.cc",
+        "net/disk_cache/blockfile/in_flight_io.cc",
+        "net/disk_cache/blockfile/mapped_file.cc",
+        "net/disk_cache/blockfile/mapped_file_bypass_mmap_posix.cc",
+        "net/disk_cache/blockfile/rankings.cc",
+        "net/disk_cache/blockfile/sparse_control.cc",
+        "net/disk_cache/blockfile/stats.cc",
+        "net/disk_cache/cache_util.cc",
+        "net/disk_cache/cache_util_posix.cc",
+        "net/disk_cache/disk_cache.cc",
+        "net/disk_cache/memory/mem_backend_impl.cc",
+        "net/disk_cache/memory/mem_entry_impl.cc",
+        "net/disk_cache/net_log_parameters.cc",
+        "net/disk_cache/simple/post_doom_waiter.cc",
+        "net/disk_cache/simple/simple_backend_impl.cc",
+        "net/disk_cache/simple/simple_entry_format.cc",
+        "net/disk_cache/simple/simple_entry_impl.cc",
+        "net/disk_cache/simple/simple_entry_operation.cc",
+        "net/disk_cache/simple/simple_file_enumerator.cc",
+        "net/disk_cache/simple/simple_file_tracker.cc",
+        "net/disk_cache/simple/simple_index.cc",
+        "net/disk_cache/simple/simple_index_file.cc",
+        "net/disk_cache/simple/simple_net_log_parameters.cc",
+        "net/disk_cache/simple/simple_synchronous_entry.cc",
+        "net/disk_cache/simple/simple_util.cc",
+        "net/disk_cache/simple/simple_util_posix.cc",
+        "net/disk_cache/simple/simple_version_upgrade.cc",
+        "net/filter/brotli_source_stream.cc",
+        "net/filter/filter_source_stream.cc",
+        "net/filter/gzip_header.cc",
+        "net/filter/gzip_source_stream.cc",
+        "net/filter/source_stream.cc",
+        "net/first_party_sets/addition_overlaps_union_find.cc",
+        "net/first_party_sets/first_party_set_entry.cc",
+        "net/first_party_sets/first_party_set_metadata.cc",
+        "net/first_party_sets/first_party_sets_cache_filter.cc",
+        "net/first_party_sets/first_party_sets_context_config.cc",
+        "net/first_party_sets/global_first_party_sets.cc",
+        "net/first_party_sets/same_party_context.cc",
+        "net/http/alternative_service.cc",
+        "net/http/bidirectional_stream.cc",
+        "net/http/bidirectional_stream_impl.cc",
+        "net/http/bidirectional_stream_request_info.cc",
+        "net/http/broken_alternative_services.cc",
+        "net/http/http_auth.cc",
+        "net/http/http_auth_cache.cc",
+        "net/http/http_auth_challenge_tokenizer.cc",
+        "net/http/http_auth_controller.cc",
+        "net/http/http_auth_filter.cc",
+        "net/http/http_auth_handler.cc",
+        "net/http/http_auth_handler_basic.cc",
+        "net/http/http_auth_handler_digest.cc",
+        "net/http/http_auth_handler_factory.cc",
+        "net/http/http_auth_handler_negotiate.cc",
+        "net/http/http_auth_handler_ntlm.cc",
+        "net/http/http_auth_handler_ntlm_portable.cc",
+        "net/http/http_auth_multi_round_parse.cc",
+        "net/http/http_auth_ntlm_mechanism.cc",
+        "net/http/http_auth_preferences.cc",
+        "net/http/http_auth_scheme.cc",
+        "net/http/http_basic_state.cc",
+        "net/http/http_basic_stream.cc",
+        "net/http/http_byte_range.cc",
+        "net/http/http_cache.cc",
+        "net/http/http_cache_lookup_manager.cc",
+        "net/http/http_cache_transaction.cc",
+        "net/http/http_cache_writers.cc",
+        "net/http/http_chunked_decoder.cc",
+        "net/http/http_content_disposition.cc",
+        "net/http/http_log_util.cc",
+        "net/http/http_network_layer.cc",
+        "net/http/http_network_session.cc",
+        "net/http/http_network_session_peer.cc",
+        "net/http/http_network_transaction.cc",
+        "net/http/http_proxy_client_socket.cc",
+        "net/http/http_proxy_connect_job.cc",
+        "net/http/http_raw_request_headers.cc",
+        "net/http/http_request_headers.cc",
+        "net/http/http_request_info.cc",
+        "net/http/http_response_body_drainer.cc",
+        "net/http/http_response_headers.cc",
+        "net/http/http_response_info.cc",
+        "net/http/http_security_headers.cc",
+        "net/http/http_server_properties.cc",
+        "net/http/http_server_properties_manager.cc",
+        "net/http/http_status_code.cc",
+        "net/http/http_stream_factory.cc",
+        "net/http/http_stream_factory_job.cc",
+        "net/http/http_stream_factory_job_controller.cc",
+        "net/http/http_stream_parser.cc",
+        "net/http/http_stream_request.cc",
+        "net/http/http_util.cc",
+        "net/http/http_vary_data.cc",
+        "net/http/partial_data.cc",
+        "net/http/proxy_client_socket.cc",
+        "net/http/proxy_fallback.cc",
+        "net/http/transport_security_persister.cc",
+        "net/http/transport_security_state_source.cc",
+        "net/http/url_security_manager.cc",
+        "net/http/url_security_manager_posix.cc",
+        "net/http/webfonts_histogram.cc",
+        "net/log/file_net_log_observer.cc",
+        "net/log/net_log.cc",
+        "net/log/net_log_capture_mode.cc",
+        "net/log/net_log_entry.cc",
+        "net/log/net_log_event_type.cc",
+        "net/log/net_log_source.cc",
+        "net/log/net_log_util.cc",
+        "net/log/net_log_values.cc",
+        "net/log/net_log_with_source.cc",
+        "net/log/trace_net_log_observer.cc",
+        "net/network_error_logging/network_error_logging_service.cc",
+        "net/nqe/cached_network_quality.cc",
+        "net/nqe/effective_connection_type.cc",
+        "net/nqe/event_creator.cc",
+        "net/nqe/network_id.cc",
+        "net/nqe/network_qualities_prefs_manager.cc",
+        "net/nqe/network_quality.cc",
+        "net/nqe/network_quality_estimator.cc",
+        "net/nqe/network_quality_estimator_params.cc",
+        "net/nqe/network_quality_estimator_util.cc",
+        "net/nqe/network_quality_observation.cc",
+        "net/nqe/network_quality_store.cc",
+        "net/nqe/observation_buffer.cc",
+        "net/nqe/pref_names.cc",
+        "net/nqe/socket_watcher.cc",
+        "net/nqe/socket_watcher_factory.cc",
+        "net/nqe/throughput_analyzer.cc",
+        "net/ntlm/ntlm.cc",
+        "net/ntlm/ntlm_buffer_reader.cc",
+        "net/ntlm/ntlm_buffer_writer.cc",
+        "net/ntlm/ntlm_client.cc",
+        "net/ntlm/ntlm_constants.cc",
+        "net/proxy_resolution/configured_proxy_resolution_request.cc",
+        "net/proxy_resolution/configured_proxy_resolution_service.cc",
+        "net/proxy_resolution/dhcp_pac_file_fetcher.cc",
+        "net/proxy_resolution/multi_threaded_proxy_resolver.cc",
+        "net/proxy_resolution/network_delegate_error_observer.cc",
+        "net/proxy_resolution/pac_file_data.cc",
+        "net/proxy_resolution/pac_file_decider.cc",
+        "net/proxy_resolution/pac_file_fetcher.cc",
+        "net/proxy_resolution/pac_file_fetcher_impl.cc",
+        "net/proxy_resolution/polling_proxy_config_service.cc",
+        "net/proxy_resolution/proxy_bypass_rules.cc",
+        "net/proxy_resolution/proxy_config.cc",
+        "net/proxy_resolution/proxy_config_service.cc",
+        "net/proxy_resolution/proxy_config_service_android.cc",
+        "net/proxy_resolution/proxy_config_service_fixed.cc",
+        "net/proxy_resolution/proxy_config_with_annotation.cc",
+        "net/proxy_resolution/proxy_info.cc",
+        "net/proxy_resolution/proxy_list.cc",
+        "net/proxy_resolution/proxy_resolver_factory.cc",
+        "net/quic/bidirectional_stream_quic_impl.cc",
+        "net/quic/crypto/proof_source_chromium.cc",
+        "net/quic/crypto/proof_verifier_chromium.cc",
+        "net/quic/dedicated_web_transport_http3_client.cc",
+        "net/quic/network_connection.cc",
+        "net/quic/platform/impl/quic_chromium_clock.cc",
+        "net/quic/properties_based_quic_server_info.cc",
+        "net/quic/quic_address_mismatch.cc",
+        "net/quic/quic_chromium_alarm_factory.cc",
+        "net/quic/quic_chromium_client_session.cc",
+        "net/quic/quic_chromium_client_stream.cc",
+        "net/quic/quic_chromium_connection_helper.cc",
+        "net/quic/quic_chromium_packet_reader.cc",
+        "net/quic/quic_chromium_packet_writer.cc",
+        "net/quic/quic_clock_skew_detector.cc",
+        "net/quic/quic_connection_logger.cc",
+        "net/quic/quic_connectivity_monitor.cc",
+        "net/quic/quic_context.cc",
+        "net/quic/quic_crypto_client_config_handle.cc",
+        "net/quic/quic_crypto_client_stream_factory.cc",
+        "net/quic/quic_event_logger.cc",
+        "net/quic/quic_http3_logger.cc",
+        "net/quic/quic_http_stream.cc",
+        "net/quic/quic_http_utils.cc",
+        "net/quic/quic_proxy_client_socket.cc",
+        "net/quic/quic_server_info.cc",
+        "net/quic/quic_session_key.cc",
+        "net/quic/quic_stream_factory.cc",
+        "net/quic/set_quic_flag.cc",
+        "net/quic/web_transport_client.cc",
+        "net/quic/web_transport_error.cc",
+        "net/reporting/reporting_browsing_data_remover.cc",
+        "net/reporting/reporting_cache.cc",
+        "net/reporting/reporting_cache_impl.cc",
+        "net/reporting/reporting_cache_observer.cc",
+        "net/reporting/reporting_context.cc",
+        "net/reporting/reporting_delegate.cc",
+        "net/reporting/reporting_delivery_agent.cc",
+        "net/reporting/reporting_endpoint.cc",
+        "net/reporting/reporting_endpoint_manager.cc",
+        "net/reporting/reporting_garbage_collector.cc",
+        "net/reporting/reporting_header_parser.cc",
+        "net/reporting/reporting_network_change_observer.cc",
+        "net/reporting/reporting_policy.cc",
+        "net/reporting/reporting_report.cc",
+        "net/reporting/reporting_service.cc",
+        "net/reporting/reporting_uploader.cc",
+        "net/socket/client_socket_factory.cc",
+        "net/socket/client_socket_handle.cc",
+        "net/socket/client_socket_pool.cc",
+        "net/socket/client_socket_pool_manager.cc",
+        "net/socket/client_socket_pool_manager_impl.cc",
+        "net/socket/connect_job.cc",
+        "net/socket/connect_job_factory.cc",
+        "net/socket/network_binding_client_socket_factory.cc",
+        "net/socket/next_proto.cc",
+        "net/socket/server_socket.cc",
+        "net/socket/socket.cc",
+        "net/socket/socket_bio_adapter.cc",
+        "net/socket/socket_descriptor.cc",
+        "net/socket/socket_net_log_params.cc",
+        "net/socket/socket_options.cc",
+        "net/socket/socket_posix.cc",
+        "net/socket/socket_tag.cc",
+        "net/socket/socks5_client_socket.cc",
+        "net/socket/socks_client_socket.cc",
+        "net/socket/socks_connect_job.cc",
+        "net/socket/ssl_client_socket.cc",
+        "net/socket/ssl_client_socket_impl.cc",
+        "net/socket/ssl_connect_job.cc",
+        "net/socket/ssl_server_socket_impl.cc",
+        "net/socket/stream_socket.cc",
+        "net/socket/tcp_client_socket.cc",
+        "net/socket/tcp_server_socket.cc",
+        "net/socket/tcp_socket_posix.cc",
+        "net/socket/transport_client_socket.cc",
+        "net/socket/transport_client_socket_pool.cc",
+        "net/socket/transport_connect_job.cc",
+        "net/socket/transport_connect_sub_job.cc",
+        "net/socket/udp_client_socket.cc",
+        "net/socket/udp_net_log_parameters.cc",
+        "net/socket/udp_server_socket.cc",
+        "net/socket/udp_socket_global_limits.cc",
+        "net/socket/udp_socket_posix.cc",
+        "net/socket/unix_domain_client_socket_posix.cc",
+        "net/socket/unix_domain_server_socket_posix.cc",
+        "net/socket/websocket_endpoint_lock_manager.cc",
+        "net/socket/websocket_transport_client_socket_pool.cc",
+        "net/spdy/alps_decoder.cc",
+        "net/spdy/bidirectional_stream_spdy_impl.cc",
+        "net/spdy/buffered_spdy_framer.cc",
+        "net/spdy/header_coalescer.cc",
+        "net/spdy/http2_priority_dependencies.cc",
+        "net/spdy/http2_push_promise_index.cc",
+        "net/spdy/multiplexed_http_stream.cc",
+        "net/spdy/multiplexed_session.cc",
+        "net/spdy/spdy_buffer.cc",
+        "net/spdy/spdy_buffer_producer.cc",
+        "net/spdy/spdy_http_stream.cc",
+        "net/spdy/spdy_http_utils.cc",
+        "net/spdy/spdy_log_util.cc",
+        "net/spdy/spdy_proxy_client_socket.cc",
+        "net/spdy/spdy_read_queue.cc",
+        "net/spdy/spdy_session.cc",
+        "net/spdy/spdy_session_key.cc",
+        "net/spdy/spdy_session_pool.cc",
+        "net/spdy/spdy_stream.cc",
+        "net/spdy/spdy_write_queue.cc",
+        "net/ssl/cert_compression.cc",
+        "net/ssl/client_cert_identity.cc",
+        "net/ssl/openssl_ssl_util.cc",
+        "net/ssl/ssl_cert_request_info.cc",
+        "net/ssl/ssl_cipher_suite_names.cc",
+        "net/ssl/ssl_client_auth_cache.cc",
+        "net/ssl/ssl_client_session_cache.cc",
+        "net/ssl/ssl_config.cc",
+        "net/ssl/ssl_config_service.cc",
+        "net/ssl/ssl_config_service_defaults.cc",
+        "net/ssl/ssl_info.cc",
+        "net/ssl/ssl_key_logger.cc",
+        "net/ssl/ssl_key_logger_impl.cc",
+        "net/ssl/ssl_platform_key_android.cc",
+        "net/ssl/ssl_platform_key_util.cc",
+        "net/ssl/ssl_private_key.cc",
+        "net/ssl/ssl_server_config.cc",
+        "net/ssl/threaded_ssl_private_key.cc",
+        "net/url_request/redirect_info.cc",
+        "net/url_request/redirect_util.cc",
+        "net/url_request/report_sender.cc",
+        "net/url_request/static_http_user_agent_settings.cc",
+        "net/url_request/url_request.cc",
+        "net/url_request/url_request_context.cc",
+        "net/url_request/url_request_context_builder.cc",
+        "net/url_request/url_request_context_getter.cc",
+        "net/url_request/url_request_error_job.cc",
+        "net/url_request/url_request_filter.cc",
+        "net/url_request/url_request_http_job.cc",
+        "net/url_request/url_request_interceptor.cc",
+        "net/url_request/url_request_job.cc",
+        "net/url_request/url_request_job_factory.cc",
+        "net/url_request/url_request_netlog_params.cc",
+        "net/url_request/url_request_redirect_job.cc",
+        "net/url_request/url_request_throttler_entry.cc",
+        "net/url_request/url_request_throttler_manager.cc",
+        "net/url_request/view_cache_helper.cc",
+        "net/url_request/websocket_handshake_userdata_key.cc",
+    ],
+    shared_libs: [
+        "libandroid",
+        "liblog",
+    ],
+    static_libs: [
+        "cronet_aml_base_base",
+        "cronet_aml_base_third_party_dynamic_annotations_dynamic_annotations",
+        "cronet_aml_crypto_crypto",
+        "cronet_aml_net_isolation_info_proto",
+        "cronet_aml_net_net_nqe_proto",
+        "cronet_aml_net_preload_decoder",
+        "cronet_aml_net_third_party_quiche_net_quic_test_tools_proto",
+        "cronet_aml_net_third_party_quiche_quiche",
+        "cronet_aml_net_uri_template",
+        "cronet_aml_third_party_boringssl_boringssl",
+        "cronet_aml_third_party_brotli_dec",
+        "cronet_aml_third_party_protobuf_protobuf_lite",
+        "cronet_aml_third_party_zlib_zlib",
+        "cronet_aml_url_url",
+    ],
+    generated_headers: [
+        "cronet_aml_base_debugging_buildflags",
+        "cronet_aml_base_logging_buildflags",
+        "cronet_aml_build_branding_buildflags",
+        "cronet_aml_build_chromeos_buildflags",
+        "cronet_aml_net_buildflags",
+        "cronet_aml_net_ios_cronet_buildflags",
+        "cronet_aml_net_net_jni_headers",
+        "cronet_aml_tools_grit_grit_sources",
+        "cronet_aml_tools_gritsettings_default_resource_ids",
+        "cronet_aml_url_buildflags",
+    ],
+    export_generated_headers: [
+        "cronet_aml_base_debugging_buildflags",
+        "cronet_aml_base_logging_buildflags",
+        "cronet_aml_build_branding_buildflags",
+        "cronet_aml_build_chromeos_buildflags",
+        "cronet_aml_net_buildflags",
+        "cronet_aml_net_ios_cronet_buildflags",
+        "cronet_aml_net_net_jni_headers",
+        "cronet_aml_tools_grit_grit_sources",
+        "cronet_aml_tools_gritsettings_default_resource_ids",
+        "cronet_aml_url_buildflags",
+    ],
+    defaults: [
+        "cronet_aml_defaults",
+    ],
+    cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
+        "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
+        "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
+        "-DDCHECK_ALWAYS_ON=1",
+        "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DENABLE_BUILT_IN_DNS",
+        "-DGOOGLE_PROTOBUF_INTERNAL_DONATE_STEAL_INLINE=0",
+        "-DGOOGLE_PROTOBUF_NO_RTTI",
+        "-DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER",
+        "-DHAVE_PTHREAD",
+        "-DHAVE_SYS_UIO_H",
+        "-DNET_IMPLEMENTATION",
+        "-D_DEBUG",
+        "-D_GNU_SOURCE",
+        "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
+        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D_LIBCPP_ENABLE_ASSERTIONS_DEFAULT=1",
+        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D__STDC_CONSTANT_MACROS",
+        "-D__STDC_FORMAT_MACROS",
+    ],
+    local_include_dirs: [
+        "./",
+        "buildtools/third_party/libc++/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
+        "net/third_party/quiche/overrides/",
+        "net/third_party/quiche/src/",
+        "net/third_party/quiche/src/quiche/common/platform/default/",
+        "third_party/abseil-cpp/",
+        "third_party/boringssl/src/include/",
+        "third_party/brotli/include/",
+        "third_party/protobuf/src/",
+        "third_party/zlib/",
+        "third_party/android_ndk/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include",
+    ],
+    header_libs: [
+        "jni_headers",
+    ],
+    cpp_std: "c++20",
+}
+
+// GN: //net:net_deps
+filegroup {
+    name: "cronet_aml_net_net_deps",
+}
+
+// GN: //net:net_export_header
+filegroup {
+    name: "cronet_aml_net_net_export_header",
+}
+
+// GN: //net:net_jni_headers
+genrule {
+    name: "cronet_aml_net_net_jni_headers",
+    srcs: [
+        "net/android/java/src/org/chromium/net/AndroidCertVerifyResult.java",
+        "net/android/java/src/org/chromium/net/AndroidKeyStore.java",
+        "net/android/java/src/org/chromium/net/AndroidNetworkLibrary.java",
+        "net/android/java/src/org/chromium/net/AndroidTrafficStats.java",
+        "net/android/java/src/org/chromium/net/DnsStatus.java",
+        "net/android/java/src/org/chromium/net/GURLUtils.java",
+        "net/android/java/src/org/chromium/net/HttpNegotiateAuthenticator.java",
+        "net/android/java/src/org/chromium/net/HttpUtil.java",
+        "net/android/java/src/org/chromium/net/NetStringUtil.java",
+        "net/android/java/src/org/chromium/net/NetworkActiveNotifier.java",
+        "net/android/java/src/org/chromium/net/NetworkChangeNotifier.java",
+        "net/android/java/src/org/chromium/net/ProxyChangeListener.java",
+        "net/android/java/src/org/chromium/net/X509Util.java",
+    ],
+    cmd: "$(location base/android/jni_generator/jni_generator.py) --ptr_type " +
+         "long " +
+         " " +
+         " " +
+         "--output_dir " +
+         "$(genDir)/net/net_jni_headers " +
+         "--includes " +
+         "base/android/jni_generator/jni_generator_helper.h " +
+         "--use_proxy_hash " +
+         "--output_name " +
+         "AndroidCertVerifyResult_jni.h " +
+         "--output_name " +
+         "AndroidKeyStore_jni.h " +
+         "--output_name " +
+         "AndroidNetworkLibrary_jni.h " +
+         "--output_name " +
+         "AndroidTrafficStats_jni.h " +
+         "--output_name " +
+         "DnsStatus_jni.h " +
+         "--output_name " +
+         "GURLUtils_jni.h " +
+         "--output_name " +
+         "HttpNegotiateAuthenticator_jni.h " +
+         "--output_name " +
+         "HttpUtil_jni.h " +
+         "--output_name " +
+         "NetStringUtil_jni.h " +
+         "--output_name " +
+         "NetworkActiveNotifier_jni.h " +
+         "--output_name " +
+         "NetworkChangeNotifier_jni.h " +
+         "--output_name " +
+         "ProxyChangeListener_jni.h " +
+         "--output_name " +
+         "X509Util_jni.h " +
+         "--input_file " +
+         "$(location net/android/java/src/org/chromium/net/AndroidCertVerifyResult.java) " +
+         "--input_file " +
+         "$(location net/android/java/src/org/chromium/net/AndroidKeyStore.java) " +
+         "--input_file " +
+         "$(location net/android/java/src/org/chromium/net/AndroidNetworkLibrary.java) " +
+         "--input_file " +
+         "$(location net/android/java/src/org/chromium/net/AndroidTrafficStats.java) " +
+         "--input_file " +
+         "$(location net/android/java/src/org/chromium/net/DnsStatus.java) " +
+         "--input_file " +
+         "$(location net/android/java/src/org/chromium/net/GURLUtils.java) " +
+         "--input_file " +
+         "$(location net/android/java/src/org/chromium/net/HttpNegotiateAuthenticator.java) " +
+         "--input_file " +
+         "$(location net/android/java/src/org/chromium/net/HttpUtil.java) " +
+         "--input_file " +
+         "$(location net/android/java/src/org/chromium/net/NetStringUtil.java) " +
+         "--input_file " +
+         "$(location net/android/java/src/org/chromium/net/NetworkActiveNotifier.java) " +
+         "--input_file " +
+         "$(location net/android/java/src/org/chromium/net/NetworkChangeNotifier.java) " +
+         "--input_file " +
+         "$(location net/android/java/src/org/chromium/net/ProxyChangeListener.java) " +
+         "--input_file " +
+         "$(location net/android/java/src/org/chromium/net/X509Util.java)",
+    out: [
+        "net/net_jni_headers/AndroidCertVerifyResult_jni.h",
+        "net/net_jni_headers/AndroidKeyStore_jni.h",
+        "net/net_jni_headers/AndroidNetworkLibrary_jni.h",
+        "net/net_jni_headers/AndroidTrafficStats_jni.h",
+        "net/net_jni_headers/DnsStatus_jni.h",
+        "net/net_jni_headers/GURLUtils_jni.h",
+        "net/net_jni_headers/HttpNegotiateAuthenticator_jni.h",
+        "net/net_jni_headers/HttpUtil_jni.h",
+        "net/net_jni_headers/NetStringUtil_jni.h",
+        "net/net_jni_headers/NetworkActiveNotifier_jni.h",
+        "net/net_jni_headers/NetworkChangeNotifier_jni.h",
+        "net/net_jni_headers/ProxyChangeListener_jni.h",
+        "net/net_jni_headers/X509Util_jni.h",
+    ],
+    tool_files: [
+        "base/android/jni_generator/jni_generator.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+    ],
+}
+
+// GN: //net:net_nqe_proto
+cc_library_static {
+    name: "cronet_aml_net_net_nqe_proto",
+    srcs: [
+        ":cronet_aml_net_net_export_header",
+        "out/test/gen/net/nqe/proto/network_id_proto.pb.cc",
+    ],
+    shared_libs: [
+        "liblog",
+    ],
+    static_libs: [
+        "cronet_aml_third_party_protobuf_protobuf_lite",
+    ],
+    defaults: [
+        "cronet_aml_defaults",
+    ],
+    cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
+        "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
+        "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
+        "-DDCHECK_ALWAYS_ON=1",
+        "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DGOOGLE_PROTOBUF_INTERNAL_DONATE_STEAL_INLINE=0",
+        "-DGOOGLE_PROTOBUF_NO_RTTI",
+        "-DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER",
+        "-DHAVE_PTHREAD",
+        "-DHAVE_SYS_UIO_H",
+        "-DNET_IMPLEMENTATION",
+        "-D_DEBUG",
+        "-D_GNU_SOURCE",
+        "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
+        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D_LIBCPP_ENABLE_ASSERTIONS_DEFAULT=1",
+        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D__STDC_CONSTANT_MACROS",
+        "-D__STDC_FORMAT_MACROS",
+    ],
+    local_include_dirs: [
+        "./",
+        "buildtools/third_party/libc++/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
+        "third_party/protobuf/src/",
+        "third_party/android_ndk/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include",
+    ],
+    cpp_std: "c++20",
+}
+
+// GN: //net:net_nqe_proto_gen
+genrule {
+    name: "cronet_aml_net_net_nqe_proto_gen",
+    srcs: [
+        "net/nqe/proto/network_id_proto.proto",
+    ],
+    cmd: "$(location tools/protoc_wrapper/protoc_wrapper.py) network_id_proto.proto " +
+         "--protoc " +
+         "./clang_x64/protoc " +
+         "--proto-in-dir " +
+         "../../net/nqe/proto " +
+         "--cc-out-dir " +
+         "gen/net/nqe/proto " +
+         "--cc-options " +
+         "dllexport_decl " +
+         "NET_EXPORT_PRIVATE: " +
+         "--include " +
+         "net/base/net_export.h " +
+         "--py-out-dir " +
+         "pyproto/net/nqe/proto",
+    out: [
+        "//out/test/pyproto/net/nqe/proto/network_id_proto_pb2.py",
+        "net/nqe/proto/network_id_proto.pb.cc",
+        "net/nqe/proto/network_id_proto.pb.h",
+    ],
+    tool_files: [
+        "tools/protoc_wrapper/protoc_wrapper.py",
+    ],
+}
+
+// GN: //net:net_public_deps
+filegroup {
+    name: "cronet_aml_net_net_public_deps",
+}
+
+// GN: //net:net_resources
+filegroup {
+    name: "cronet_aml_net_net_resources",
+}
+
+// GN: //net:net_resources_grit
+genrule {
+    name: "cronet_aml_net_net_resources_grit",
+    cmd: "$(location tools/grit/grit.py) -i " +
+         "../../net/base/net_resources.grd " +
+         "build " +
+         "-o " +
+         "gen/net " +
+         "--depdir " +
+         ". " +
+         "--depfile " +
+         "gen/net/net_resources_grit.d " +
+         "--write-only-new " +
+         "1 " +
+         "--depend-on-stamp " +
+         "-D " +
+         "DEVTOOLS_GRD_PATH " +
+         "gen/third_party/devtools-frontend/src/front_end/devtools_resources " +
+         "-D " +
+         "SHARED_INTERMEDIATE_DIR " +
+         "gen " +
+         "-D " +
+         "_google_chrome " +
+         "false " +
+         "-D " +
+         "_google_chrome_for_testing " +
+         "false " +
+         "-D " +
+         "chromeos_ash " +
+         "false " +
+         "-D " +
+         "chromeos_lacros " +
+         "false " +
+         "-D " +
+         "reven " +
+         "false " +
+         "-D " +
+         "toolkit_views " +
+         "false " +
+         "-D " +
+         "use_aura " +
+         "false " +
+         "-D " +
+         "use_ozone " +
+         "false " +
+         "-D " +
+         "use_titlecase " +
+         "false " +
+         "-E " +
+         "root_gen_dir " +
+         "gen " +
+         "-E " +
+         "root_src_dir " +
+         "../../ " +
+         "-E " +
+         "CHROMIUM_BUILD " +
+         "chromium " +
+         "-E " +
+         "ANDROID_JAVA_TAGGED_ONLY " +
+         "true " +
+         "-t " +
+         "android " +
+         "-f " +
+         "gen/tools/gritsettings/default_resource_ids " +
+         "--assert-file-list " +
+         "obj/net/net_resources_expected_outputs.txt",
+    out: [
+        "net/grit/net_resources.h",
+        "net/net_resources.pak",
+        "net/net_resources.pak.info",
+        "net/net_resources_grit.d.stamp",
+    ],
+    tool_files: [
+        "net/base/net_resources.grd",
+        "out/test/gen/tools/gritsettings/default_resource_ids",
+        "out/test/obj/net/net_resources_expected_outputs.txt",
+        "tools/grit/grit.py",
+    ],
+}
+
+// GN: //net:preload_decoder
+cc_library_static {
+    name: "cronet_aml_net_preload_decoder",
+    srcs: [
+        "net/extras/preload_data/decoder.cc",
+    ],
+    shared_libs: [
+        "libandroid",
+        "liblog",
+    ],
+    static_libs: [
+        "cronet_aml_base_base",
+    ],
+    defaults: [
+        "cronet_aml_defaults",
+    ],
+    cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
+        "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
+        "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
+        "-DDCHECK_ALWAYS_ON=1",
+        "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
+        "-D_DEBUG",
+        "-D_GNU_SOURCE",
+        "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
+        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D_LIBCPP_ENABLE_ASSERTIONS_DEFAULT=1",
+        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D__STDC_CONSTANT_MACROS",
+        "-D__STDC_FORMAT_MACROS",
+    ],
+    local_include_dirs: [
+        "./",
+        "buildtools/third_party/libc++/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
+        "third_party/abseil-cpp/",
+        "third_party/boringssl/src/include/",
+        "third_party/android_ndk/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include",
+    ],
+    cpp_std: "c++20",
+}
+
+// GN: //net/third_party/quiche:net_quic_proto
+cc_library_static {
+    name: "cronet_aml_net_third_party_quiche_net_quic_proto",
+    srcs: [
+        "out/test/gen/net/third_party/quiche/src/quiche/quic/core/proto/cached_network_parameters.pb.cc",
+        "out/test/gen/net/third_party/quiche/src/quiche/quic/core/proto/crypto_server_config.pb.cc",
+        "out/test/gen/net/third_party/quiche/src/quiche/quic/core/proto/source_address_token.pb.cc",
+    ],
+    shared_libs: [
+        "libandroid",
+        "liblog",
+    ],
+    static_libs: [
+        "cronet_aml_base_base",
+        "cronet_aml_third_party_protobuf_protobuf_lite",
+    ],
+    defaults: [
+        "cronet_aml_defaults",
+    ],
+    cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
+        "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
+        "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
+        "-DDCHECK_ALWAYS_ON=1",
+        "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DGOOGLE_PROTOBUF_INTERNAL_DONATE_STEAL_INLINE=0",
+        "-DGOOGLE_PROTOBUF_NO_RTTI",
+        "-DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER",
+        "-DHAVE_PTHREAD",
+        "-DHAVE_SYS_UIO_H",
+        "-DIS_QUICHE_IMPL",
+        "-D_DEBUG",
+        "-D_GNU_SOURCE",
+        "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
+        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D_LIBCPP_ENABLE_ASSERTIONS_DEFAULT=1",
+        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D__STDC_CONSTANT_MACROS",
+        "-D__STDC_FORMAT_MACROS",
+    ],
+    local_include_dirs: [
+        "./",
+        "buildtools/third_party/libc++/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
+        "third_party/abseil-cpp/",
+        "third_party/boringssl/src/include/",
+        "third_party/protobuf/src/",
+        "third_party/android_ndk/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include",
+    ],
+    cpp_std: "c++20",
+}
+
+// GN: //net/third_party/quiche:net_quic_proto_gen
+genrule {
+    name: "cronet_aml_net_third_party_quiche_net_quic_proto_gen",
+    srcs: [
+        "net/third_party/quiche/src/quiche/quic/core/proto/cached_network_parameters.proto",
+        "net/third_party/quiche/src/quiche/quic/core/proto/crypto_server_config.proto",
+        "net/third_party/quiche/src/quiche/quic/core/proto/source_address_token.proto",
+    ],
+    cmd: "$(location tools/protoc_wrapper/protoc_wrapper.py) quiche/quic/core/proto/cached_network_parameters.proto " +
+         "quiche/quic/core/proto/crypto_server_config.proto " +
+         "quiche/quic/core/proto/source_address_token.proto " +
+         "--protoc " +
+         "./clang_x64/protoc " +
+         "--proto-in-dir " +
+         "../../net/third_party/quiche/src " +
+         "--cc-out-dir " +
+         "gen/net/third_party/quiche/src " +
+         "--cc-options " +
+         "dllexport_decl " +
+         "COMPONENT_EXPORT(QUICHE): " +
+         "--include " +
+         "base/component_export.h " +
+         "--py-out-dir " +
+         "pyproto/net/third_party/quiche/src",
+    out: [
+        "//out/test/pyproto/net/third_party/quiche/src/quiche/quic/core/proto/cached_network_parameters_pb2.py",
+        "//out/test/pyproto/net/third_party/quiche/src/quiche/quic/core/proto/crypto_server_config_pb2.py",
+        "//out/test/pyproto/net/third_party/quiche/src/quiche/quic/core/proto/source_address_token_pb2.py",
+        "net/third_party/quiche/src/quiche/quic/core/proto/cached_network_parameters.pb.cc",
+        "net/third_party/quiche/src/quiche/quic/core/proto/cached_network_parameters.pb.h",
+        "net/third_party/quiche/src/quiche/quic/core/proto/crypto_server_config.pb.cc",
+        "net/third_party/quiche/src/quiche/quic/core/proto/crypto_server_config.pb.h",
+        "net/third_party/quiche/src/quiche/quic/core/proto/source_address_token.pb.cc",
+        "net/third_party/quiche/src/quiche/quic/core/proto/source_address_token.pb.h",
+    ],
+    tool_files: [
+        "tools/protoc_wrapper/protoc_wrapper.py",
+    ],
+}
+
+// GN: //net/third_party/quiche:net_quic_test_tools_proto
+cc_library_static {
+    name: "cronet_aml_net_third_party_quiche_net_quic_test_tools_proto",
+    srcs: [
+        ":cronet_aml_net_net_export_header",
+        "out/test/gen/net/third_party/quiche/src/quiche/quic/test_tools/send_algorithm_test_result.pb.cc",
+    ],
+    shared_libs: [
+        "liblog",
+    ],
+    static_libs: [
+        "cronet_aml_third_party_protobuf_protobuf_lite",
+    ],
+    defaults: [
+        "cronet_aml_defaults",
+    ],
+    cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
+        "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
+        "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
+        "-DDCHECK_ALWAYS_ON=1",
+        "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DGOOGLE_PROTOBUF_INTERNAL_DONATE_STEAL_INLINE=0",
+        "-DGOOGLE_PROTOBUF_NO_RTTI",
+        "-DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER",
+        "-DHAVE_PTHREAD",
+        "-DHAVE_SYS_UIO_H",
+        "-DNET_IMPLEMENTATION",
+        "-D_DEBUG",
+        "-D_GNU_SOURCE",
+        "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
+        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D_LIBCPP_ENABLE_ASSERTIONS_DEFAULT=1",
+        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D__STDC_CONSTANT_MACROS",
+        "-D__STDC_FORMAT_MACROS",
+    ],
+    local_include_dirs: [
+        "./",
+        "buildtools/third_party/libc++/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
+        "third_party/protobuf/src/",
+        "third_party/android_ndk/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include",
+    ],
+    cpp_std: "c++20",
+}
+
+// GN: //net/third_party/quiche:net_quic_test_tools_proto_gen
+genrule {
+    name: "cronet_aml_net_third_party_quiche_net_quic_test_tools_proto_gen",
+    srcs: [
+        "net/third_party/quiche/src/quiche/quic/test_tools/send_algorithm_test_result.proto",
+    ],
+    cmd: "$(location tools/protoc_wrapper/protoc_wrapper.py) send_algorithm_test_result.proto " +
+         "--protoc " +
+         "./clang_x64/protoc " +
+         "--proto-in-dir " +
+         "../../net/third_party/quiche/src/quiche/quic/test_tools " +
+         "--cc-out-dir " +
+         "gen/net/third_party/quiche/src/quiche/quic/test_tools " +
+         "--cc-options " +
+         "dllexport_decl " +
+         "NET_EXPORT_PRIVATE: " +
+         "--include " +
+         "net/base/net_export.h " +
+         "--py-out-dir " +
+         "pyproto/net/third_party/quiche/src/quiche/quic/test_tools",
+    out: [
+        "//out/test/pyproto/net/third_party/quiche/src/quiche/quic/test_tools/send_algorithm_test_result_pb2.py",
+        "net/third_party/quiche/src/quiche/quic/test_tools/send_algorithm_test_result.pb.cc",
+        "net/third_party/quiche/src/quiche/quic/test_tools/send_algorithm_test_result.pb.h",
+    ],
+    tool_files: [
+        "tools/protoc_wrapper/protoc_wrapper.py",
+    ],
+}
+
+// GN: //net/third_party/quiche:quiche
+cc_library_static {
+    name: "cronet_aml_net_third_party_quiche_quiche",
+    srcs: [
+        ":cronet_aml_third_party_abseil_cpp_absl",
+        ":cronet_aml_third_party_abseil_cpp_absl_algorithm_algorithm",
+        ":cronet_aml_third_party_abseil_cpp_absl_algorithm_container",
+        ":cronet_aml_third_party_abseil_cpp_absl_base_atomic_hook",
+        ":cronet_aml_third_party_abseil_cpp_absl_base_base",
+        ":cronet_aml_third_party_abseil_cpp_absl_base_base_internal",
+        ":cronet_aml_third_party_abseil_cpp_absl_base_config",
+        ":cronet_aml_third_party_abseil_cpp_absl_base_core_headers",
+        ":cronet_aml_third_party_abseil_cpp_absl_base_cycleclock_internal",
+        ":cronet_aml_third_party_abseil_cpp_absl_base_dynamic_annotations",
+        ":cronet_aml_third_party_abseil_cpp_absl_base_endian",
+        ":cronet_aml_third_party_abseil_cpp_absl_base_errno_saver",
+        ":cronet_aml_third_party_abseil_cpp_absl_base_fast_type_id",
+        ":cronet_aml_third_party_abseil_cpp_absl_base_log_severity",
+        ":cronet_aml_third_party_abseil_cpp_absl_base_malloc_internal",
+        ":cronet_aml_third_party_abseil_cpp_absl_base_prefetch",
+        ":cronet_aml_third_party_abseil_cpp_absl_base_raw_logging_internal",
+        ":cronet_aml_third_party_abseil_cpp_absl_base_spinlock_wait",
+        ":cronet_aml_third_party_abseil_cpp_absl_base_strerror",
+        ":cronet_aml_third_party_abseil_cpp_absl_base_throw_delegate",
+        ":cronet_aml_third_party_abseil_cpp_absl_cleanup_cleanup",
+        ":cronet_aml_third_party_abseil_cpp_absl_cleanup_cleanup_internal",
+        ":cronet_aml_third_party_abseil_cpp_absl_container_btree",
+        ":cronet_aml_third_party_abseil_cpp_absl_container_common",
+        ":cronet_aml_third_party_abseil_cpp_absl_container_common_policy_traits",
+        ":cronet_aml_third_party_abseil_cpp_absl_container_compressed_tuple",
+        ":cronet_aml_third_party_abseil_cpp_absl_container_container_memory",
+        ":cronet_aml_third_party_abseil_cpp_absl_container_fixed_array",
+        ":cronet_aml_third_party_abseil_cpp_absl_container_flat_hash_map",
+        ":cronet_aml_third_party_abseil_cpp_absl_container_flat_hash_set",
+        ":cronet_aml_third_party_abseil_cpp_absl_container_hash_function_defaults",
+        ":cronet_aml_third_party_abseil_cpp_absl_container_hash_policy_traits",
+        ":cronet_aml_third_party_abseil_cpp_absl_container_hashtable_debug_hooks",
+        ":cronet_aml_third_party_abseil_cpp_absl_container_hashtablez_sampler",
+        ":cronet_aml_third_party_abseil_cpp_absl_container_inlined_vector",
+        ":cronet_aml_third_party_abseil_cpp_absl_container_inlined_vector_internal",
+        ":cronet_aml_third_party_abseil_cpp_absl_container_layout",
+        ":cronet_aml_third_party_abseil_cpp_absl_container_node_hash_map",
+        ":cronet_aml_third_party_abseil_cpp_absl_container_node_hash_set",
+        ":cronet_aml_third_party_abseil_cpp_absl_container_node_slot_policy",
+        ":cronet_aml_third_party_abseil_cpp_absl_container_raw_hash_map",
+        ":cronet_aml_third_party_abseil_cpp_absl_container_raw_hash_set",
+        ":cronet_aml_third_party_abseil_cpp_absl_debugging_debugging_internal",
+        ":cronet_aml_third_party_abseil_cpp_absl_debugging_demangle_internal",
+        ":cronet_aml_third_party_abseil_cpp_absl_debugging_examine_stack",
+        ":cronet_aml_third_party_abseil_cpp_absl_debugging_failure_signal_handler",
+        ":cronet_aml_third_party_abseil_cpp_absl_debugging_stacktrace",
+        ":cronet_aml_third_party_abseil_cpp_absl_debugging_symbolize",
+        ":cronet_aml_third_party_abseil_cpp_absl_functional_any_invocable",
+        ":cronet_aml_third_party_abseil_cpp_absl_functional_bind_front",
+        ":cronet_aml_third_party_abseil_cpp_absl_functional_function_ref",
+        ":cronet_aml_third_party_abseil_cpp_absl_hash_city",
+        ":cronet_aml_third_party_abseil_cpp_absl_hash_hash",
+        ":cronet_aml_third_party_abseil_cpp_absl_hash_low_level_hash",
+        ":cronet_aml_third_party_abseil_cpp_absl_memory_memory",
+        ":cronet_aml_third_party_abseil_cpp_absl_meta_type_traits",
+        ":cronet_aml_third_party_abseil_cpp_absl_numeric_bits",
+        ":cronet_aml_third_party_abseil_cpp_absl_numeric_int128",
+        ":cronet_aml_third_party_abseil_cpp_absl_numeric_representation",
+        ":cronet_aml_third_party_abseil_cpp_absl_profiling_exponential_biased",
+        ":cronet_aml_third_party_abseil_cpp_absl_profiling_sample_recorder",
+        ":cronet_aml_third_party_abseil_cpp_absl_random_distributions",
+        ":cronet_aml_third_party_abseil_cpp_absl_random_internal_distribution_caller",
+        ":cronet_aml_third_party_abseil_cpp_absl_random_internal_fast_uniform_bits",
+        ":cronet_aml_third_party_abseil_cpp_absl_random_internal_fastmath",
+        ":cronet_aml_third_party_abseil_cpp_absl_random_internal_generate_real",
+        ":cronet_aml_third_party_abseil_cpp_absl_random_internal_iostream_state_saver",
+        ":cronet_aml_third_party_abseil_cpp_absl_random_internal_nonsecure_base",
+        ":cronet_aml_third_party_abseil_cpp_absl_random_internal_pcg_engine",
+        ":cronet_aml_third_party_abseil_cpp_absl_random_internal_platform",
+        ":cronet_aml_third_party_abseil_cpp_absl_random_internal_pool_urbg",
+        ":cronet_aml_third_party_abseil_cpp_absl_random_internal_randen",
+        ":cronet_aml_third_party_abseil_cpp_absl_random_internal_randen_engine",
+        ":cronet_aml_third_party_abseil_cpp_absl_random_internal_randen_hwaes",
+        ":cronet_aml_third_party_abseil_cpp_absl_random_internal_randen_hwaes_impl",
+        ":cronet_aml_third_party_abseil_cpp_absl_random_internal_randen_slow",
+        ":cronet_aml_third_party_abseil_cpp_absl_random_internal_salted_seed_seq",
+        ":cronet_aml_third_party_abseil_cpp_absl_random_internal_seed_material",
+        ":cronet_aml_third_party_abseil_cpp_absl_random_internal_traits",
+        ":cronet_aml_third_party_abseil_cpp_absl_random_internal_uniform_helper",
+        ":cronet_aml_third_party_abseil_cpp_absl_random_internal_wide_multiply",
+        ":cronet_aml_third_party_abseil_cpp_absl_random_random",
+        ":cronet_aml_third_party_abseil_cpp_absl_random_seed_gen_exception",
+        ":cronet_aml_third_party_abseil_cpp_absl_random_seed_sequences",
+        ":cronet_aml_third_party_abseil_cpp_absl_status_status",
+        ":cronet_aml_third_party_abseil_cpp_absl_status_statusor",
+        ":cronet_aml_third_party_abseil_cpp_absl_strings_cord",
+        ":cronet_aml_third_party_abseil_cpp_absl_strings_cord_internal",
+        ":cronet_aml_third_party_abseil_cpp_absl_strings_cordz_functions",
+        ":cronet_aml_third_party_abseil_cpp_absl_strings_cordz_handle",
+        ":cronet_aml_third_party_abseil_cpp_absl_strings_cordz_info",
+        ":cronet_aml_third_party_abseil_cpp_absl_strings_cordz_statistics",
+        ":cronet_aml_third_party_abseil_cpp_absl_strings_cordz_update_scope",
+        ":cronet_aml_third_party_abseil_cpp_absl_strings_cordz_update_tracker",
+        ":cronet_aml_third_party_abseil_cpp_absl_strings_internal",
+        ":cronet_aml_third_party_abseil_cpp_absl_strings_str_format",
+        ":cronet_aml_third_party_abseil_cpp_absl_strings_str_format_internal",
+        ":cronet_aml_third_party_abseil_cpp_absl_strings_strings",
+        ":cronet_aml_third_party_abseil_cpp_absl_synchronization_graphcycles_internal",
+        ":cronet_aml_third_party_abseil_cpp_absl_synchronization_kernel_timeout_internal",
+        ":cronet_aml_third_party_abseil_cpp_absl_synchronization_synchronization",
+        ":cronet_aml_third_party_abseil_cpp_absl_time_internal_cctz_civil_time",
+        ":cronet_aml_third_party_abseil_cpp_absl_time_internal_cctz_time_zone",
+        ":cronet_aml_third_party_abseil_cpp_absl_time_time",
+        ":cronet_aml_third_party_abseil_cpp_absl_types_bad_optional_access",
+        ":cronet_aml_third_party_abseil_cpp_absl_types_bad_variant_access",
+        ":cronet_aml_third_party_abseil_cpp_absl_types_compare",
+        ":cronet_aml_third_party_abseil_cpp_absl_types_optional",
+        ":cronet_aml_third_party_abseil_cpp_absl_types_span",
+        ":cronet_aml_third_party_abseil_cpp_absl_types_variant",
+        ":cronet_aml_third_party_abseil_cpp_absl_utility_utility",
+        "net/third_party/quiche/overrides/quiche_platform_impl/quiche_mutex_impl.cc",
+        "net/third_party/quiche/overrides/quiche_platform_impl/quiche_time_utils_impl.cc",
+        "net/third_party/quiche/overrides/quiche_platform_impl/quiche_url_utils_impl.cc",
+        "net/third_party/quiche/src/quiche/common/platform/api/quiche_hostname_utils.cc",
+        "net/third_party/quiche/src/quiche/common/platform/api/quiche_mutex.cc",
+        "net/third_party/quiche/src/quiche/common/platform/default/quiche_platform_impl/quiche_flags_impl.cc",
+        "net/third_party/quiche/src/quiche/common/quiche_buffer_allocator.cc",
+        "net/third_party/quiche/src/quiche/common/quiche_crypto_logging.cc",
+        "net/third_party/quiche/src/quiche/common/quiche_data_reader.cc",
+        "net/third_party/quiche/src/quiche/common/quiche_data_writer.cc",
+        "net/third_party/quiche/src/quiche/common/quiche_ip_address.cc",
+        "net/third_party/quiche/src/quiche/common/quiche_ip_address_family.cc",
+        "net/third_party/quiche/src/quiche/common/quiche_mem_slice_storage.cc",
+        "net/third_party/quiche/src/quiche/common/quiche_random.cc",
+        "net/third_party/quiche/src/quiche/common/quiche_text_utils.cc",
+        "net/third_party/quiche/src/quiche/common/simple_buffer_allocator.cc",
+        "net/third_party/quiche/src/quiche/common/structured_headers.cc",
+        "net/third_party/quiche/src/quiche/http2/adapter/event_forwarder.cc",
+        "net/third_party/quiche/src/quiche/http2/adapter/header_validator.cc",
+        "net/third_party/quiche/src/quiche/http2/adapter/http2_protocol.cc",
+        "net/third_party/quiche/src/quiche/http2/adapter/http2_util.cc",
+        "net/third_party/quiche/src/quiche/http2/adapter/noop_header_validator.cc",
+        "net/third_party/quiche/src/quiche/http2/adapter/oghttp2_adapter.cc",
+        "net/third_party/quiche/src/quiche/http2/adapter/oghttp2_session.cc",
+        "net/third_party/quiche/src/quiche/http2/adapter/oghttp2_util.cc",
+        "net/third_party/quiche/src/quiche/http2/adapter/window_manager.cc",
+        "net/third_party/quiche/src/quiche/http2/core/http2_trace_logging.cc",
+        "net/third_party/quiche/src/quiche/http2/decoder/decode_buffer.cc",
+        "net/third_party/quiche/src/quiche/http2/decoder/decode_http2_structures.cc",
+        "net/third_party/quiche/src/quiche/http2/decoder/decode_status.cc",
+        "net/third_party/quiche/src/quiche/http2/decoder/frame_decoder_state.cc",
+        "net/third_party/quiche/src/quiche/http2/decoder/http2_frame_decoder.cc",
+        "net/third_party/quiche/src/quiche/http2/decoder/http2_frame_decoder_listener.cc",
+        "net/third_party/quiche/src/quiche/http2/decoder/http2_structure_decoder.cc",
+        "net/third_party/quiche/src/quiche/http2/decoder/payload_decoders/altsvc_payload_decoder.cc",
+        "net/third_party/quiche/src/quiche/http2/decoder/payload_decoders/continuation_payload_decoder.cc",
+        "net/third_party/quiche/src/quiche/http2/decoder/payload_decoders/data_payload_decoder.cc",
+        "net/third_party/quiche/src/quiche/http2/decoder/payload_decoders/goaway_payload_decoder.cc",
+        "net/third_party/quiche/src/quiche/http2/decoder/payload_decoders/headers_payload_decoder.cc",
+        "net/third_party/quiche/src/quiche/http2/decoder/payload_decoders/ping_payload_decoder.cc",
+        "net/third_party/quiche/src/quiche/http2/decoder/payload_decoders/priority_payload_decoder.cc",
+        "net/third_party/quiche/src/quiche/http2/decoder/payload_decoders/priority_update_payload_decoder.cc",
+        "net/third_party/quiche/src/quiche/http2/decoder/payload_decoders/push_promise_payload_decoder.cc",
+        "net/third_party/quiche/src/quiche/http2/decoder/payload_decoders/rst_stream_payload_decoder.cc",
+        "net/third_party/quiche/src/quiche/http2/decoder/payload_decoders/settings_payload_decoder.cc",
+        "net/third_party/quiche/src/quiche/http2/decoder/payload_decoders/unknown_payload_decoder.cc",
+        "net/third_party/quiche/src/quiche/http2/decoder/payload_decoders/window_update_payload_decoder.cc",
+        "net/third_party/quiche/src/quiche/http2/hpack/decoder/hpack_block_decoder.cc",
+        "net/third_party/quiche/src/quiche/http2/hpack/decoder/hpack_decoder.cc",
+        "net/third_party/quiche/src/quiche/http2/hpack/decoder/hpack_decoder_listener.cc",
+        "net/third_party/quiche/src/quiche/http2/hpack/decoder/hpack_decoder_state.cc",
+        "net/third_party/quiche/src/quiche/http2/hpack/decoder/hpack_decoder_string_buffer.cc",
+        "net/third_party/quiche/src/quiche/http2/hpack/decoder/hpack_decoder_tables.cc",
+        "net/third_party/quiche/src/quiche/http2/hpack/decoder/hpack_decoding_error.cc",
+        "net/third_party/quiche/src/quiche/http2/hpack/decoder/hpack_entry_decoder.cc",
+        "net/third_party/quiche/src/quiche/http2/hpack/decoder/hpack_entry_decoder_listener.cc",
+        "net/third_party/quiche/src/quiche/http2/hpack/decoder/hpack_entry_type_decoder.cc",
+        "net/third_party/quiche/src/quiche/http2/hpack/decoder/hpack_string_decoder.cc",
+        "net/third_party/quiche/src/quiche/http2/hpack/decoder/hpack_string_decoder_listener.cc",
+        "net/third_party/quiche/src/quiche/http2/hpack/decoder/hpack_whole_entry_buffer.cc",
+        "net/third_party/quiche/src/quiche/http2/hpack/decoder/hpack_whole_entry_listener.cc",
+        "net/third_party/quiche/src/quiche/http2/hpack/http2_hpack_constants.cc",
+        "net/third_party/quiche/src/quiche/http2/hpack/huffman/hpack_huffman_decoder.cc",
+        "net/third_party/quiche/src/quiche/http2/hpack/huffman/hpack_huffman_encoder.cc",
+        "net/third_party/quiche/src/quiche/http2/hpack/huffman/huffman_spec_tables.cc",
+        "net/third_party/quiche/src/quiche/http2/hpack/varint/hpack_varint_decoder.cc",
+        "net/third_party/quiche/src/quiche/http2/hpack/varint/hpack_varint_encoder.cc",
+        "net/third_party/quiche/src/quiche/http2/http2_constants.cc",
+        "net/third_party/quiche/src/quiche/http2/http2_structures.cc",
+        "net/third_party/quiche/src/quiche/quic/core/congestion_control/bandwidth_sampler.cc",
+        "net/third_party/quiche/src/quiche/quic/core/congestion_control/bbr2_drain.cc",
+        "net/third_party/quiche/src/quiche/quic/core/congestion_control/bbr2_misc.cc",
+        "net/third_party/quiche/src/quiche/quic/core/congestion_control/bbr2_probe_bw.cc",
+        "net/third_party/quiche/src/quiche/quic/core/congestion_control/bbr2_probe_rtt.cc",
+        "net/third_party/quiche/src/quiche/quic/core/congestion_control/bbr2_sender.cc",
+        "net/third_party/quiche/src/quiche/quic/core/congestion_control/bbr2_startup.cc",
+        "net/third_party/quiche/src/quiche/quic/core/congestion_control/bbr_sender.cc",
+        "net/third_party/quiche/src/quiche/quic/core/congestion_control/cubic_bytes.cc",
+        "net/third_party/quiche/src/quiche/quic/core/congestion_control/general_loss_algorithm.cc",
+        "net/third_party/quiche/src/quiche/quic/core/congestion_control/hybrid_slow_start.cc",
+        "net/third_party/quiche/src/quiche/quic/core/congestion_control/pacing_sender.cc",
+        "net/third_party/quiche/src/quiche/quic/core/congestion_control/prr_sender.cc",
+        "net/third_party/quiche/src/quiche/quic/core/congestion_control/rtt_stats.cc",
+        "net/third_party/quiche/src/quiche/quic/core/congestion_control/send_algorithm_interface.cc",
+        "net/third_party/quiche/src/quiche/quic/core/congestion_control/tcp_cubic_sender_bytes.cc",
+        "net/third_party/quiche/src/quiche/quic/core/congestion_control/uber_loss_algorithm.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/aead_base_decrypter.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/aead_base_encrypter.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/aes_128_gcm_12_decrypter.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/aes_128_gcm_12_encrypter.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/aes_128_gcm_decrypter.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/aes_128_gcm_encrypter.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/aes_256_gcm_decrypter.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/aes_256_gcm_encrypter.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/aes_base_decrypter.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/aes_base_encrypter.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/cert_compressor.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/certificate_util.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/certificate_view.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/chacha20_poly1305_decrypter.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/chacha20_poly1305_encrypter.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/chacha20_poly1305_tls_decrypter.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/chacha20_poly1305_tls_encrypter.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/chacha_base_decrypter.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/chacha_base_encrypter.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/channel_id.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/client_proof_source.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/crypto_framer.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/crypto_handshake.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/crypto_handshake_message.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/crypto_secret_boxer.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/crypto_utils.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/curve25519_key_exchange.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/key_exchange.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/null_decrypter.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/null_encrypter.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/p256_key_exchange.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/proof_source.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/proof_source_x509.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/quic_client_session_cache.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/quic_compressed_certs_cache.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/quic_crypter.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/quic_crypto_client_config.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/quic_crypto_proof.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/quic_crypto_server_config.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/quic_decrypter.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/quic_encrypter.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/quic_hkdf.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/tls_client_connection.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/tls_connection.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/tls_server_connection.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/transport_parameters.cc",
+        "net/third_party/quiche/src/quiche/quic/core/crypto/web_transport_fingerprint_proof_verifier.cc",
+        "net/third_party/quiche/src/quiche/quic/core/deterministic_connection_id_generator.cc",
+        "net/third_party/quiche/src/quiche/quic/core/frames/quic_ack_frame.cc",
+        "net/third_party/quiche/src/quiche/quic/core/frames/quic_ack_frequency_frame.cc",
+        "net/third_party/quiche/src/quiche/quic/core/frames/quic_blocked_frame.cc",
+        "net/third_party/quiche/src/quiche/quic/core/frames/quic_connection_close_frame.cc",
+        "net/third_party/quiche/src/quiche/quic/core/frames/quic_crypto_frame.cc",
+        "net/third_party/quiche/src/quiche/quic/core/frames/quic_frame.cc",
+        "net/third_party/quiche/src/quiche/quic/core/frames/quic_goaway_frame.cc",
+        "net/third_party/quiche/src/quiche/quic/core/frames/quic_handshake_done_frame.cc",
+        "net/third_party/quiche/src/quiche/quic/core/frames/quic_max_streams_frame.cc",
+        "net/third_party/quiche/src/quiche/quic/core/frames/quic_message_frame.cc",
+        "net/third_party/quiche/src/quiche/quic/core/frames/quic_new_connection_id_frame.cc",
+        "net/third_party/quiche/src/quiche/quic/core/frames/quic_new_token_frame.cc",
+        "net/third_party/quiche/src/quiche/quic/core/frames/quic_padding_frame.cc",
+        "net/third_party/quiche/src/quiche/quic/core/frames/quic_path_challenge_frame.cc",
+        "net/third_party/quiche/src/quiche/quic/core/frames/quic_path_response_frame.cc",
+        "net/third_party/quiche/src/quiche/quic/core/frames/quic_ping_frame.cc",
+        "net/third_party/quiche/src/quiche/quic/core/frames/quic_retire_connection_id_frame.cc",
+        "net/third_party/quiche/src/quiche/quic/core/frames/quic_rst_stream_frame.cc",
+        "net/third_party/quiche/src/quiche/quic/core/frames/quic_stop_sending_frame.cc",
+        "net/third_party/quiche/src/quiche/quic/core/frames/quic_stop_waiting_frame.cc",
+        "net/third_party/quiche/src/quiche/quic/core/frames/quic_stream_frame.cc",
+        "net/third_party/quiche/src/quiche/quic/core/frames/quic_streams_blocked_frame.cc",
+        "net/third_party/quiche/src/quiche/quic/core/frames/quic_window_update_frame.cc",
+        "net/third_party/quiche/src/quiche/quic/core/http/capsule.cc",
+        "net/third_party/quiche/src/quiche/quic/core/http/http_constants.cc",
+        "net/third_party/quiche/src/quiche/quic/core/http/http_decoder.cc",
+        "net/third_party/quiche/src/quiche/quic/core/http/http_encoder.cc",
+        "net/third_party/quiche/src/quiche/quic/core/http/quic_client_promised_info.cc",
+        "net/third_party/quiche/src/quiche/quic/core/http/quic_client_push_promise_index.cc",
+        "net/third_party/quiche/src/quiche/quic/core/http/quic_header_list.cc",
+        "net/third_party/quiche/src/quiche/quic/core/http/quic_headers_stream.cc",
+        "net/third_party/quiche/src/quiche/quic/core/http/quic_receive_control_stream.cc",
+        "net/third_party/quiche/src/quiche/quic/core/http/quic_send_control_stream.cc",
+        "net/third_party/quiche/src/quiche/quic/core/http/quic_server_initiated_spdy_stream.cc",
+        "net/third_party/quiche/src/quiche/quic/core/http/quic_server_session_base.cc",
+        "net/third_party/quiche/src/quiche/quic/core/http/quic_spdy_client_session.cc",
+        "net/third_party/quiche/src/quiche/quic/core/http/quic_spdy_client_session_base.cc",
+        "net/third_party/quiche/src/quiche/quic/core/http/quic_spdy_client_stream.cc",
+        "net/third_party/quiche/src/quiche/quic/core/http/quic_spdy_session.cc",
+        "net/third_party/quiche/src/quiche/quic/core/http/quic_spdy_stream.cc",
+        "net/third_party/quiche/src/quiche/quic/core/http/quic_spdy_stream_body_manager.cc",
+        "net/third_party/quiche/src/quiche/quic/core/http/spdy_server_push_utils.cc",
+        "net/third_party/quiche/src/quiche/quic/core/http/spdy_utils.cc",
+        "net/third_party/quiche/src/quiche/quic/core/http/web_transport_http3.cc",
+        "net/third_party/quiche/src/quiche/quic/core/http/web_transport_stream_adapter.cc",
+        "net/third_party/quiche/src/quiche/quic/core/legacy_quic_stream_id_manager.cc",
+        "net/third_party/quiche/src/quiche/quic/core/qpack/qpack_blocking_manager.cc",
+        "net/third_party/quiche/src/quiche/quic/core/qpack/qpack_decoded_headers_accumulator.cc",
+        "net/third_party/quiche/src/quiche/quic/core/qpack/qpack_decoder.cc",
+        "net/third_party/quiche/src/quiche/quic/core/qpack/qpack_decoder_stream_receiver.cc",
+        "net/third_party/quiche/src/quiche/quic/core/qpack/qpack_decoder_stream_sender.cc",
+        "net/third_party/quiche/src/quiche/quic/core/qpack/qpack_encoder.cc",
+        "net/third_party/quiche/src/quiche/quic/core/qpack/qpack_encoder_stream_receiver.cc",
+        "net/third_party/quiche/src/quiche/quic/core/qpack/qpack_encoder_stream_sender.cc",
+        "net/third_party/quiche/src/quiche/quic/core/qpack/qpack_header_table.cc",
+        "net/third_party/quiche/src/quiche/quic/core/qpack/qpack_index_conversions.cc",
+        "net/third_party/quiche/src/quiche/quic/core/qpack/qpack_instruction_decoder.cc",
+        "net/third_party/quiche/src/quiche/quic/core/qpack/qpack_instruction_encoder.cc",
+        "net/third_party/quiche/src/quiche/quic/core/qpack/qpack_instructions.cc",
+        "net/third_party/quiche/src/quiche/quic/core/qpack/qpack_progressive_decoder.cc",
+        "net/third_party/quiche/src/quiche/quic/core/qpack/qpack_receive_stream.cc",
+        "net/third_party/quiche/src/quiche/quic/core/qpack/qpack_required_insert_count.cc",
+        "net/third_party/quiche/src/quiche/quic/core/qpack/qpack_send_stream.cc",
+        "net/third_party/quiche/src/quiche/quic/core/qpack/qpack_static_table.cc",
+        "net/third_party/quiche/src/quiche/quic/core/qpack/value_splitting_header_list.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_ack_listener_interface.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_alarm.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_bandwidth.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_chaos_protector.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_clock.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_coalesced_packet.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_config.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_connection.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_connection_context.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_connection_id.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_connection_id_manager.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_connection_stats.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_constants.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_control_frame_manager.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_crypto_client_handshaker.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_crypto_client_stream.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_crypto_handshaker.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_crypto_server_stream.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_crypto_server_stream_base.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_crypto_stream.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_data_reader.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_data_writer.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_datagram_queue.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_error_codes.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_flow_controller.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_framer.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_idle_network_detector.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_mtu_discovery.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_network_blackhole_detector.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_packet_creator.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_packet_number.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_packets.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_path_validator.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_ping_manager.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_received_packet_manager.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_sent_packet_manager.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_server_id.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_session.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_socket_address_coder.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_stream.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_stream_id_manager.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_stream_send_buffer.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_stream_sequencer.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_stream_sequencer_buffer.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_sustained_bandwidth_recorder.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_tag.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_time.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_transmission_info.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_types.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_unacked_packet_map.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_utils.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_version_manager.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_versions.cc",
+        "net/third_party/quiche/src/quiche/quic/core/quic_write_blocked_list.cc",
+        "net/third_party/quiche/src/quiche/quic/core/tls_client_handshaker.cc",
+        "net/third_party/quiche/src/quiche/quic/core/tls_handshaker.cc",
+        "net/third_party/quiche/src/quiche/quic/core/tls_server_handshaker.cc",
+        "net/third_party/quiche/src/quiche/quic/core/uber_quic_stream_id_manager.cc",
+        "net/third_party/quiche/src/quiche/quic/core/uber_received_packet_manager.cc",
+        "net/third_party/quiche/src/quiche/quic/platform/api/quic_socket_address.cc",
+        "net/third_party/quiche/src/quiche/spdy/core/array_output_buffer.cc",
+        "net/third_party/quiche/src/quiche/spdy/core/hpack/hpack_constants.cc",
+        "net/third_party/quiche/src/quiche/spdy/core/hpack/hpack_decoder_adapter.cc",
+        "net/third_party/quiche/src/quiche/spdy/core/hpack/hpack_encoder.cc",
+        "net/third_party/quiche/src/quiche/spdy/core/hpack/hpack_entry.cc",
+        "net/third_party/quiche/src/quiche/spdy/core/hpack/hpack_header_table.cc",
+        "net/third_party/quiche/src/quiche/spdy/core/hpack/hpack_output_stream.cc",
+        "net/third_party/quiche/src/quiche/spdy/core/hpack/hpack_static_table.cc",
+        "net/third_party/quiche/src/quiche/spdy/core/http2_frame_decoder_adapter.cc",
+        "net/third_party/quiche/src/quiche/spdy/core/http2_header_block.cc",
+        "net/third_party/quiche/src/quiche/spdy/core/http2_header_storage.cc",
+        "net/third_party/quiche/src/quiche/spdy/core/recording_headers_handler.cc",
+        "net/third_party/quiche/src/quiche/spdy/core/spdy_alt_svc_wire_format.cc",
+        "net/third_party/quiche/src/quiche/spdy/core/spdy_frame_builder.cc",
+        "net/third_party/quiche/src/quiche/spdy/core/spdy_framer.cc",
+        "net/third_party/quiche/src/quiche/spdy/core/spdy_no_op_visitor.cc",
+        "net/third_party/quiche/src/quiche/spdy/core/spdy_pinnable_buffer_piece.cc",
+        "net/third_party/quiche/src/quiche/spdy/core/spdy_prefixed_buffer_reader.cc",
+        "net/third_party/quiche/src/quiche/spdy/core/spdy_protocol.cc",
+        "net/third_party/quiche/src/quiche/spdy/core/spdy_simple_arena.cc",
+    ],
+    shared_libs: [
+        "libandroid",
+        "liblog",
+    ],
+    static_libs: [
+        "cronet_aml_base_base",
+        "cronet_aml_net_third_party_quiche_net_quic_proto",
+        "cronet_aml_net_uri_template",
+        "cronet_aml_third_party_boringssl_boringssl",
+        "cronet_aml_third_party_protobuf_protobuf_lite",
+        "cronet_aml_third_party_zlib_zlib",
+        "cronet_aml_url_url",
+    ],
+    generated_headers: [
+        "cronet_aml_build_chromeos_buildflags",
+    ],
+    export_generated_headers: [
+        "cronet_aml_build_chromeos_buildflags",
+    ],
+    defaults: [
+        "cronet_aml_defaults",
+    ],
+    cflags: [
+        "-DABSL_ALLOCATOR_NOTHROW=1",
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
+        "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
+        "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
+        "-DDCHECK_ALWAYS_ON=1",
+        "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DGOOGLE_PROTOBUF_INTERNAL_DONATE_STEAL_INLINE=0",
+        "-DGOOGLE_PROTOBUF_NO_RTTI",
+        "-DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER",
+        "-DHAVE_PTHREAD",
+        "-DHAVE_SYS_UIO_H",
+        "-DIS_QUICHE_IMPL",
+        "-D_DEBUG",
+        "-D_GNU_SOURCE",
+        "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
+        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D_LIBCPP_ENABLE_ASSERTIONS_DEFAULT=1",
+        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D__STDC_CONSTANT_MACROS",
+        "-D__STDC_FORMAT_MACROS",
+    ],
+    local_include_dirs: [
+        "./",
+        "buildtools/third_party/libc++/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
+        "net/third_party/quiche/overrides/",
+        "net/third_party/quiche/src/",
+        "net/third_party/quiche/src/quiche/common/platform/default/",
+        "third_party/abseil-cpp/",
+        "third_party/boringssl/src/include/",
+        "third_party/protobuf/src/",
+        "third_party/zlib/",
+        "third_party/android_ndk/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include",
+    ],
+    cpp_std: "c++20",
+}
+
+// GN: //net/tools/root_store_tool:root_store_tool
+cc_binary {
+    name: "cronet_aml_net_tools_root_store_tool_root_store_tool",
+    srcs: [
+        ":cronet_aml_buildtools_third_party_libc___libc__",
+        ":cronet_aml_buildtools_third_party_libc__abi_libc__abi",
+        "net/tools/root_store_tool/root_store_tool.cc",
+    ],
+    static_libs: [
+        "cronet_aml_base_base",
+        "cronet_aml_crypto_crypto",
+        "cronet_aml_net_cert_root_store_proto_full",
+        "cronet_aml_third_party_boringssl_boringssl",
+    ],
+    defaults: [
+        "cronet_aml_defaults",
+    ],
+    cflags: [
+        "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
+        "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
+        "-DCR_SYSROOT_KEY=20220331T153654Z-0",
+        "-DDCHECK_ALWAYS_ON=1",
+        "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DGOOGLE_PROTOBUF_INTERNAL_DONATE_STEAL_INLINE=0",
+        "-DGOOGLE_PROTOBUF_NO_RTTI",
+        "-DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER",
+        "-DHAVE_PTHREAD",
+        "-DLIBCXXABI_SILENT_TERMINATE",
+        "-DLIBCXX_BUILDING_LIBCXXABI",
+        "-DUSE_AURA=1",
+        "-DUSE_OZONE=1",
+        "-DUSE_UDEV",
+        "-D_DEBUG",
+        "-D_FILE_OFFSET_BITS=64",
+        "-D_GNU_SOURCE",
+        "-D_LARGEFILE64_SOURCE",
+        "-D_LARGEFILE_SOURCE",
+        "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
+        "-D_LIBCPP_BUILDING_LIBRARY",
+        "-D_LIBCPP_CONSTINIT=constinit",
+        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D_LIBCPP_ENABLE_ASSERTIONS_DEFAULT=1",
+        "-D_LIBCPP_OVERRIDABLE_FUNC_VIS=__attribute__((__visibility__(\"default\")))",
+        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D__STDC_CONSTANT_MACROS",
+        "-D__STDC_FORMAT_MACROS",
+    ],
+    local_include_dirs: [
+        "./",
+        "buildtools/third_party/libc++/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++/trunk/src/",
+        "buildtools/third_party/libc++abi/trunk/include",
+        "third_party/abseil-cpp/",
+        "third_party/boringssl/src/include/",
+        "third_party/protobuf/src/",
+        "build/linux/debian_bullseye_amd64-sysroot/usr/include",
+    ],
+    cpp_std: "c++20",
+}
+
+// GN: //net/traffic_annotation:traffic_annotation
+filegroup {
+    name: "cronet_aml_net_traffic_annotation_traffic_annotation",
+    srcs: [
+        "net/traffic_annotation/network_traffic_annotation_android.cc",
+    ],
+}
+
+// GN: //net:uri_template
+cc_library_static {
+    name: "cronet_aml_net_uri_template",
+    srcs: [
+        "net/third_party/uri_template/uri_template.cc",
+    ],
+    shared_libs: [
+        "libandroid",
+        "liblog",
+    ],
+    static_libs: [
+        "cronet_aml_base_base",
+    ],
+    defaults: [
+        "cronet_aml_defaults",
+    ],
+    cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
+        "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
+        "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
+        "-DDCHECK_ALWAYS_ON=1",
+        "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
+        "-DIS_URI_TEMPLATE_IMPL",
+        "-D_DEBUG",
+        "-D_GNU_SOURCE",
+        "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
+        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D_LIBCPP_ENABLE_ASSERTIONS_DEFAULT=1",
+        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D__STDC_CONSTANT_MACROS",
+        "-D__STDC_FORMAT_MACROS",
+    ],
+    local_include_dirs: [
+        "./",
+        "buildtools/third_party/libc++/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
+        "third_party/abseil-cpp/",
+        "third_party/boringssl/src/include/",
+        "third_party/android_ndk/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include",
+    ],
+    cpp_std: "c++20",
 }
 
 // GN: //third_party/abseil-cpp:absl
@@ -2500,6 +5802,2798 @@
     name: "cronet_aml_third_party_abseil_cpp_absl_utility_utility",
 }
 
+// GN: //third_party/android_deps:auto_service_processor__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_auto_service_processor__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_annotation_processor " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[\"$(location third_party/android_deps/com_google_auto_service_auto_service_java.build_config.json)\"] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/auto_service_processor.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:auto_service_processor " +
+         "--non-chromium-code " +
+         "--bundled-srcjars " +
+         "[] " +
+         "--main-class " +
+         "com.google.auto.service.processor.AutoServiceProcessor",
+    out: [
+        "third_party/android_deps/auto_service_processor.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:com_github_ben_manes_caffeine_caffeine_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_github_ben_manes_caffeine_caffeine_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[\"$(location third_party/android_deps/com_google_errorprone_error_prone_annotations_java.build_config.json)\", \"$(location third_party/android_deps/org_checkerframework_checker_qual_java.build_config.json)\"] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/com_github_ben_manes_caffeine_caffeine_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:com_github_ben_manes_caffeine_caffeine_java " +
+         "--non-chromium-code " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/com_github_ben_manes_caffeine_caffeine.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/com_github_ben_manes_caffeine_caffeine/caffeine-2.8.8.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/com_github_ben_manes_caffeine_caffeine.ijar.jar) " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/com_github_ben_manes_caffeine_caffeine_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:com_github_ben_manes_caffeine_caffeine_java__header
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_github_ben_manes_caffeine_caffeine_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_deps/libs/com_github_ben_manes_caffeine_caffeine/caffeine-2.8.8.jar " +
+         "obj/third_party/android_deps/com_github_ben_manes_caffeine_caffeine.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_deps/com_github_ben_manes_caffeine_caffeine.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_deps/libs/com_github_ben_manes_caffeine_caffeine/caffeine-2.8.8.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_github_ben_manes_caffeine_caffeine_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_github_ben_manes_caffeine_caffeine_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/com_github_ben_manes_caffeine_caffeine/caffeine-2.8.8.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/com_github_ben_manes_caffeine_caffeine.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/com_github_ben_manes_caffeine_caffeine.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/com_github_ben_manes_caffeine_caffeine/caffeine-2.8.8.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_github_kevinstern_software_and_algorithms_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_github_kevinstern_software_and_algorithms_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/com_github_kevinstern_software_and_algorithms_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:com_github_kevinstern_software_and_algorithms_java " +
+         "--non-chromium-code " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/com_github_kevinstern_software_and_algorithms.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/com_github_kevinstern_software_and_algorithms/software-and-algorithms-1.0.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/com_github_kevinstern_software_and_algorithms.ijar.jar) " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/com_github_kevinstern_software_and_algorithms_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:com_github_kevinstern_software_and_algorithms_java__header
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_github_kevinstern_software_and_algorithms_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_deps/libs/com_github_kevinstern_software_and_algorithms/software-and-algorithms-1.0.jar " +
+         "obj/third_party/android_deps/com_github_kevinstern_software_and_algorithms.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_deps/com_github_kevinstern_software_and_algorithms.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_deps/libs/com_github_kevinstern_software_and_algorithms/software-and-algorithms-1.0.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_github_kevinstern_software_and_algorithms_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_github_kevinstern_software_and_algorithms_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/com_github_kevinstern_software_and_algorithms/software-and-algorithms-1.0.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/com_github_kevinstern_software_and_algorithms.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/com_github_kevinstern_software_and_algorithms.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/com_github_kevinstern_software_and_algorithms/software-and-algorithms-1.0.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_auto_auto_common_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_auto_auto_common_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[\"$(location third_party/android_deps/com_google_guava_guava_java.build_config.json)\"] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/com_google_auto_auto_common_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:com_google_auto_auto_common_java " +
+         "--non-chromium-code " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/com_google_auto_auto_common.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/com_google_auto_auto_common/auto-common-1.2.1.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/com_google_auto_auto_common.ijar.jar) " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/com_google_auto_auto_common_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_auto_auto_common_java__header
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_auto_auto_common_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_deps/libs/com_google_auto_auto_common/auto-common-1.2.1.jar " +
+         "obj/third_party/android_deps/com_google_auto_auto_common.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_deps/com_google_auto_auto_common.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_deps/libs/com_google_auto_auto_common/auto-common-1.2.1.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_auto_auto_common_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_auto_auto_common_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/com_google_auto_auto_common/auto-common-1.2.1.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/com_google_auto_auto_common.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/com_google_auto_auto_common.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/com_google_auto_auto_common/auto-common-1.2.1.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_auto_service_auto_service_annotations_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_auto_service_auto_service_annotations_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/com_google_auto_service_auto_service_annotations_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:com_google_auto_service_auto_service_annotations_java " +
+         "--non-chromium-code " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/com_google_auto_service_auto_service_annotations.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/com_google_auto_service_auto_service_annotations/auto-service-annotations-1.0-rc6.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/com_google_auto_service_auto_service_annotations.ijar.jar) " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/com_google_auto_service_auto_service_annotations_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_auto_service_auto_service_annotations_java__header
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_auto_service_auto_service_annotations_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_deps/libs/com_google_auto_service_auto_service_annotations/auto-service-annotations-1.0-rc6.jar " +
+         "obj/third_party/android_deps/com_google_auto_service_auto_service_annotations.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_deps/com_google_auto_service_auto_service_annotations.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_deps/libs/com_google_auto_service_auto_service_annotations/auto-service-annotations-1.0-rc6.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_auto_service_auto_service_annotations_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_auto_service_auto_service_annotations_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/com_google_auto_service_auto_service_annotations/auto-service-annotations-1.0-rc6.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/com_google_auto_service_auto_service_annotations.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/com_google_auto_service_auto_service_annotations.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/com_google_auto_service_auto_service_annotations/auto-service-annotations-1.0-rc6.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_auto_service_auto_service_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_auto_service_auto_service_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[\"$(location third_party/android_deps/com_google_auto_auto_common_java.build_config.json)\", \"$(location third_party/android_deps/com_google_auto_service_auto_service_annotations_java.build_config.json)\", \"$(location third_party/android_deps/com_google_guava_guava_java.build_config.json)\"] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/com_google_auto_service_auto_service_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:com_google_auto_service_auto_service_java " +
+         "--non-chromium-code " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/com_google_auto_service_auto_service.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/com_google_auto_service_auto_service/auto-service-1.0-rc6.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/com_google_auto_service_auto_service.ijar.jar) " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/com_google_auto_service_auto_service_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_auto_service_auto_service_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_auto_service_auto_service_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/com_google_auto_service_auto_service/auto-service-1.0-rc6.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/com_google_auto_service_auto_service.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/com_google_auto_service_auto_service.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/com_google_auto_service_auto_service/auto-service-1.0-rc6.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_auto_value_auto_value_annotations_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_auto_value_auto_value_annotations_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/com_google_auto_value_auto_value_annotations_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:com_google_auto_value_auto_value_annotations_java " +
+         "--non-chromium-code " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/com_google_auto_value_auto_value_annotations.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/com_google_auto_value_auto_value_annotations/auto-value-annotations-1.9.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/com_google_auto_value_auto_value_annotations.ijar.jar) " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/com_google_auto_value_auto_value_annotations_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_auto_value_auto_value_annotations_java__header
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_auto_value_auto_value_annotations_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_deps/libs/com_google_auto_value_auto_value_annotations/auto-value-annotations-1.9.jar " +
+         "obj/third_party/android_deps/com_google_auto_value_auto_value_annotations.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_deps/com_google_auto_value_auto_value_annotations.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_deps/libs/com_google_auto_value_auto_value_annotations/auto-value-annotations-1.9.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_auto_value_auto_value_annotations_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_auto_value_auto_value_annotations_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/com_google_auto_value_auto_value_annotations/auto-value-annotations-1.9.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/com_google_auto_value_auto_value_annotations.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/com_google_auto_value_auto_value_annotations.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/com_google_auto_value_auto_value_annotations/auto-value-annotations-1.9.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_code_findbugs_jsr305_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_code_findbugs_jsr305_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[\"$(location third_party/android_sdk/android_sdk_java.build_config.json)\"] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/com_google_code_findbugs_jsr305_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:com_google_code_findbugs_jsr305_java " +
+         "--non-chromium-code " +
+         "--device-jar-path " +
+         "$(location ../../third_party/android_deps/libs/com_google_code_findbugs_jsr305/jsr305-3.0.2.jar) " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/com_google_code_findbugs_jsr305.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/com_google_code_findbugs_jsr305/jsr305-3.0.2.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/com_google_code_findbugs_jsr305.ijar.jar) " +
+         "--dex-path " +
+         "obj/third_party/android_deps/com_google_code_findbugs_jsr305_java.dex.jar " +
+         "--supports-android " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/com_google_code_findbugs_jsr305_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_code_findbugs_jsr305_java__header
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_code_findbugs_jsr305_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_deps/libs/com_google_code_findbugs_jsr305/jsr305-3.0.2.jar " +
+         "obj/third_party/android_deps/com_google_code_findbugs_jsr305.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_deps/com_google_code_findbugs_jsr305.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_deps/libs/com_google_code_findbugs_jsr305/jsr305-3.0.2.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_code_findbugs_jsr305_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_code_findbugs_jsr305_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/com_google_code_findbugs_jsr305/jsr305-3.0.2.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/com_google_code_findbugs_jsr305.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/com_google_code_findbugs_jsr305.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/com_google_code_findbugs_jsr305/jsr305-3.0.2.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_errorprone_error_prone_annotation_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_annotation_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[\"$(location third_party/android_deps/com_google_guava_guava_java.build_config.json)\"] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/com_google_errorprone_error_prone_annotation_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:com_google_errorprone_error_prone_annotation_java " +
+         "--non-chromium-code " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/com_google_errorprone_error_prone_annotation.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/com_google_errorprone_error_prone_annotation/error_prone_annotation-2.11.0.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/com_google_errorprone_error_prone_annotation.ijar.jar) " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/com_google_errorprone_error_prone_annotation_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_errorprone_error_prone_annotation_java__header
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_annotation_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_deps/libs/com_google_errorprone_error_prone_annotation/error_prone_annotation-2.11.0.jar " +
+         "obj/third_party/android_deps/com_google_errorprone_error_prone_annotation.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_deps/com_google_errorprone_error_prone_annotation.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_deps/libs/com_google_errorprone_error_prone_annotation/error_prone_annotation-2.11.0.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_errorprone_error_prone_annotation_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_annotation_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/com_google_errorprone_error_prone_annotation/error_prone_annotation-2.11.0.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/com_google_errorprone_error_prone_annotation.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/com_google_errorprone_error_prone_annotation.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/com_google_errorprone_error_prone_annotation/error_prone_annotation-2.11.0.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_errorprone_error_prone_annotations_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_annotations_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[\"$(location third_party/android_sdk/android_sdk_java.build_config.json)\"] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/com_google_errorprone_error_prone_annotations_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:com_google_errorprone_error_prone_annotations_java " +
+         "--non-chromium-code " +
+         "--device-jar-path " +
+         "$(location ../../third_party/android_deps/libs/com_google_errorprone_error_prone_annotations/error_prone_annotations-2.14.0.jar) " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/com_google_errorprone_error_prone_annotations.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/com_google_errorprone_error_prone_annotations/error_prone_annotations-2.14.0.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/com_google_errorprone_error_prone_annotations.ijar.jar) " +
+         "--dex-path " +
+         "obj/third_party/android_deps/com_google_errorprone_error_prone_annotations_java.dex.jar " +
+         "--supports-android " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/com_google_errorprone_error_prone_annotations_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_errorprone_error_prone_annotations_java__header
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_annotations_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_deps/libs/com_google_errorprone_error_prone_annotations/error_prone_annotations-2.14.0.jar " +
+         "obj/third_party/android_deps/com_google_errorprone_error_prone_annotations.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_deps/com_google_errorprone_error_prone_annotations.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_deps/libs/com_google_errorprone_error_prone_annotations/error_prone_annotations-2.14.0.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_errorprone_error_prone_annotations_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_annotations_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/com_google_errorprone_error_prone_annotations/error_prone_annotations-2.14.0.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/com_google_errorprone_error_prone_annotations.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/com_google_errorprone_error_prone_annotations.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/com_google_errorprone_error_prone_annotations/error_prone_annotations-2.14.0.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_errorprone_error_prone_check_api_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_check_api_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[\"$(location third_party/android_deps/com_github_ben_manes_caffeine_caffeine_java.build_config.json)\", \"$(location third_party/android_deps/com_github_kevinstern_software_and_algorithms_java.build_config.json)\", \"$(location third_party/android_deps/com_google_auto_value_auto_value_annotations_java.build_config.json)\", \"$(location third_party/android_deps/com_google_code_findbugs_jsr305_java.build_config.json)\", \"$(location third_party/android_deps/com_google_errorprone_error_prone_annotation_java.build_config.json)\", \"$(location third_party/android_deps/com_google_errorprone_error_prone_annotations_java.build_config.json)\", \"$(location third_party/android_deps/io_github_java_diff_utils_java_diff_utils_java.build_config.json)\", \"$(location third_party/android_deps/org_checkerframework_dataflow_errorprone_java.build_config.json)\"] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/com_google_errorprone_error_prone_check_api_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:com_google_errorprone_error_prone_check_api_java " +
+         "--non-chromium-code " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/com_google_errorprone_error_prone_check_api.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/com_google_errorprone_error_prone_check_api/error_prone_check_api-2.11.0.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/com_google_errorprone_error_prone_check_api.ijar.jar) " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/com_google_errorprone_error_prone_check_api_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_errorprone_error_prone_check_api_java__header
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_check_api_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_deps/libs/com_google_errorprone_error_prone_check_api/error_prone_check_api-2.11.0.jar " +
+         "obj/third_party/android_deps/com_google_errorprone_error_prone_check_api.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_deps/com_google_errorprone_error_prone_check_api.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_deps/libs/com_google_errorprone_error_prone_check_api/error_prone_check_api-2.11.0.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_errorprone_error_prone_check_api_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_check_api_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/com_google_errorprone_error_prone_check_api/error_prone_check_api-2.11.0.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/com_google_errorprone_error_prone_check_api.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/com_google_errorprone_error_prone_check_api.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/com_google_errorprone_error_prone_check_api/error_prone_check_api-2.11.0.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_errorprone_error_prone_core_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_core_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[\"$(location third_party/android_deps/com_google_auto_auto_common_java.build_config.json)\", \"$(location third_party/android_deps/com_google_auto_service_auto_service_annotations_java.build_config.json)\", \"$(location third_party/android_deps/com_google_auto_value_auto_value_annotations_java.build_config.json)\", \"$(location third_party/android_deps/com_google_code_findbugs_jsr305_java.build_config.json)\", \"$(location third_party/android_deps/com_google_errorprone_error_prone_annotation_java.build_config.json)\", \"$(location third_party/android_deps/com_google_errorprone_error_prone_annotations_java.build_config.json)\", \"$(location third_party/android_deps/com_google_errorprone_error_prone_check_api_java.build_config.json)\", \"$(location third_party/android_deps/com_google_errorprone_error_prone_type_annotations_java.build_config.json)\", \"$(location third_party/android_deps/com_google_guava_guava_java.build_config.json)\", \"$(location third_party/android_deps/com_google_protobuf_protobuf_java_java.build_config.json)\", \"$(location third_party/android_deps/org_checkerframework_dataflow_errorprone_java.build_config.json)\", \"$(location third_party/android_deps/org_pcollections_pcollections_java.build_config.json)\"] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/com_google_errorprone_error_prone_core_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:com_google_errorprone_error_prone_core_java " +
+         "--non-chromium-code " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/com_google_errorprone_error_prone_core.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/com_google_errorprone_error_prone_core/error_prone_core-2.11.0.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/com_google_errorprone_error_prone_core.ijar.jar) " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/com_google_errorprone_error_prone_core_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_errorprone_error_prone_core_java__header
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_core_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_deps/libs/com_google_errorprone_error_prone_core/error_prone_core-2.11.0.jar " +
+         "obj/third_party/android_deps/com_google_errorprone_error_prone_core.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_deps/com_google_errorprone_error_prone_core.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_deps/libs/com_google_errorprone_error_prone_core/error_prone_core-2.11.0.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_errorprone_error_prone_core_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_core_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/com_google_errorprone_error_prone_core/error_prone_core-2.11.0.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/com_google_errorprone_error_prone_core.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/com_google_errorprone_error_prone_core.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/com_google_errorprone_error_prone_core/error_prone_core-2.11.0.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_errorprone_error_prone_type_annotations_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_type_annotations_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/com_google_errorprone_error_prone_type_annotations_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:com_google_errorprone_error_prone_type_annotations_java " +
+         "--non-chromium-code " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/com_google_errorprone_error_prone_type_annotations.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/com_google_errorprone_error_prone_type_annotations/error_prone_type_annotations-2.11.0.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/com_google_errorprone_error_prone_type_annotations.ijar.jar) " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/com_google_errorprone_error_prone_type_annotations_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_errorprone_error_prone_type_annotations_java__header
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_type_annotations_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_deps/libs/com_google_errorprone_error_prone_type_annotations/error_prone_type_annotations-2.11.0.jar " +
+         "obj/third_party/android_deps/com_google_errorprone_error_prone_type_annotations.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_deps/com_google_errorprone_error_prone_type_annotations.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_deps/libs/com_google_errorprone_error_prone_type_annotations/error_prone_type_annotations-2.11.0.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_errorprone_error_prone_type_annotations_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_type_annotations_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/com_google_errorprone_error_prone_type_annotations/error_prone_type_annotations-2.11.0.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/com_google_errorprone_error_prone_type_annotations.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/com_google_errorprone_error_prone_type_annotations.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/com_google_errorprone_error_prone_type_annotations/error_prone_type_annotations-2.11.0.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_errorprone_javac_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_errorprone_javac_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/com_google_errorprone_javac_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:com_google_errorprone_javac_java " +
+         "--non-chromium-code " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/com_google_errorprone_javac.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/com_google_errorprone_javac/javac-9+181-r4173-1.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/com_google_errorprone_javac.ijar.jar) " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/com_google_errorprone_javac_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_errorprone_javac_java__header
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_errorprone_javac_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_deps/libs/com_google_errorprone_javac/javac-9+181-r4173-1.jar " +
+         "obj/third_party/android_deps/com_google_errorprone_javac.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_deps/com_google_errorprone_javac.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_deps/libs/com_google_errorprone_javac/javac-9+181-r4173-1.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_errorprone_javac_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_errorprone_javac_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/com_google_errorprone_javac/javac-9+181-r4173-1.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/com_google_errorprone_javac.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/com_google_errorprone_javac.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/com_google_errorprone_javac/javac-9+181-r4173-1.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_guava_failureaccess_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_guava_failureaccess_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[\"$(location third_party/android_sdk/android_sdk_java.build_config.json)\"] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/com_google_guava_failureaccess_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:com_google_guava_failureaccess_java " +
+         "--non-chromium-code " +
+         "--device-jar-path " +
+         "$(location ../../third_party/android_deps/libs/com_google_guava_failureaccess/failureaccess-1.0.1.jar) " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/com_google_guava_failureaccess.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/com_google_guava_failureaccess/failureaccess-1.0.1.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/com_google_guava_failureaccess.ijar.jar) " +
+         "--dex-path " +
+         "obj/third_party/android_deps/com_google_guava_failureaccess_java.dex.jar " +
+         "--supports-android " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/com_google_guava_failureaccess_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_guava_failureaccess_java__header
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_guava_failureaccess_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_deps/libs/com_google_guava_failureaccess/failureaccess-1.0.1.jar " +
+         "obj/third_party/android_deps/com_google_guava_failureaccess.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_deps/com_google_guava_failureaccess.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_deps/libs/com_google_guava_failureaccess/failureaccess-1.0.1.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_guava_failureaccess_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_guava_failureaccess_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/com_google_guava_failureaccess/failureaccess-1.0.1.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/com_google_guava_failureaccess.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/com_google_guava_failureaccess.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/com_google_guava_failureaccess/failureaccess-1.0.1.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_guava_guava_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_guava_guava_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[\"$(location third_party/android_deps/com_google_code_findbugs_jsr305_java.build_config.json)\", \"$(location third_party/android_deps/com_google_errorprone_error_prone_annotations_java.build_config.json)\", \"$(location third_party/android_deps/com_google_guava_failureaccess_java.build_config.json)\", \"$(location third_party/android_deps/com_google_guava_listenablefuture_java.build_config.json)\", \"$(location third_party/android_deps/com_google_j2objc_j2objc_annotations_java.build_config.json)\", \"$(location third_party/android_deps/org_checkerframework_checker_qual_java.build_config.json)\", \"$(location third_party/android_deps/com_google_guava_listenablefuture_java.build_config.json)\"] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/com_google_guava_guava_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:com_google_guava_guava_java " +
+         "--non-chromium-code " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/com_google_guava_guava.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/com_google_guava_guava/guava-31.0.1-jre.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/com_google_guava_guava.ijar.jar) " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/com_google_guava_guava_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_guava_guava_java__header
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_guava_guava_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_deps/libs/com_google_guava_guava/guava-31.0.1-jre.jar " +
+         "obj/third_party/android_deps/com_google_guava_guava.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_deps/com_google_guava_guava.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_deps/libs/com_google_guava_guava/guava-31.0.1-jre.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_guava_guava_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_guava_guava_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/com_google_guava_guava/guava-31.0.1-jre.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/com_google_guava_guava.jar " +
+         "--exclude-globs " +
+         "[\"*/ListenableFuture.class\"] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/com_google_guava_guava.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/com_google_guava_guava/guava-31.0.1-jre.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_guava_listenablefuture_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_guava_listenablefuture_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[\"$(location third_party/android_sdk/android_sdk_java.build_config.json)\"] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/com_google_guava_listenablefuture_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:com_google_guava_listenablefuture_java " +
+         "--non-chromium-code " +
+         "--device-jar-path " +
+         "$(location ../../third_party/android_deps/libs/com_google_guava_listenablefuture/listenablefuture-1.0.jar) " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/com_google_guava_listenablefuture.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/com_google_guava_listenablefuture/listenablefuture-1.0.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/com_google_guava_listenablefuture.ijar.jar) " +
+         "--dex-path " +
+         "obj/third_party/android_deps/com_google_guava_listenablefuture_java.dex.jar " +
+         "--supports-android " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/com_google_guava_listenablefuture_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_guava_listenablefuture_java__header
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_guava_listenablefuture_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_deps/libs/com_google_guava_listenablefuture/listenablefuture-1.0.jar " +
+         "obj/third_party/android_deps/com_google_guava_listenablefuture.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_deps/com_google_guava_listenablefuture.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_deps/libs/com_google_guava_listenablefuture/listenablefuture-1.0.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_guava_listenablefuture_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_guava_listenablefuture_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/com_google_guava_listenablefuture/listenablefuture-1.0.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/com_google_guava_listenablefuture.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/com_google_guava_listenablefuture.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/com_google_guava_listenablefuture/listenablefuture-1.0.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_j2objc_j2objc_annotations_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_j2objc_j2objc_annotations_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[\"$(location third_party/android_sdk/android_sdk_java.build_config.json)\"] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/com_google_j2objc_j2objc_annotations_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:com_google_j2objc_j2objc_annotations_java " +
+         "--non-chromium-code " +
+         "--device-jar-path " +
+         "$(location ../../third_party/android_deps/libs/com_google_j2objc_j2objc_annotations/j2objc-annotations-1.3.jar) " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/com_google_j2objc_j2objc_annotations.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/com_google_j2objc_j2objc_annotations/j2objc-annotations-1.3.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/com_google_j2objc_j2objc_annotations.ijar.jar) " +
+         "--dex-path " +
+         "obj/third_party/android_deps/com_google_j2objc_j2objc_annotations_java.dex.jar " +
+         "--supports-android " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/com_google_j2objc_j2objc_annotations_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_j2objc_j2objc_annotations_java__header
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_j2objc_j2objc_annotations_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_deps/libs/com_google_j2objc_j2objc_annotations/j2objc-annotations-1.3.jar " +
+         "obj/third_party/android_deps/com_google_j2objc_j2objc_annotations.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_deps/com_google_j2objc_j2objc_annotations.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_deps/libs/com_google_j2objc_j2objc_annotations/j2objc-annotations-1.3.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_j2objc_j2objc_annotations_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_j2objc_j2objc_annotations_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/com_google_j2objc_j2objc_annotations/j2objc-annotations-1.3.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/com_google_j2objc_j2objc_annotations.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/com_google_j2objc_j2objc_annotations.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/com_google_j2objc_j2objc_annotations/j2objc-annotations-1.3.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_protobuf_protobuf_java_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_protobuf_protobuf_java_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/com_google_protobuf_protobuf_java_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:com_google_protobuf_protobuf_java_java " +
+         "--non-chromium-code " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/com_google_protobuf_protobuf_java.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/com_google_protobuf_protobuf_java/protobuf-java-3.19.2.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/com_google_protobuf_protobuf_java.ijar.jar) " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/com_google_protobuf_protobuf_java_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_protobuf_protobuf_java_java__header
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_protobuf_protobuf_java_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_deps/libs/com_google_protobuf_protobuf_java/protobuf-java-3.19.2.jar " +
+         "obj/third_party/android_deps/com_google_protobuf_protobuf_java.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_deps/com_google_protobuf_protobuf_java.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_deps/libs/com_google_protobuf_protobuf_java/protobuf-java-3.19.2.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:com_google_protobuf_protobuf_java_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_com_google_protobuf_protobuf_java_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/com_google_protobuf_protobuf_java/protobuf-java-3.19.2.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/com_google_protobuf_protobuf_java.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/com_google_protobuf_protobuf_java.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/com_google_protobuf_protobuf_java/protobuf-java-3.19.2.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:io_github_java_diff_utils_java_diff_utils_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_io_github_java_diff_utils_java_diff_utils_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[\"$(location third_party/android_deps/org_eclipse_jgit_org_eclipse_jgit_java.build_config.json)\"] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/io_github_java_diff_utils_java_diff_utils_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:io_github_java_diff_utils_java_diff_utils_java " +
+         "--non-chromium-code " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/io_github_java_diff_utils_java_diff_utils.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/io_github_java_diff_utils_java_diff_utils/java-diff-utils-4.0.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/io_github_java_diff_utils_java_diff_utils.ijar.jar) " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/io_github_java_diff_utils_java_diff_utils_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:io_github_java_diff_utils_java_diff_utils_java__header
+genrule {
+    name: "cronet_aml_third_party_android_deps_io_github_java_diff_utils_java_diff_utils_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_deps/libs/io_github_java_diff_utils_java_diff_utils/java-diff-utils-4.0.jar " +
+         "obj/third_party/android_deps/io_github_java_diff_utils_java_diff_utils.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_deps/io_github_java_diff_utils_java_diff_utils.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_deps/libs/io_github_java_diff_utils_java_diff_utils/java-diff-utils-4.0.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:io_github_java_diff_utils_java_diff_utils_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_io_github_java_diff_utils_java_diff_utils_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/io_github_java_diff_utils_java_diff_utils/java-diff-utils-4.0.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/io_github_java_diff_utils_java_diff_utils.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/io_github_java_diff_utils_java_diff_utils.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/io_github_java_diff_utils_java_diff_utils/java-diff-utils-4.0.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:org_checkerframework_checker_qual_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_org_checkerframework_checker_qual_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[\"$(location third_party/android_sdk/android_sdk_java.build_config.json)\"] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/org_checkerframework_checker_qual_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:org_checkerframework_checker_qual_java " +
+         "--non-chromium-code " +
+         "--device-jar-path " +
+         "$(location ../../third_party/android_deps/libs/org_checkerframework_checker_qual/checker-qual-3.25.0.jar) " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/org_checkerframework_checker_qual.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/org_checkerframework_checker_qual/checker-qual-3.25.0.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/org_checkerframework_checker_qual.ijar.jar) " +
+         "--dex-path " +
+         "obj/third_party/android_deps/org_checkerframework_checker_qual_java.dex.jar " +
+         "--supports-android " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/org_checkerframework_checker_qual_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:org_checkerframework_checker_qual_java__header
+genrule {
+    name: "cronet_aml_third_party_android_deps_org_checkerframework_checker_qual_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_deps/libs/org_checkerframework_checker_qual/checker-qual-3.25.0.jar " +
+         "obj/third_party/android_deps/org_checkerframework_checker_qual.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_deps/org_checkerframework_checker_qual.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_deps/libs/org_checkerframework_checker_qual/checker-qual-3.25.0.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:org_checkerframework_checker_qual_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_org_checkerframework_checker_qual_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/org_checkerframework_checker_qual/checker-qual-3.25.0.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/org_checkerframework_checker_qual.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/org_checkerframework_checker_qual.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/org_checkerframework_checker_qual/checker-qual-3.25.0.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:org_checkerframework_dataflow_errorprone_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_org_checkerframework_dataflow_errorprone_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/org_checkerframework_dataflow_errorprone_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:org_checkerframework_dataflow_errorprone_java " +
+         "--non-chromium-code " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/org_checkerframework_dataflow_errorprone.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/org_checkerframework_dataflow_errorprone/dataflow-errorprone-3.15.0.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/org_checkerframework_dataflow_errorprone.ijar.jar) " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/org_checkerframework_dataflow_errorprone_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:org_checkerframework_dataflow_errorprone_java__header
+genrule {
+    name: "cronet_aml_third_party_android_deps_org_checkerframework_dataflow_errorprone_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_deps/libs/org_checkerframework_dataflow_errorprone/dataflow-errorprone-3.15.0.jar " +
+         "obj/third_party/android_deps/org_checkerframework_dataflow_errorprone.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_deps/org_checkerframework_dataflow_errorprone.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_deps/libs/org_checkerframework_dataflow_errorprone/dataflow-errorprone-3.15.0.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:org_checkerframework_dataflow_errorprone_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_org_checkerframework_dataflow_errorprone_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/org_checkerframework_dataflow_errorprone/dataflow-errorprone-3.15.0.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/org_checkerframework_dataflow_errorprone.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/org_checkerframework_dataflow_errorprone.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/org_checkerframework_dataflow_errorprone/dataflow-errorprone-3.15.0.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:org_eclipse_jgit_org_eclipse_jgit_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_org_eclipse_jgit_org_eclipse_jgit_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/org_eclipse_jgit_org_eclipse_jgit_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:org_eclipse_jgit_org_eclipse_jgit_java " +
+         "--non-chromium-code " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/org_eclipse_jgit_org_eclipse_jgit.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/org_eclipse_jgit_org_eclipse_jgit/org.eclipse.jgit-4.4.1.201607150455-r.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/org_eclipse_jgit_org_eclipse_jgit.ijar.jar) " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/org_eclipse_jgit_org_eclipse_jgit_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:org_eclipse_jgit_org_eclipse_jgit_java__header
+genrule {
+    name: "cronet_aml_third_party_android_deps_org_eclipse_jgit_org_eclipse_jgit_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_deps/libs/org_eclipse_jgit_org_eclipse_jgit/org.eclipse.jgit-4.4.1.201607150455-r.jar " +
+         "obj/third_party/android_deps/org_eclipse_jgit_org_eclipse_jgit.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_deps/org_eclipse_jgit_org_eclipse_jgit.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_deps/libs/org_eclipse_jgit_org_eclipse_jgit/org.eclipse.jgit-4.4.1.201607150455-r.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:org_eclipse_jgit_org_eclipse_jgit_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_org_eclipse_jgit_org_eclipse_jgit_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/org_eclipse_jgit_org_eclipse_jgit/org.eclipse.jgit-4.4.1.201607150455-r.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/org_eclipse_jgit_org_eclipse_jgit.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/org_eclipse_jgit_org_eclipse_jgit.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/org_eclipse_jgit_org_eclipse_jgit/org.eclipse.jgit-4.4.1.201607150455-r.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:org_ow2_asm_asm_analysis_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_org_ow2_asm_asm_analysis_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[\"$(location third_party/android_deps/org_ow2_asm_asm_tree_java.build_config.json)\"] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/org_ow2_asm_asm_analysis_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:org_ow2_asm_asm_analysis_java " +
+         "--non-chromium-code " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/org_ow2_asm_asm_analysis.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/org_ow2_asm_asm_analysis/asm-analysis-9.2.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/org_ow2_asm_asm_analysis.ijar.jar) " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/org_ow2_asm_asm_analysis_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:org_ow2_asm_asm_analysis_java__header
+genrule {
+    name: "cronet_aml_third_party_android_deps_org_ow2_asm_asm_analysis_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_deps/libs/org_ow2_asm_asm_analysis/asm-analysis-9.2.jar " +
+         "obj/third_party/android_deps/org_ow2_asm_asm_analysis.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_deps/org_ow2_asm_asm_analysis.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_deps/libs/org_ow2_asm_asm_analysis/asm-analysis-9.2.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:org_ow2_asm_asm_analysis_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_org_ow2_asm_asm_analysis_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/org_ow2_asm_asm_analysis/asm-analysis-9.2.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/org_ow2_asm_asm_analysis.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/org_ow2_asm_asm_analysis.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/org_ow2_asm_asm_analysis/asm-analysis-9.2.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:org_ow2_asm_asm_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_org_ow2_asm_asm_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/org_ow2_asm_asm_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:org_ow2_asm_asm_java " +
+         "--non-chromium-code " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/org_ow2_asm_asm.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/org_ow2_asm_asm/asm-9.2.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/org_ow2_asm_asm.ijar.jar) " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/org_ow2_asm_asm_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:org_ow2_asm_asm_java__header
+genrule {
+    name: "cronet_aml_third_party_android_deps_org_ow2_asm_asm_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_deps/libs/org_ow2_asm_asm/asm-9.2.jar " +
+         "obj/third_party/android_deps/org_ow2_asm_asm.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_deps/org_ow2_asm_asm.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_deps/libs/org_ow2_asm_asm/asm-9.2.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:org_ow2_asm_asm_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_org_ow2_asm_asm_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/org_ow2_asm_asm/asm-9.2.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/org_ow2_asm_asm.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/org_ow2_asm_asm.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/org_ow2_asm_asm/asm-9.2.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:org_ow2_asm_asm_tree_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_org_ow2_asm_asm_tree_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[\"$(location third_party/android_deps/org_ow2_asm_asm_java.build_config.json)\"] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/org_ow2_asm_asm_tree_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:org_ow2_asm_asm_tree_java " +
+         "--non-chromium-code " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/org_ow2_asm_asm_tree.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/org_ow2_asm_asm_tree/asm-tree-9.2.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/org_ow2_asm_asm_tree.ijar.jar) " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/org_ow2_asm_asm_tree_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:org_ow2_asm_asm_tree_java__header
+genrule {
+    name: "cronet_aml_third_party_android_deps_org_ow2_asm_asm_tree_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_deps/libs/org_ow2_asm_asm_tree/asm-tree-9.2.jar " +
+         "obj/third_party/android_deps/org_ow2_asm_asm_tree.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_deps/org_ow2_asm_asm_tree.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_deps/libs/org_ow2_asm_asm_tree/asm-tree-9.2.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:org_ow2_asm_asm_tree_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_org_ow2_asm_asm_tree_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/org_ow2_asm_asm_tree/asm-tree-9.2.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/org_ow2_asm_asm_tree.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/org_ow2_asm_asm_tree.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/org_ow2_asm_asm_tree/asm-tree-9.2.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:org_ow2_asm_asm_util_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_org_ow2_asm_asm_util_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[\"$(location third_party/android_deps/org_ow2_asm_asm_analysis_java.build_config.json)\", \"$(location third_party/android_deps/org_ow2_asm_asm_java.build_config.json)\", \"$(location third_party/android_deps/org_ow2_asm_asm_tree_java.build_config.json)\"] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/org_ow2_asm_asm_util_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:org_ow2_asm_asm_util_java " +
+         "--non-chromium-code " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/org_ow2_asm_asm_util.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/org_ow2_asm_asm_util/asm-util-9.2.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/org_ow2_asm_asm_util.ijar.jar) " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/org_ow2_asm_asm_util_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:org_ow2_asm_asm_util_java__header
+genrule {
+    name: "cronet_aml_third_party_android_deps_org_ow2_asm_asm_util_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_deps/libs/org_ow2_asm_asm_util/asm-util-9.2.jar " +
+         "obj/third_party/android_deps/org_ow2_asm_asm_util.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_deps/org_ow2_asm_asm_util.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_deps/libs/org_ow2_asm_asm_util/asm-util-9.2.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:org_ow2_asm_asm_util_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_org_ow2_asm_asm_util_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/org_ow2_asm_asm_util/asm-util-9.2.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/org_ow2_asm_asm_util.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/org_ow2_asm_asm_util.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/org_ow2_asm_asm_util/asm-util-9.2.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:org_pcollections_pcollections_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_deps_org_pcollections_pcollections_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_deps/org_pcollections_pcollections_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_deps:org_pcollections_pcollections_java " +
+         "--non-chromium-code " +
+         "--host-jar-path " +
+         "$(location lib.java/third_party/android_deps/org_pcollections_pcollections.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_deps/libs/org_pcollections_pcollections/pcollections-3.1.4.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_deps/org_pcollections_pcollections.ijar.jar) " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_deps/org_pcollections_pcollections_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_deps:org_pcollections_pcollections_java__header
+genrule {
+    name: "cronet_aml_third_party_android_deps_org_pcollections_pcollections_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_deps/libs/org_pcollections_pcollections/pcollections-3.1.4.jar " +
+         "obj/third_party/android_deps/org_pcollections_pcollections.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_deps/org_pcollections_pcollections.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_deps/libs/org_pcollections_pcollections/pcollections-3.1.4.jar",
+    ],
+}
+
+// GN: //third_party/android_deps:org_pcollections_pcollections_java__host
+genrule {
+    name: "cronet_aml_third_party_android_deps_org_pcollections_pcollections_java__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "../../third_party/android_deps/libs/org_pcollections_pcollections/pcollections-3.1.4.jar " +
+         "--output " +
+         "lib.java/third_party/android_deps/org_pcollections_pcollections.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/third_party/android_deps/org_pcollections_pcollections.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "third_party/android_deps/libs/org_pcollections_pcollections/pcollections-3.1.4.jar",
+    ],
+}
+
 // GN: //third_party/android_ndk:cpu_features
 filegroup {
     name: "cronet_aml_third_party_android_ndk_cpu_features",
@@ -2508,6 +8602,83 @@
     ],
 }
 
+// GN: //third_party/android_sdk:android_sdk_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_third_party_android_sdk_android_sdk_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "system_java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/third_party/android_sdk/android_sdk_java.build_config.json " +
+         "--gn-target " +
+         "//third_party/android_sdk:android_sdk_java " +
+         "--non-chromium-code " +
+         "--unprocessed-jar-path " +
+         "$(location ../../third_party/android_sdk/public/platforms/android-33/android.jar) " +
+         "--interface-jar-path " +
+         "$(location third_party/android_sdk/android.ijar.jar) " +
+         "--supports-android " +
+         "--is-prebuilt " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "third_party/android_sdk/android_sdk_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //third_party/android_sdk:android_sdk_java__header
+genrule {
+    name: "cronet_aml_third_party_android_sdk_android_sdk_java__header",
+    cmd: "$(location build/android/gyp/ijar.py) clang_x64/ijar " +
+         "../../third_party/android_sdk/public/platforms/android-33/android.jar " +
+         "obj/third_party/android_sdk/android.ijar.jar",
+    out: [
+        "//out/test/obj/third_party/android_sdk/android.ijar.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/ijar.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/clang_x64/ijar",
+        "third_party/android_sdk/public/platforms/android-33/android.jar",
+    ],
+}
+
 // GN: //third_party/ashmem:ashmem
 filegroup {
     name: "cronet_aml_third_party_ashmem_ashmem",
@@ -2816,12 +8987,12 @@
     local_include_dirs: [
         "./",
         "buildtools/third_party/libc++/",
-        "out/test/gen/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
         "third_party/boringssl/src/include/",
+        "third_party/android_ndk/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include",
     ],
-    header_libs: [
-        "jni_headers",
-    ],
+    cpp_std: "c++20",
 }
 
 // GN: //third_party/boringssl:boringssl_asm
@@ -2834,6 +9005,98 @@
     name: "cronet_aml_third_party_boringssl_src_third_party_fiat_fiat_license",
 }
 
+// GN: //third_party/brotli:common
+cc_library_static {
+    name: "cronet_aml_third_party_brotli_common",
+    srcs: [
+        ":cronet_aml_third_party_brotli_headers",
+        "third_party/brotli/common/constants.c",
+        "third_party/brotli/common/context.c",
+        "third_party/brotli/common/dictionary.c",
+        "third_party/brotli/common/platform.c",
+        "third_party/brotli/common/shared_dictionary.c",
+        "third_party/brotli/common/transform.c",
+    ],
+    defaults: [
+        "cronet_aml_defaults",
+    ],
+    cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
+        "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
+        "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
+        "-DDCHECK_ALWAYS_ON=1",
+        "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
+        "-D_DEBUG",
+        "-D_GNU_SOURCE",
+        "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
+        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D_LIBCPP_ENABLE_ASSERTIONS_DEFAULT=1",
+        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D__STDC_CONSTANT_MACROS",
+        "-D__STDC_FORMAT_MACROS",
+    ],
+    local_include_dirs: [
+        "./",
+        "buildtools/third_party/libc++/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
+        "third_party/brotli/include/",
+        "third_party/android_ndk/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include",
+    ],
+    cpp_std: "c++20",
+}
+
+// GN: //third_party/brotli:dec
+cc_library_static {
+    name: "cronet_aml_third_party_brotli_dec",
+    srcs: [
+        ":cronet_aml_third_party_brotli_headers",
+        "third_party/brotli/dec/bit_reader.c",
+        "third_party/brotli/dec/decode.c",
+        "third_party/brotli/dec/huffman.c",
+        "third_party/brotli/dec/state.c",
+    ],
+    static_libs: [
+        "cronet_aml_third_party_brotli_common",
+    ],
+    defaults: [
+        "cronet_aml_defaults",
+    ],
+    cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
+        "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
+        "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
+        "-DDCHECK_ALWAYS_ON=1",
+        "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
+        "-D_DEBUG",
+        "-D_GNU_SOURCE",
+        "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
+        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D_LIBCPP_ENABLE_ASSERTIONS_DEFAULT=1",
+        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D__STDC_CONSTANT_MACROS",
+        "-D__STDC_FORMAT_MACROS",
+    ],
+    local_include_dirs: [
+        "./",
+        "buildtools/third_party/libc++/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
+        "third_party/brotli/include/",
+        "third_party/android_ndk/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include",
+    ],
+    cpp_std: "c++20",
+}
+
+// GN: //third_party/brotli:headers
+filegroup {
+    name: "cronet_aml_third_party_brotli_headers",
+}
+
 // GN: //third_party/icu:icui18n
 cc_library_static {
     name: "cronet_aml_third_party_icu_icui18n",
@@ -2873,13 +9136,13 @@
     local_include_dirs: [
         "./",
         "buildtools/third_party/libc++/",
-        "out/test/gen/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
         "third_party/icu/source/common/",
         "third_party/icu/source/i18n/",
+        "third_party/android_ndk/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include",
     ],
-    header_libs: [
-        "jni_headers",
-    ],
+    cpp_std: "c++20",
 }
 
 // GN: //third_party/icu:icuuc_private
@@ -2924,13 +9187,13 @@
     local_include_dirs: [
         "./",
         "buildtools/third_party/libc++/",
-        "out/test/gen/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
         "third_party/icu/source/common/",
         "third_party/icu/source/i18n/",
+        "third_party/android_ndk/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include",
     ],
-    header_libs: [
-        "jni_headers",
-    ],
+    cpp_std: "c++20",
 }
 
 // GN: //third_party/icu:icuuc_public
@@ -2938,6 +9201,66 @@
     name: "cronet_aml_third_party_icu_icuuc_public",
 }
 
+// GN: //third_party/ijar:ijar
+cc_binary {
+    name: "cronet_aml_third_party_ijar_ijar",
+    srcs: [
+        ":cronet_aml_buildtools_third_party_libc___libc__",
+        ":cronet_aml_buildtools_third_party_libc__abi_libc__abi",
+        "third_party/ijar/classfile.cc",
+        "third_party/ijar/ijar.cc",
+        "third_party/ijar/mapped_file_unix.cc",
+        "third_party/ijar/platform_utils.cc",
+        "third_party/ijar/zip.cc",
+        "third_party/ijar/zlib_client.cc",
+    ],
+    static_libs: [
+        "cronet_aml_third_party_zlib_zlib",
+    ],
+    defaults: [
+        "cronet_aml_defaults",
+    ],
+    cflags: [
+        "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
+        "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
+        "-DCR_SYSROOT_KEY=20220331T153654Z-0",
+        "-DDCHECK_ALWAYS_ON=1",
+        "-DDYNAMIC_ANNOTATIONS_ENABLED=0",
+        "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DLIBCXXABI_SILENT_TERMINATE",
+        "-DLIBCXX_BUILDING_LIBCXXABI",
+        "-DNDEBUG",
+        "-DNVALGRIND",
+        "-DUSE_AURA=1",
+        "-DUSE_OZONE=1",
+        "-DUSE_UDEV",
+        "-D_DEBUG",
+        "-D_FILE_OFFSET_BITS=64",
+        "-D_GNU_SOURCE",
+        "-D_LARGEFILE64_SOURCE",
+        "-D_LARGEFILE_SOURCE",
+        "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
+        "-D_LIBCPP_BUILDING_LIBRARY",
+        "-D_LIBCPP_CONSTINIT=constinit",
+        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D_LIBCPP_ENABLE_ASSERTIONS_DEFAULT=1",
+        "-D_LIBCPP_OVERRIDABLE_FUNC_VIS=__attribute__((__visibility__(\"default\")))",
+        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D__STDC_CONSTANT_MACROS",
+        "-D__STDC_FORMAT_MACROS",
+    ],
+    local_include_dirs: [
+        "./",
+        "buildtools/third_party/libc++/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++/trunk/src/",
+        "buildtools/third_party/libc++abi/trunk/include",
+        "third_party/zlib/",
+        "build/linux/debian_bullseye_amd64-sysroot/usr/include",
+    ],
+    cpp_std: "c++20",
+}
+
 // GN: //third_party/libevent:libevent
 cc_library_static {
     name: "cronet_aml_third_party_libevent_libevent",
@@ -2979,12 +9302,12 @@
     local_include_dirs: [
         "./",
         "buildtools/third_party/libc++/",
-        "out/test/gen/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
         "third_party/libevent/android/",
+        "third_party/android_ndk/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include",
     ],
-    header_libs: [
-        "jni_headers",
-    ],
+    cpp_std: "c++20",
 }
 
 // GN: //third_party/modp_b64:modp_b64
@@ -3016,10 +9339,1542 @@
     local_include_dirs: [
         "./",
         "buildtools/third_party/libc++/",
-        "out/test/gen/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
+        "third_party/android_ndk/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include",
+    ],
+    cpp_std: "c++20",
+}
+
+// GN: //third_party/protobuf:protobuf_full
+cc_library_static {
+    name: "cronet_aml_third_party_protobuf_protobuf_full",
+    srcs: [
+        "third_party/protobuf/src/google/protobuf/any.cc",
+        "third_party/protobuf/src/google/protobuf/any.pb.cc",
+        "third_party/protobuf/src/google/protobuf/any_lite.cc",
+        "third_party/protobuf/src/google/protobuf/api.pb.cc",
+        "third_party/protobuf/src/google/protobuf/arena.cc",
+        "third_party/protobuf/src/google/protobuf/arenastring.cc",
+        "third_party/protobuf/src/google/protobuf/arenaz_sampler.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/importer.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/parser.cc",
+        "third_party/protobuf/src/google/protobuf/descriptor.cc",
+        "third_party/protobuf/src/google/protobuf/descriptor.pb.cc",
+        "third_party/protobuf/src/google/protobuf/descriptor_database.cc",
+        "third_party/protobuf/src/google/protobuf/duration.pb.cc",
+        "third_party/protobuf/src/google/protobuf/dynamic_message.cc",
+        "third_party/protobuf/src/google/protobuf/empty.pb.cc",
+        "third_party/protobuf/src/google/protobuf/extension_set.cc",
+        "third_party/protobuf/src/google/protobuf/extension_set_heavy.cc",
+        "third_party/protobuf/src/google/protobuf/field_mask.pb.cc",
+        "third_party/protobuf/src/google/protobuf/generated_enum_util.cc",
+        "third_party/protobuf/src/google/protobuf/generated_message_bases.cc",
+        "third_party/protobuf/src/google/protobuf/generated_message_reflection.cc",
+        "third_party/protobuf/src/google/protobuf/generated_message_tctable_full.cc",
+        "third_party/protobuf/src/google/protobuf/generated_message_tctable_lite.cc",
+        "third_party/protobuf/src/google/protobuf/generated_message_util.cc",
+        "third_party/protobuf/src/google/protobuf/implicit_weak_message.cc",
+        "third_party/protobuf/src/google/protobuf/inlined_string_field.cc",
+        "third_party/protobuf/src/google/protobuf/io/coded_stream.cc",
+        "third_party/protobuf/src/google/protobuf/io/gzip_stream.cc",
+        "third_party/protobuf/src/google/protobuf/io/io_win32.cc",
+        "third_party/protobuf/src/google/protobuf/io/printer.cc",
+        "third_party/protobuf/src/google/protobuf/io/strtod.cc",
+        "third_party/protobuf/src/google/protobuf/io/tokenizer.cc",
+        "third_party/protobuf/src/google/protobuf/io/zero_copy_stream.cc",
+        "third_party/protobuf/src/google/protobuf/io/zero_copy_stream_impl.cc",
+        "third_party/protobuf/src/google/protobuf/io/zero_copy_stream_impl_lite.cc",
+        "third_party/protobuf/src/google/protobuf/map.cc",
+        "third_party/protobuf/src/google/protobuf/map_field.cc",
+        "third_party/protobuf/src/google/protobuf/message.cc",
+        "third_party/protobuf/src/google/protobuf/message_lite.cc",
+        "third_party/protobuf/src/google/protobuf/parse_context.cc",
+        "third_party/protobuf/src/google/protobuf/reflection_ops.cc",
+        "third_party/protobuf/src/google/protobuf/repeated_field.cc",
+        "third_party/protobuf/src/google/protobuf/repeated_ptr_field.cc",
+        "third_party/protobuf/src/google/protobuf/service.cc",
+        "third_party/protobuf/src/google/protobuf/source_context.pb.cc",
+        "third_party/protobuf/src/google/protobuf/struct.pb.cc",
+        "third_party/protobuf/src/google/protobuf/stubs/bytestream.cc",
+        "third_party/protobuf/src/google/protobuf/stubs/common.cc",
+        "third_party/protobuf/src/google/protobuf/stubs/int128.cc",
+        "third_party/protobuf/src/google/protobuf/stubs/status.cc",
+        "third_party/protobuf/src/google/protobuf/stubs/statusor.cc",
+        "third_party/protobuf/src/google/protobuf/stubs/stringpiece.cc",
+        "third_party/protobuf/src/google/protobuf/stubs/stringprintf.cc",
+        "third_party/protobuf/src/google/protobuf/stubs/structurally_valid.cc",
+        "third_party/protobuf/src/google/protobuf/stubs/strutil.cc",
+        "third_party/protobuf/src/google/protobuf/stubs/substitute.cc",
+        "third_party/protobuf/src/google/protobuf/stubs/time.cc",
+        "third_party/protobuf/src/google/protobuf/text_format.cc",
+        "third_party/protobuf/src/google/protobuf/timestamp.pb.cc",
+        "third_party/protobuf/src/google/protobuf/type.pb.cc",
+        "third_party/protobuf/src/google/protobuf/unknown_field_set.cc",
+        "third_party/protobuf/src/google/protobuf/util/delimited_message_util.cc",
+        "third_party/protobuf/src/google/protobuf/util/field_comparator.cc",
+        "third_party/protobuf/src/google/protobuf/util/field_mask_util.cc",
+        "third_party/protobuf/src/google/protobuf/util/internal/datapiece.cc",
+        "third_party/protobuf/src/google/protobuf/util/internal/default_value_objectwriter.cc",
+        "third_party/protobuf/src/google/protobuf/util/internal/error_listener.cc",
+        "third_party/protobuf/src/google/protobuf/util/internal/field_mask_utility.cc",
+        "third_party/protobuf/src/google/protobuf/util/internal/json_escaping.cc",
+        "third_party/protobuf/src/google/protobuf/util/internal/json_objectwriter.cc",
+        "third_party/protobuf/src/google/protobuf/util/internal/json_stream_parser.cc",
+        "third_party/protobuf/src/google/protobuf/util/internal/object_writer.cc",
+        "third_party/protobuf/src/google/protobuf/util/internal/proto_writer.cc",
+        "third_party/protobuf/src/google/protobuf/util/internal/protostream_objectsource.cc",
+        "third_party/protobuf/src/google/protobuf/util/internal/protostream_objectwriter.cc",
+        "third_party/protobuf/src/google/protobuf/util/internal/type_info.cc",
+        "third_party/protobuf/src/google/protobuf/util/internal/utility.cc",
+        "third_party/protobuf/src/google/protobuf/util/json_util.cc",
+        "third_party/protobuf/src/google/protobuf/util/message_differencer.cc",
+        "third_party/protobuf/src/google/protobuf/util/time_util.cc",
+        "third_party/protobuf/src/google/protobuf/util/type_resolver_util.cc",
+        "third_party/protobuf/src/google/protobuf/wire_format.cc",
+        "third_party/protobuf/src/google/protobuf/wire_format_lite.cc",
+        "third_party/protobuf/src/google/protobuf/wrappers.pb.cc",
+    ],
+    static_libs: [
+        "cronet_aml_third_party_zlib_zlib",
+    ],
+    defaults: [
+        "cronet_aml_defaults",
+    ],
+    cflags: [
+        "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
+        "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
+        "-DCR_SYSROOT_KEY=20220331T153654Z-0",
+        "-DDCHECK_ALWAYS_ON=1",
+        "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DGOOGLE_PROTOBUF_INTERNAL_DONATE_STEAL_INLINE=0",
+        "-DGOOGLE_PROTOBUF_NO_RTTI",
+        "-DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER",
+        "-DHAVE_PTHREAD",
+        "-DHAVE_ZLIB",
+        "-DUSE_AURA=1",
+        "-DUSE_OZONE=1",
+        "-DUSE_UDEV",
+        "-D_DEBUG",
+        "-D_FILE_OFFSET_BITS=64",
+        "-D_GNU_SOURCE",
+        "-D_LARGEFILE64_SOURCE",
+        "-D_LARGEFILE_SOURCE",
+        "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
+        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D_LIBCPP_ENABLE_ASSERTIONS_DEFAULT=1",
+        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
+    ],
+    local_include_dirs: [
+        "./",
+        "buildtools/third_party/libc++/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
+        "third_party/protobuf/src/",
+        "third_party/zlib/",
+        "build/linux/debian_bullseye_amd64-sysroot/usr/include",
+    ],
+    cpp_std: "c++20",
+}
+
+// GN: //third_party/protobuf:protobuf_lite
+cc_library_static {
+    name: "cronet_aml_third_party_protobuf_protobuf_lite",
+    srcs: [
+        "third_party/protobuf/src/google/protobuf/any_lite.cc",
+        "third_party/protobuf/src/google/protobuf/arena.cc",
+        "third_party/protobuf/src/google/protobuf/arenastring.cc",
+        "third_party/protobuf/src/google/protobuf/arenaz_sampler.cc",
+        "third_party/protobuf/src/google/protobuf/extension_set.cc",
+        "third_party/protobuf/src/google/protobuf/generated_enum_util.cc",
+        "third_party/protobuf/src/google/protobuf/generated_message_tctable_lite.cc",
+        "third_party/protobuf/src/google/protobuf/generated_message_util.cc",
+        "third_party/protobuf/src/google/protobuf/implicit_weak_message.cc",
+        "third_party/protobuf/src/google/protobuf/inlined_string_field.cc",
+        "third_party/protobuf/src/google/protobuf/io/coded_stream.cc",
+        "third_party/protobuf/src/google/protobuf/io/io_win32.cc",
+        "third_party/protobuf/src/google/protobuf/io/strtod.cc",
+        "third_party/protobuf/src/google/protobuf/io/zero_copy_stream.cc",
+        "third_party/protobuf/src/google/protobuf/io/zero_copy_stream_impl.cc",
+        "third_party/protobuf/src/google/protobuf/io/zero_copy_stream_impl_lite.cc",
+        "third_party/protobuf/src/google/protobuf/map.cc",
+        "third_party/protobuf/src/google/protobuf/message_lite.cc",
+        "third_party/protobuf/src/google/protobuf/parse_context.cc",
+        "third_party/protobuf/src/google/protobuf/repeated_field.cc",
+        "third_party/protobuf/src/google/protobuf/repeated_ptr_field.cc",
+        "third_party/protobuf/src/google/protobuf/stubs/bytestream.cc",
+        "third_party/protobuf/src/google/protobuf/stubs/common.cc",
+        "third_party/protobuf/src/google/protobuf/stubs/int128.cc",
+        "third_party/protobuf/src/google/protobuf/stubs/status.cc",
+        "third_party/protobuf/src/google/protobuf/stubs/statusor.cc",
+        "third_party/protobuf/src/google/protobuf/stubs/stringpiece.cc",
+        "third_party/protobuf/src/google/protobuf/stubs/stringprintf.cc",
+        "third_party/protobuf/src/google/protobuf/stubs/structurally_valid.cc",
+        "third_party/protobuf/src/google/protobuf/stubs/strutil.cc",
+        "third_party/protobuf/src/google/protobuf/stubs/time.cc",
+        "third_party/protobuf/src/google/protobuf/wire_format_lite.cc",
+    ],
+    shared_libs: [
+        "liblog",
+    ],
+    defaults: [
+        "cronet_aml_defaults",
+    ],
+    cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
+        "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
+        "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
+        "-DDCHECK_ALWAYS_ON=1",
+        "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DGOOGLE_PROTOBUF_INTERNAL_DONATE_STEAL_INLINE=0",
+        "-DGOOGLE_PROTOBUF_NO_RTTI",
+        "-DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER",
+        "-DHAVE_PTHREAD",
+        "-DHAVE_SYS_UIO_H",
+        "-D_DEBUG",
+        "-D_GNU_SOURCE",
+        "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
+        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D_LIBCPP_ENABLE_ASSERTIONS_DEFAULT=1",
+        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
+    ],
+    local_include_dirs: [
+        "./",
+        "buildtools/third_party/libc++/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
+        "third_party/protobuf/src/",
+        "third_party/android_ndk/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include",
+    ],
+    cpp_std: "c++20",
+}
+
+// GN: //third_party/protobuf:protoc
+cc_binary {
+    name: "cronet_aml_third_party_protobuf_protoc",
+    srcs: [
+        ":cronet_aml_buildtools_third_party_libc___libc__",
+        ":cronet_aml_buildtools_third_party_libc__abi_libc__abi",
+        "third_party/protobuf/src/google/protobuf/compiler/main.cc",
+    ],
+    static_libs: [
+        "cronet_aml_third_party_protobuf_protoc_lib",
+    ],
+    defaults: [
+        "cronet_aml_defaults",
+    ],
+    cflags: [
+        "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
+        "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
+        "-DCR_SYSROOT_KEY=20220331T153654Z-0",
+        "-DDCHECK_ALWAYS_ON=1",
+        "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DGOOGLE_PROTOBUF_INTERNAL_DONATE_STEAL_INLINE=0",
+        "-DGOOGLE_PROTOBUF_NO_RTTI",
+        "-DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER",
+        "-DHAVE_PTHREAD",
+        "-DLIBCXXABI_SILENT_TERMINATE",
+        "-DLIBCXX_BUILDING_LIBCXXABI",
+        "-DUSE_AURA=1",
+        "-DUSE_OZONE=1",
+        "-DUSE_UDEV",
+        "-D_DEBUG",
+        "-D_FILE_OFFSET_BITS=64",
+        "-D_GNU_SOURCE",
+        "-D_LARGEFILE64_SOURCE",
+        "-D_LARGEFILE_SOURCE",
+        "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
+        "-D_LIBCPP_BUILDING_LIBRARY",
+        "-D_LIBCPP_CONSTINIT=constinit",
+        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D_LIBCPP_ENABLE_ASSERTIONS_DEFAULT=1",
+        "-D_LIBCPP_OVERRIDABLE_FUNC_VIS=__attribute__((__visibility__(\"default\")))",
+        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
+    ],
+    local_include_dirs: [
+        "./",
+        "buildtools/third_party/libc++/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++/trunk/src/",
+        "buildtools/third_party/libc++abi/trunk/include",
+        "third_party/protobuf/src/",
+        "build/linux/debian_bullseye_amd64-sysroot/usr/include",
+    ],
+    cpp_std: "c++20",
+}
+
+// GN: //third_party/protobuf:protoc_lib
+cc_library_static {
+    name: "cronet_aml_third_party_protobuf_protoc_lib",
+    srcs: [
+        "third_party/protobuf/src/google/protobuf/compiler/code_generator.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/command_line_interface.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/cpp/cpp_enum.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/cpp/cpp_enum_field.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/cpp/cpp_extension.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/cpp/cpp_field.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/cpp/cpp_file.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/cpp/cpp_generator.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/cpp/cpp_helpers.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/cpp/cpp_map_field.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/cpp/cpp_message.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/cpp/cpp_message_field.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/cpp/cpp_padding_optimizer.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/cpp/cpp_parse_function_generator.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/cpp/cpp_primitive_field.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/cpp/cpp_service.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/cpp/cpp_string_field.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/csharp/csharp_doc_comment.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/csharp/csharp_enum.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/csharp/csharp_enum_field.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/csharp/csharp_field_base.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/csharp/csharp_generator.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/csharp/csharp_helpers.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/csharp/csharp_map_field.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/csharp/csharp_message.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/csharp/csharp_message_field.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/csharp/csharp_primitive_field.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/csharp/csharp_reflection_class.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/csharp/csharp_repeated_enum_field.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/csharp/csharp_repeated_message_field.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/csharp/csharp_repeated_primitive_field.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/csharp/csharp_source_generator_base.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/csharp/csharp_wrapper_field.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_context.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_doc_comment.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_enum.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_enum_field.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_enum_field_lite.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_enum_lite.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_extension.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_extension_lite.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_field.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_file.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_generator.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_generator_factory.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_helpers.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_kotlin_generator.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_map_field.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_map_field_lite.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_message.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_message_builder.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_message_builder_lite.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_message_field.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_message_field_lite.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_message_lite.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_name_resolver.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_primitive_field.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_primitive_field_lite.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_service.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_shared_code_generator.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_string_field.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/java/java_string_field_lite.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/js/js_generator.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/js/well_known_types_embed.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/objectivec/objectivec_enum.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/objectivec/objectivec_enum_field.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/objectivec/objectivec_extension.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/objectivec/objectivec_field.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/objectivec/objectivec_file.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/objectivec/objectivec_generator.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/objectivec/objectivec_helpers.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/objectivec/objectivec_map_field.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/objectivec/objectivec_message.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/objectivec/objectivec_message_field.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/objectivec/objectivec_oneof.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/objectivec/objectivec_primitive_field.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/php/php_generator.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/plugin.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/plugin.pb.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/python/python_generator.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/python/python_helpers.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/python/python_pyi_generator.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/ruby/ruby_generator.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/subprocess.cc",
+        "third_party/protobuf/src/google/protobuf/compiler/zip_writer.cc",
+    ],
+    static_libs: [
+        "cronet_aml_third_party_protobuf_protobuf_full",
+    ],
+    defaults: [
+        "cronet_aml_defaults",
+    ],
+    cflags: [
+        "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
+        "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
+        "-DCR_SYSROOT_KEY=20220331T153654Z-0",
+        "-DDCHECK_ALWAYS_ON=1",
+        "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DGOOGLE_PROTOBUF_INTERNAL_DONATE_STEAL_INLINE=0",
+        "-DGOOGLE_PROTOBUF_NO_RTTI",
+        "-DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER",
+        "-DHAVE_PTHREAD",
+        "-DUSE_AURA=1",
+        "-DUSE_OZONE=1",
+        "-DUSE_UDEV",
+        "-D_DEBUG",
+        "-D_FILE_OFFSET_BITS=64",
+        "-D_GNU_SOURCE",
+        "-D_LARGEFILE64_SOURCE",
+        "-D_LARGEFILE_SOURCE",
+        "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
+        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D_LIBCPP_ENABLE_ASSERTIONS_DEFAULT=1",
+        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
+    ],
+    local_include_dirs: [
+        "./",
+        "buildtools/third_party/libc++/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
+        "third_party/protobuf/src/",
+        "build/linux/debian_bullseye_amd64-sysroot/usr/include",
+    ],
+    cpp_std: "c++20",
+}
+
+// GN: //third_party/zlib:zlib
+cc_library_static {
+    name: "cronet_aml_third_party_zlib_zlib",
+    srcs: [
+        ":cronet_aml_third_party_zlib_zlib_adler32_simd",
+        ":cronet_aml_third_party_zlib_zlib_common_headers",
+        ":cronet_aml_third_party_zlib_zlib_crc32_simd",
+        ":cronet_aml_third_party_zlib_zlib_inflate_chunk_simd",
+        ":cronet_aml_third_party_zlib_zlib_slide_hash_simd",
+        "third_party/zlib/adler32.c",
+        "third_party/zlib/compress.c",
+        "third_party/zlib/cpu_features.c",
+        "third_party/zlib/crc32.c",
+        "third_party/zlib/deflate.c",
+        "third_party/zlib/gzclose.c",
+        "third_party/zlib/gzlib.c",
+        "third_party/zlib/gzread.c",
+        "third_party/zlib/gzwrite.c",
+        "third_party/zlib/infback.c",
+        "third_party/zlib/inffast.c",
+        "third_party/zlib/inftrees.c",
+        "third_party/zlib/trees.c",
+        "third_party/zlib/uncompr.c",
+        "third_party/zlib/zutil.c",
+    ],
+    defaults: [
+        "cronet_aml_defaults",
+    ],
+    cflags: [
+        "-DADLER32_SIMD_SSSE3",
+        "-DCRC32_SIMD_SSE42_PCLMUL",
+        "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
+        "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
+        "-DCR_SYSROOT_KEY=20220331T153654Z-0",
+        "-DDCHECK_ALWAYS_ON=1",
+        "-DDEFLATE_SLIDE_HASH_SSE2",
+        "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DINFLATE_CHUNK_READ_64LE",
+        "-DINFLATE_CHUNK_SIMD_SSE2",
+        "-DUSE_AURA=1",
+        "-DUSE_OZONE=1",
+        "-DUSE_UDEV",
+        "-DX86_NOT_WINDOWS",
+        "-DZLIB_DEBUG",
+        "-DZLIB_IMPLEMENTATION",
+        "-D_DEBUG",
+        "-D_FILE_OFFSET_BITS=64",
+        "-D_GNU_SOURCE",
+        "-D_LARGEFILE64_SOURCE",
+        "-D_LARGEFILE_SOURCE",
+        "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
+        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D_LIBCPP_ENABLE_ASSERTIONS_DEFAULT=1",
+        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D__STDC_CONSTANT_MACROS",
+        "-D__STDC_FORMAT_MACROS",
+    ],
+    local_include_dirs: [
+        "./",
+        "buildtools/third_party/libc++/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
+        "third_party/zlib/",
+        "build/linux/debian_bullseye_amd64-sysroot/usr/include",
+    ],
+    cpp_std: "c++20",
+}
+
+// GN: //third_party/zlib:zlib_adler32_simd
+filegroup {
+    name: "cronet_aml_third_party_zlib_zlib_adler32_simd",
+    srcs: [
+        "third_party/zlib/adler32_simd.c",
+    ],
+}
+
+// GN: //third_party/zlib:zlib_common_headers
+filegroup {
+    name: "cronet_aml_third_party_zlib_zlib_common_headers",
+}
+
+// GN: //third_party/zlib:zlib_crc32_simd
+filegroup {
+    name: "cronet_aml_third_party_zlib_zlib_crc32_simd",
+    srcs: [
+        "third_party/zlib/crc32_simd.c",
+        "third_party/zlib/crc_folding.c",
+    ],
+}
+
+// GN: //third_party/zlib:zlib_inflate_chunk_simd
+filegroup {
+    name: "cronet_aml_third_party_zlib_zlib_inflate_chunk_simd",
+    srcs: [
+        "third_party/zlib/contrib/optimizations/inffast_chunk.c",
+        "third_party/zlib/contrib/optimizations/inflate.c",
+    ],
+}
+
+// GN: //third_party/zlib:zlib_slide_hash_simd
+filegroup {
+    name: "cronet_aml_third_party_zlib_zlib_slide_hash_simd",
+}
+
+// GN: //tools/android/errorprone_plugin:errorprone_plugin__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_tools_android_errorprone_plugin_errorprone_plugin__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_binary " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[\"$(location third_party/android_deps/com_google_auto_service_auto_service_annotations_java.build_config.json)\", \"$(location third_party/android_deps/com_google_errorprone_error_prone_annotation_java.build_config.json)\", \"$(location third_party/android_deps/com_google_errorprone_error_prone_check_api_java.build_config.json)\", \"$(location third_party/android_deps/com_google_errorprone_error_prone_core_java.build_config.json)\", \"$(location third_party/android_deps/com_google_errorprone_javac_java.build_config.json)\"] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/tools/android/errorprone_plugin/errorprone_plugin.build_config.json " +
+         "--gn-target " +
+         "//tools/android/errorprone_plugin:errorprone_plugin " +
+         "--host-jar-path " +
+         "$(location lib.java/tools/android/errorprone_plugin/errorprone_plugin.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location tools/android/errorprone_plugin/errorprone_plugin.javac.jar) " +
+         "--interface-jar-path " +
+         "$(location tools/android/errorprone_plugin/errorprone_plugin.turbine.jar) " +
+         "--annotation-processor-configs " +
+         "[\"gen/third_party/android_deps/auto_service_processor.build_config.json\"] " +
+         "--java-sources-file " +
+         "gen/tools/android/errorprone_plugin/errorprone_plugin.sources " +
+         "--bundled-srcjars " +
+         "[] " +
+         "--main-class " +
+         "<ignore>",
+    out: [
+        "tools/android/errorprone_plugin/errorprone_plugin.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //tools/android/errorprone_plugin:errorprone_plugin__compile_java
+genrule {
+    name: "cronet_aml_tools_android_errorprone_plugin_errorprone_plugin__compile_java",
+    srcs: [
+        "tools/android/errorprone_plugin/src/org/chromium/tools/errorprone/plugin/AndroidNullableCheck.java",
+        "tools/android/errorprone_plugin/src/org/chromium/tools/errorprone/plugin/NoAndroidAsyncTaskCheck.java",
+        "tools/android/errorprone_plugin/src/org/chromium/tools/errorprone/plugin/NoDynamicStringsInTraceEventCheck.java",
+        "tools/android/errorprone_plugin/src/org/chromium/tools/errorprone/plugin/NoRedundantFieldInitCheck.java",
+        "tools/android/errorprone_plugin/src/org/chromium/tools/errorprone/plugin/NoSynchronizedMethodCheck.java",
+        "tools/android/errorprone_plugin/src/org/chromium/tools/errorprone/plugin/NoSynchronizedThisCheck.java",
+        "tools/android/errorprone_plugin/src/org/chromium/tools/errorprone/plugin/TestClassNameCheck.java",
+        "tools/android/errorprone_plugin/src/org/chromium/tools/errorprone/plugin/UseNetworkAnnotations.java",
+    ],
+    cmd: "$(location build/android/gyp/compile_java.py) --depfile " +
+         "gen/tools/android/errorprone_plugin/errorprone_plugin__compile_java.d " +
+         "--generated-dir " +
+         "gen/tools/android/errorprone_plugin/errorprone_plugin/generated_java " +
+         "--jar-path " +
+         "obj/tools/android/errorprone_plugin/errorprone_plugin.javac.jar " +
+         "--java-srcjars " +
+         "[\"gen/tools/android/errorprone_plugin/errorprone_plugin.generated.srcjar\"] " +
+         "--target-name " +
+         "//tools/android/errorprone_plugin:errorprone_plugin__compile_java " +
+         "--header-jar " +
+         "obj/tools/android/errorprone_plugin/errorprone_plugin.turbine.jar " +
+         "--classpath " +
+         "[\"obj/tools/android/errorprone_plugin/errorprone_plugin.turbine.jar\"] " +
+         "--classpath " +
+         "@FileArg(gen/tools/android/errorprone_plugin/errorprone_plugin.build_config.json:deps_info:javac_full_interface_classpath) " +
+         "--chromium-code " +
+         "1 " +
+         "@gen/tools/android/errorprone_plugin/errorprone_plugin.sources",
+    out: [
+        "//out/test/obj/tools/android/errorprone_plugin/errorprone_plugin.javac.jar",
+        "//out/test/obj/tools/android/errorprone_plugin/errorprone_plugin.javac.jar.info",
+    ],
+    tool_files: [
+        "build/android/gyp/compile_java.py",
+        "build/android/gyp/javac_output_processor.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/jar_info_utils.py",
+        "build/android/gyp/util/md5_check.py",
+        "build/android/gyp/util/server_utils.py",
+        "build/android/list_java_targets.py",
+        "build/android/pylib/__init__.py",
+        "build/android/pylib/constants/__init__.py",
+        "build/gn_helpers.py",
+        "build/print_python_deps.py",
+        "out/test/gen/tools/android/errorprone_plugin/errorprone_plugin.build_config.json",
+        "out/test/gen/tools/android/errorprone_plugin/errorprone_plugin.generated.srcjar",
+        "out/test/gen/tools/android/errorprone_plugin/errorprone_plugin.sources",
+        "out/test/obj/tools/android/errorprone_plugin/errorprone_plugin.turbine.jar",
+        "third_party/catapult/devil/devil/__init__.py",
+        "third_party/catapult/devil/devil/android/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/chrome.py",
+        "third_party/catapult/devil/devil/android/sdk/__init__.py",
+        "third_party/catapult/devil/devil/android/sdk/keyevent.py",
+        "third_party/catapult/devil/devil/android/sdk/version_codes.py",
+        "third_party/catapult/devil/devil/constants/__init__.py",
+        "third_party/catapult/devil/devil/constants/exit_codes.py",
+        "third_party/colorama/src/colorama/__init__.py",
+        "third_party/colorama/src/colorama/ansi.py",
+        "third_party/colorama/src/colorama/ansitowin32.py",
+        "third_party/colorama/src/colorama/initialise.py",
+        "third_party/colorama/src/colorama/win32.py",
+        "third_party/colorama/src/colorama/winterm.py",
+        "tools/android/modularization/convenience/lookup_dep.py",
+    ],
+}
+
+// GN: //tools/android/errorprone_plugin:errorprone_plugin__header
+genrule {
+    name: "cronet_aml_tools_android_errorprone_plugin_errorprone_plugin__header",
+    srcs: [
+        "tools/android/errorprone_plugin/src/org/chromium/tools/errorprone/plugin/AndroidNullableCheck.java",
+        "tools/android/errorprone_plugin/src/org/chromium/tools/errorprone/plugin/NoAndroidAsyncTaskCheck.java",
+        "tools/android/errorprone_plugin/src/org/chromium/tools/errorprone/plugin/NoDynamicStringsInTraceEventCheck.java",
+        "tools/android/errorprone_plugin/src/org/chromium/tools/errorprone/plugin/NoRedundantFieldInitCheck.java",
+        "tools/android/errorprone_plugin/src/org/chromium/tools/errorprone/plugin/NoSynchronizedMethodCheck.java",
+        "tools/android/errorprone_plugin/src/org/chromium/tools/errorprone/plugin/NoSynchronizedThisCheck.java",
+        "tools/android/errorprone_plugin/src/org/chromium/tools/errorprone/plugin/TestClassNameCheck.java",
+        "tools/android/errorprone_plugin/src/org/chromium/tools/errorprone/plugin/UseNetworkAnnotations.java",
+    ],
+    cmd: "$(location build/android/gyp/turbine.py) --depfile " +
+         "gen/tools/android/errorprone_plugin/errorprone_plugin__header.d " +
+         "--generated-dir " +
+         "gen/tools/android/errorprone_plugin/errorprone_plugin/generated_java " +
+         "--jar-path " +
+         "obj/tools/android/errorprone_plugin/errorprone_plugin.turbine.jar " +
+         "--java-srcjars " +
+         "[] " +
+         "--target-name " +
+         "//tools/android/errorprone_plugin:errorprone_plugin__header " +
+         "--classpath " +
+         "@FileArg(gen/tools/android/errorprone_plugin/errorprone_plugin.build_config.json:javac:interface_classpath) " +
+         "--processorpath " +
+         "@FileArg(gen/tools/android/errorprone_plugin/errorprone_plugin.build_config.json:javac:processor_classpath) " +
+         "--processors " +
+         "@FileArg(gen/tools/android/errorprone_plugin/errorprone_plugin.build_config.json:javac:processor_classes) " +
+         "--turbine-jar-path " +
+         "../../third_party/turbine/turbine.jar " +
+         "--generated-jar-path " +
+         "gen/tools/android/errorprone_plugin/errorprone_plugin.generated.srcjar " +
+         "--chromium-code " +
+         "1 " +
+         "@gen/tools/android/errorprone_plugin/errorprone_plugin.sources",
+    out: [
+        "//out/test/obj/tools/android/errorprone_plugin/errorprone_plugin.turbine.jar",
+        "tools/android/errorprone_plugin/errorprone_plugin.generated.srcjar",
+    ],
+    tool_files: [
+        "build/android/gyp/javac_output_processor.py",
+        "build/android/gyp/turbine.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/list_java_targets.py",
+        "build/android/pylib/__init__.py",
+        "build/android/pylib/constants/__init__.py",
+        "build/gn_helpers.py",
+        "out/test/gen/tools/android/errorprone_plugin/errorprone_plugin.build_config.json",
+        "out/test/gen/tools/android/errorprone_plugin/errorprone_plugin.sources",
+        "third_party/catapult/devil/devil/__init__.py",
+        "third_party/catapult/devil/devil/android/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/chrome.py",
+        "third_party/catapult/devil/devil/android/sdk/__init__.py",
+        "third_party/catapult/devil/devil/android/sdk/keyevent.py",
+        "third_party/catapult/devil/devil/android/sdk/version_codes.py",
+        "third_party/catapult/devil/devil/constants/__init__.py",
+        "third_party/catapult/devil/devil/constants/exit_codes.py",
+        "third_party/colorama/src/colorama/__init__.py",
+        "third_party/colorama/src/colorama/ansi.py",
+        "third_party/colorama/src/colorama/ansitowin32.py",
+        "third_party/colorama/src/colorama/initialise.py",
+        "third_party/colorama/src/colorama/win32.py",
+        "third_party/colorama/src/colorama/winterm.py",
+        "third_party/turbine/turbine.jar",
+        "tools/android/modularization/convenience/lookup_dep.py",
+    ],
+}
+
+// GN: //tools/android/errorprone_plugin:errorprone_plugin__host
+genrule {
+    name: "cronet_aml_tools_android_errorprone_plugin_errorprone_plugin__host",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "obj/tools/android/errorprone_plugin/errorprone_plugin.javac.jar " +
+         "--output " +
+         "lib.java/tools/android/errorprone_plugin/errorprone_plugin.jar " +
+         "--exclude-globs " +
+         "[] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/lib.java/tools/android/errorprone_plugin/errorprone_plugin.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/obj/tools/android/errorprone_plugin/errorprone_plugin.javac.jar",
+    ],
+}
+
+// GN: //tools/android/errorprone_plugin:errorprone_plugin__java_binary_script
+genrule {
+    name: "cronet_aml_tools_android_errorprone_plugin_errorprone_plugin__java_binary_script",
+    cmd: "$(location build/android/gyp/create_java_binary_script.py) --output " +
+         "bin/bin/helper/errorprone_plugin " +
+         "--main-class " +
+         "<ignore> " +
+         "--classpath " +
+         "@FileArg(gen/tools/android/errorprone_plugin/errorprone_plugin.build_config.json:deps_info:host_classpath) " +
+         "--noverify",
+    out: [
+        "//out/test/bin/bin/helper/errorprone_plugin",
+    ],
+    tool_files: [
+        "build/android/gyp/create_java_binary_script.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/gen/tools/android/errorprone_plugin/errorprone_plugin.build_config.json",
+    ],
+}
+
+// GN: //tools/grit:grit_sources
+genrule {
+    name: "cronet_aml_tools_grit_grit_sources",
+    cmd: "python $(location tools/grit/stamp_grit_sources.py) `dirname $(location tools/grit/grit.py)` " +
+         "$(out) " +
+         "$(genDir)/grit_sources.d",
+    out: [
+        "out/test/obj/tools/grit/grit_sources.script.stamp",
+    ],
+    tool_files: [
+        "tools/grit/grit.py",
+        "tools/grit/stamp_grit_sources.py",
+    ],
+}
+
+// GN: //tools/gritsettings:default_resource_ids
+genrule {
+    name: "cronet_aml_tools_gritsettings_default_resource_ids",
+    cmd: "$(location tools/grit/grit.py) update_resource_ids " +
+         "-o " +
+         "gen/tools/gritsettings/default_resource_ids " +
+         "--add-header " +
+         "--depfile " +
+         "gen/tools/gritsettings/default_resource_ids.d " +
+         "--input " +
+         "../../tools/gritsettings/resource_ids.spec",
+    out: [
+        "tools/gritsettings/default_resource_ids",
+    ],
+    tool_files: [
+        "tools/grit/grit.py",
+        "tools/gritsettings/resource_ids.spec",
+    ],
+}
+
+// GN: //url:buildflags
+genrule {
+    name: "cronet_aml_url_buildflags",
+    cmd: "echo '--flags USE_PLATFORM_ICU_ALTERNATIVES=\"true\"' | " +
+         "$(location build/write_buildflag_header.py) --output " +
+         "$(out) " +
+         "--rulename " +
+         "//url:buildflags " +
+         "--gen-dir " +
+         ". " +
+         "--definitions " +
+         "/dev/stdin",
+    out: [
+        "url/buildflags.h",
+    ],
+    tool_files: [
+        "build/write_buildflag_header.py",
+    ],
+}
+
+// GN: //url:url
+cc_library_static {
+    name: "cronet_aml_url_url",
+    srcs: [
+        ":cronet_aml_ipc_param_traits",
+        "url/gurl.cc",
+        "url/origin.cc",
+        "url/scheme_host_port.cc",
+        "url/third_party/mozilla/url_parse.cc",
+        "url/url_canon.cc",
+        "url/url_canon_etc.cc",
+        "url/url_canon_filesystemurl.cc",
+        "url/url_canon_fileurl.cc",
+        "url/url_canon_host.cc",
+        "url/url_canon_internal.cc",
+        "url/url_canon_ip.cc",
+        "url/url_canon_mailtourl.cc",
+        "url/url_canon_path.cc",
+        "url/url_canon_pathurl.cc",
+        "url/url_canon_query.cc",
+        "url/url_canon_relative.cc",
+        "url/url_canon_stdstring.cc",
+        "url/url_canon_stdurl.cc",
+        "url/url_constants.cc",
+        "url/url_idna_icu_alternatives_android.cc",
+        "url/url_parse_file.cc",
+        "url/url_util.cc",
+    ],
+    shared_libs: [
+        "libandroid",
+        "liblog",
+    ],
+    static_libs: [
+        "cronet_aml_base_base",
+        "cronet_aml_base_third_party_dynamic_annotations_dynamic_annotations",
+    ],
+    generated_headers: [
+        "cronet_aml_base_debugging_buildflags",
+        "cronet_aml_base_jni_java__build_config_crbug_908819",
+        "cronet_aml_base_jni_java__compile_java",
+        "cronet_aml_base_jni_java__errorprone",
+        "cronet_aml_base_jni_java__header",
+        "cronet_aml_base_jni_java__host",
+        "cronet_aml_base_jni_java__validate",
+        "cronet_aml_base_logging_buildflags",
+        "cronet_aml_build_android_build_config_gen",
+        "cronet_aml_build_android_build_java__build_config_crbug_908819",
+        "cronet_aml_build_android_build_java__compile_java",
+        "cronet_aml_build_android_build_java__errorprone",
+        "cronet_aml_build_android_build_java__header",
+        "cronet_aml_build_android_build_java__host",
+        "cronet_aml_build_android_build_java__process_device",
+        "cronet_aml_build_android_build_java__validate",
+        "cronet_aml_build_android_bytecode_bytecode_processor__build_config_crbug_908819",
+        "cronet_aml_build_android_bytecode_bytecode_processor__java_binary_script",
+        "cronet_aml_build_android_bytecode_bytecode_processor_java__build_config_crbug_908819",
+        "cronet_aml_build_android_bytecode_bytecode_processor_java__compile_java",
+        "cronet_aml_build_android_bytecode_bytecode_processor_java__errorprone",
+        "cronet_aml_build_android_bytecode_bytecode_processor_java__header",
+        "cronet_aml_build_android_bytecode_bytecode_processor_java__host",
+        "cronet_aml_build_android_native_libraries_gen",
+        "cronet_aml_build_chromeos_buildflags",
+        "cronet_aml_third_party_android_deps_auto_service_processor__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_github_ben_manes_caffeine_caffeine_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_github_ben_manes_caffeine_caffeine_java__header",
+        "cronet_aml_third_party_android_deps_com_github_ben_manes_caffeine_caffeine_java__host",
+        "cronet_aml_third_party_android_deps_com_github_kevinstern_software_and_algorithms_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_github_kevinstern_software_and_algorithms_java__header",
+        "cronet_aml_third_party_android_deps_com_github_kevinstern_software_and_algorithms_java__host",
+        "cronet_aml_third_party_android_deps_com_google_auto_auto_common_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_auto_auto_common_java__header",
+        "cronet_aml_third_party_android_deps_com_google_auto_auto_common_java__host",
+        "cronet_aml_third_party_android_deps_com_google_auto_service_auto_service_annotations_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_auto_service_auto_service_annotations_java__header",
+        "cronet_aml_third_party_android_deps_com_google_auto_service_auto_service_annotations_java__host",
+        "cronet_aml_third_party_android_deps_com_google_auto_service_auto_service_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_auto_service_auto_service_java__host",
+        "cronet_aml_third_party_android_deps_com_google_auto_value_auto_value_annotations_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_auto_value_auto_value_annotations_java__header",
+        "cronet_aml_third_party_android_deps_com_google_auto_value_auto_value_annotations_java__host",
+        "cronet_aml_third_party_android_deps_com_google_code_findbugs_jsr305_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_code_findbugs_jsr305_java__header",
+        "cronet_aml_third_party_android_deps_com_google_code_findbugs_jsr305_java__host",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_annotation_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_annotation_java__header",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_annotation_java__host",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_annotations_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_annotations_java__header",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_annotations_java__host",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_check_api_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_check_api_java__header",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_check_api_java__host",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_core_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_core_java__header",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_core_java__host",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_type_annotations_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_type_annotations_java__header",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_type_annotations_java__host",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_javac_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_javac_java__header",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_javac_java__host",
+        "cronet_aml_third_party_android_deps_com_google_guava_failureaccess_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_guava_failureaccess_java__header",
+        "cronet_aml_third_party_android_deps_com_google_guava_failureaccess_java__host",
+        "cronet_aml_third_party_android_deps_com_google_guava_guava_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_guava_guava_java__header",
+        "cronet_aml_third_party_android_deps_com_google_guava_guava_java__host",
+        "cronet_aml_third_party_android_deps_com_google_guava_listenablefuture_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_guava_listenablefuture_java__header",
+        "cronet_aml_third_party_android_deps_com_google_guava_listenablefuture_java__host",
+        "cronet_aml_third_party_android_deps_com_google_j2objc_j2objc_annotations_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_j2objc_j2objc_annotations_java__header",
+        "cronet_aml_third_party_android_deps_com_google_j2objc_j2objc_annotations_java__host",
+        "cronet_aml_third_party_android_deps_com_google_protobuf_protobuf_java_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_protobuf_protobuf_java_java__header",
+        "cronet_aml_third_party_android_deps_com_google_protobuf_protobuf_java_java__host",
+        "cronet_aml_third_party_android_deps_io_github_java_diff_utils_java_diff_utils_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_io_github_java_diff_utils_java_diff_utils_java__header",
+        "cronet_aml_third_party_android_deps_io_github_java_diff_utils_java_diff_utils_java__host",
+        "cronet_aml_third_party_android_deps_org_checkerframework_checker_qual_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_org_checkerframework_checker_qual_java__header",
+        "cronet_aml_third_party_android_deps_org_checkerframework_checker_qual_java__host",
+        "cronet_aml_third_party_android_deps_org_checkerframework_dataflow_errorprone_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_org_checkerframework_dataflow_errorprone_java__header",
+        "cronet_aml_third_party_android_deps_org_checkerframework_dataflow_errorprone_java__host",
+        "cronet_aml_third_party_android_deps_org_eclipse_jgit_org_eclipse_jgit_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_org_eclipse_jgit_org_eclipse_jgit_java__header",
+        "cronet_aml_third_party_android_deps_org_eclipse_jgit_org_eclipse_jgit_java__host",
+        "cronet_aml_third_party_android_deps_org_ow2_asm_asm_analysis_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_org_ow2_asm_asm_analysis_java__header",
+        "cronet_aml_third_party_android_deps_org_ow2_asm_asm_analysis_java__host",
+        "cronet_aml_third_party_android_deps_org_ow2_asm_asm_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_org_ow2_asm_asm_java__header",
+        "cronet_aml_third_party_android_deps_org_ow2_asm_asm_java__host",
+        "cronet_aml_third_party_android_deps_org_ow2_asm_asm_tree_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_org_ow2_asm_asm_tree_java__header",
+        "cronet_aml_third_party_android_deps_org_ow2_asm_asm_tree_java__host",
+        "cronet_aml_third_party_android_deps_org_ow2_asm_asm_util_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_org_ow2_asm_asm_util_java__header",
+        "cronet_aml_third_party_android_deps_org_ow2_asm_asm_util_java__host",
+        "cronet_aml_third_party_android_deps_org_pcollections_pcollections_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_org_pcollections_pcollections_java__header",
+        "cronet_aml_third_party_android_deps_org_pcollections_pcollections_java__host",
+        "cronet_aml_third_party_android_sdk_android_sdk_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_sdk_android_sdk_java__header",
+        "cronet_aml_tools_android_errorprone_plugin_errorprone_plugin__build_config_crbug_908819",
+        "cronet_aml_tools_android_errorprone_plugin_errorprone_plugin__compile_java",
+        "cronet_aml_tools_android_errorprone_plugin_errorprone_plugin__header",
+        "cronet_aml_tools_android_errorprone_plugin_errorprone_plugin__host",
+        "cronet_aml_tools_android_errorprone_plugin_errorprone_plugin__java_binary_script",
+        "cronet_aml_url_buildflags",
+        "cronet_aml_url_url_java__build_config_crbug_908819",
+        "cronet_aml_url_url_java__compile_java",
+        "cronet_aml_url_url_java__errorprone",
+        "cronet_aml_url_url_java__header",
+        "cronet_aml_url_url_java__process_device",
+        "cronet_aml_url_url_jni_headers",
+    ],
+    export_generated_headers: [
+        "cronet_aml_base_debugging_buildflags",
+        "cronet_aml_base_jni_java__build_config_crbug_908819",
+        "cronet_aml_base_jni_java__compile_java",
+        "cronet_aml_base_jni_java__errorprone",
+        "cronet_aml_base_jni_java__header",
+        "cronet_aml_base_jni_java__host",
+        "cronet_aml_base_jni_java__validate",
+        "cronet_aml_base_logging_buildflags",
+        "cronet_aml_build_android_build_config_gen",
+        "cronet_aml_build_android_build_java__build_config_crbug_908819",
+        "cronet_aml_build_android_build_java__compile_java",
+        "cronet_aml_build_android_build_java__errorprone",
+        "cronet_aml_build_android_build_java__header",
+        "cronet_aml_build_android_build_java__host",
+        "cronet_aml_build_android_build_java__process_device",
+        "cronet_aml_build_android_build_java__validate",
+        "cronet_aml_build_android_bytecode_bytecode_processor__build_config_crbug_908819",
+        "cronet_aml_build_android_bytecode_bytecode_processor__java_binary_script",
+        "cronet_aml_build_android_bytecode_bytecode_processor_java__build_config_crbug_908819",
+        "cronet_aml_build_android_bytecode_bytecode_processor_java__compile_java",
+        "cronet_aml_build_android_bytecode_bytecode_processor_java__errorprone",
+        "cronet_aml_build_android_bytecode_bytecode_processor_java__header",
+        "cronet_aml_build_android_bytecode_bytecode_processor_java__host",
+        "cronet_aml_build_android_native_libraries_gen",
+        "cronet_aml_build_chromeos_buildflags",
+        "cronet_aml_third_party_android_deps_auto_service_processor__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_github_ben_manes_caffeine_caffeine_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_github_ben_manes_caffeine_caffeine_java__header",
+        "cronet_aml_third_party_android_deps_com_github_ben_manes_caffeine_caffeine_java__host",
+        "cronet_aml_third_party_android_deps_com_github_kevinstern_software_and_algorithms_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_github_kevinstern_software_and_algorithms_java__header",
+        "cronet_aml_third_party_android_deps_com_github_kevinstern_software_and_algorithms_java__host",
+        "cronet_aml_third_party_android_deps_com_google_auto_auto_common_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_auto_auto_common_java__header",
+        "cronet_aml_third_party_android_deps_com_google_auto_auto_common_java__host",
+        "cronet_aml_third_party_android_deps_com_google_auto_service_auto_service_annotations_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_auto_service_auto_service_annotations_java__header",
+        "cronet_aml_third_party_android_deps_com_google_auto_service_auto_service_annotations_java__host",
+        "cronet_aml_third_party_android_deps_com_google_auto_service_auto_service_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_auto_service_auto_service_java__host",
+        "cronet_aml_third_party_android_deps_com_google_auto_value_auto_value_annotations_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_auto_value_auto_value_annotations_java__header",
+        "cronet_aml_third_party_android_deps_com_google_auto_value_auto_value_annotations_java__host",
+        "cronet_aml_third_party_android_deps_com_google_code_findbugs_jsr305_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_code_findbugs_jsr305_java__header",
+        "cronet_aml_third_party_android_deps_com_google_code_findbugs_jsr305_java__host",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_annotation_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_annotation_java__header",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_annotation_java__host",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_annotations_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_annotations_java__header",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_annotations_java__host",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_check_api_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_check_api_java__header",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_check_api_java__host",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_core_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_core_java__header",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_core_java__host",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_type_annotations_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_type_annotations_java__header",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_error_prone_type_annotations_java__host",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_javac_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_javac_java__header",
+        "cronet_aml_third_party_android_deps_com_google_errorprone_javac_java__host",
+        "cronet_aml_third_party_android_deps_com_google_guava_failureaccess_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_guava_failureaccess_java__header",
+        "cronet_aml_third_party_android_deps_com_google_guava_failureaccess_java__host",
+        "cronet_aml_third_party_android_deps_com_google_guava_guava_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_guava_guava_java__header",
+        "cronet_aml_third_party_android_deps_com_google_guava_guava_java__host",
+        "cronet_aml_third_party_android_deps_com_google_guava_listenablefuture_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_guava_listenablefuture_java__header",
+        "cronet_aml_third_party_android_deps_com_google_guava_listenablefuture_java__host",
+        "cronet_aml_third_party_android_deps_com_google_j2objc_j2objc_annotations_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_j2objc_j2objc_annotations_java__header",
+        "cronet_aml_third_party_android_deps_com_google_j2objc_j2objc_annotations_java__host",
+        "cronet_aml_third_party_android_deps_com_google_protobuf_protobuf_java_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_com_google_protobuf_protobuf_java_java__header",
+        "cronet_aml_third_party_android_deps_com_google_protobuf_protobuf_java_java__host",
+        "cronet_aml_third_party_android_deps_io_github_java_diff_utils_java_diff_utils_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_io_github_java_diff_utils_java_diff_utils_java__header",
+        "cronet_aml_third_party_android_deps_io_github_java_diff_utils_java_diff_utils_java__host",
+        "cronet_aml_third_party_android_deps_org_checkerframework_checker_qual_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_org_checkerframework_checker_qual_java__header",
+        "cronet_aml_third_party_android_deps_org_checkerframework_checker_qual_java__host",
+        "cronet_aml_third_party_android_deps_org_checkerframework_dataflow_errorprone_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_org_checkerframework_dataflow_errorprone_java__header",
+        "cronet_aml_third_party_android_deps_org_checkerframework_dataflow_errorprone_java__host",
+        "cronet_aml_third_party_android_deps_org_eclipse_jgit_org_eclipse_jgit_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_org_eclipse_jgit_org_eclipse_jgit_java__header",
+        "cronet_aml_third_party_android_deps_org_eclipse_jgit_org_eclipse_jgit_java__host",
+        "cronet_aml_third_party_android_deps_org_ow2_asm_asm_analysis_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_org_ow2_asm_asm_analysis_java__header",
+        "cronet_aml_third_party_android_deps_org_ow2_asm_asm_analysis_java__host",
+        "cronet_aml_third_party_android_deps_org_ow2_asm_asm_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_org_ow2_asm_asm_java__header",
+        "cronet_aml_third_party_android_deps_org_ow2_asm_asm_java__host",
+        "cronet_aml_third_party_android_deps_org_ow2_asm_asm_tree_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_org_ow2_asm_asm_tree_java__header",
+        "cronet_aml_third_party_android_deps_org_ow2_asm_asm_tree_java__host",
+        "cronet_aml_third_party_android_deps_org_ow2_asm_asm_util_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_org_ow2_asm_asm_util_java__header",
+        "cronet_aml_third_party_android_deps_org_ow2_asm_asm_util_java__host",
+        "cronet_aml_third_party_android_deps_org_pcollections_pcollections_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_deps_org_pcollections_pcollections_java__header",
+        "cronet_aml_third_party_android_deps_org_pcollections_pcollections_java__host",
+        "cronet_aml_third_party_android_sdk_android_sdk_java__build_config_crbug_908819",
+        "cronet_aml_third_party_android_sdk_android_sdk_java__header",
+        "cronet_aml_tools_android_errorprone_plugin_errorprone_plugin__build_config_crbug_908819",
+        "cronet_aml_tools_android_errorprone_plugin_errorprone_plugin__compile_java",
+        "cronet_aml_tools_android_errorprone_plugin_errorprone_plugin__header",
+        "cronet_aml_tools_android_errorprone_plugin_errorprone_plugin__host",
+        "cronet_aml_tools_android_errorprone_plugin_errorprone_plugin__java_binary_script",
+        "cronet_aml_url_buildflags",
+        "cronet_aml_url_url_java__build_config_crbug_908819",
+        "cronet_aml_url_url_java__compile_java",
+        "cronet_aml_url_url_java__errorprone",
+        "cronet_aml_url_url_java__header",
+        "cronet_aml_url_url_java__process_device",
+        "cronet_aml_url_url_jni_headers",
+    ],
+    defaults: [
+        "cronet_aml_defaults",
+    ],
+    cflags: [
+        "-DANDROID",
+        "-DANDROID_NDK_VERSION_ROLL=r23_1",
+        "-DCR_CLANG_REVISION=\"llvmorg-16-init-8697-g60809cd2-1\"",
+        "-DCR_LIBCXX_REVISION=47b31179d10646029c260702650a25d24f555acc",
+        "-DDCHECK_ALWAYS_ON=1",
+        "-DDYNAMIC_ANNOTATIONS_ENABLED=1",
+        "-DHAVE_SYS_UIO_H",
+        "-DIS_URL_IMPL",
+        "-D_DEBUG",
+        "-D_GNU_SOURCE",
+        "-D_LIBCPP_AVAILABILITY_CUSTOM_VERBOSE_ABORT_PROVIDED=1",
+        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D_LIBCPP_ENABLE_ASSERTIONS_DEFAULT=1",
+        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
+        "-D__STDC_CONSTANT_MACROS",
+        "-D__STDC_FORMAT_MACROS",
+    ],
+    local_include_dirs: [
+        "./",
+        "buildtools/third_party/libc++/",
+        "buildtools/third_party/libc++/trunk/include",
+        "buildtools/third_party/libc++abi/trunk/include",
+        "third_party/abseil-cpp/",
+        "third_party/boringssl/src/include/",
+        "third_party/android_ndk/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include",
     ],
     header_libs: [
         "jni_headers",
     ],
+    cpp_std: "c++20",
+}
+
+// GN: //url:url_java__build_config_crbug_908819
+genrule {
+    name: "cronet_aml_url_url_java__build_config_crbug_908819",
+    cmd: "$(location build/android/gyp/write_build_config.py) --type " +
+         "java_library " +
+         " " +
+         " " +
+         "--deps-configs " +
+         "[\"$(location base/jni_java.build_config.json)\", \"$(location third_party/android_sdk/android_sdk_java.build_config.json)\"] " +
+         "--public-deps-configs " +
+         "[] " +
+         "--build-config " +
+         "$(genDir)/url/url_java.build_config.json " +
+         "--gn-target " +
+         "//url:url_java " +
+         "--device-jar-path " +
+         "$(location url/url_java.processed.jar) " +
+         "--host-jar-path " +
+         "$(location lib.java/url/url_java.jar) " +
+         "--unprocessed-jar-path " +
+         "$(location url/url_java.javac.jar) " +
+         "--interface-jar-path " +
+         "$(location url/url_java.turbine.jar) " +
+         "--dex-path " +
+         "obj/url/url_java.dex.jar " +
+         "--supports-android " +
+         "--requires-android " +
+         "--java-sources-file " +
+         "gen/url/url_java.sources " +
+         "--bundled-srcjars " +
+         "[]",
+    out: [
+        "url/url_java.build_config.json",
+    ],
+    tool_files: [
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/resource_utils.py",
+        "build/android/gyp/write_build_config.py",
+        "build/gn_helpers.py",
+        "third_party/jinja2/__init__.py",
+        "third_party/jinja2/_compat.py",
+        "third_party/jinja2/_identifier.py",
+        "third_party/jinja2/bccache.py",
+        "third_party/jinja2/compiler.py",
+        "third_party/jinja2/defaults.py",
+        "third_party/jinja2/environment.py",
+        "third_party/jinja2/exceptions.py",
+        "third_party/jinja2/filters.py",
+        "third_party/jinja2/idtracking.py",
+        "third_party/jinja2/lexer.py",
+        "third_party/jinja2/loaders.py",
+        "third_party/jinja2/nodes.py",
+        "third_party/jinja2/optimizer.py",
+        "third_party/jinja2/parser.py",
+        "third_party/jinja2/runtime.py",
+        "third_party/jinja2/tests.py",
+        "third_party/jinja2/utils.py",
+        "third_party/jinja2/visitor.py",
+        "third_party/markupsafe/__init__.py",
+        "third_party/markupsafe/_compat.py",
+        "third_party/markupsafe/_native.py",
+    ],
+}
+
+// GN: //url:url_java__compile_java
+genrule {
+    name: "cronet_aml_url_url_java__compile_java",
+    srcs: [
+        "url/android/java/src/org/chromium/url/IDNStringUtil.java",
+    ],
+    cmd: "$(location build/android/gyp/compile_java.py) --depfile " +
+         "gen/url/url_java__compile_java.d " +
+         "--generated-dir " +
+         "gen/url/url_java/generated_java " +
+         "--jar-path " +
+         "obj/url/url_java.javac.jar " +
+         "--java-srcjars " +
+         "[\"gen/url/url_java.generated.srcjar\"] " +
+         "--target-name " +
+         "//url:url_java__compile_java " +
+         "--classpath " +
+         "@FileArg(gen/url/url_java.build_config.json:android:sdk_interface_jars) " +
+         "--header-jar " +
+         "obj/url/url_java.turbine.jar " +
+         "--classpath " +
+         "[\"obj/url/url_java.turbine.jar\"] " +
+         "--classpath " +
+         "@FileArg(gen/url/url_java.build_config.json:deps_info:javac_full_interface_classpath) " +
+         "--chromium-code " +
+         "1 " +
+         "--jar-info-exclude-globs " +
+         "[\"*/R.class\", \"*/R\\$*.class\", \"*/Manifest.class\", \"*/Manifest\\$*.class\", \"*/GEN_JNI.class\"] " +
+         "@gen/url/url_java.sources",
+    out: [
+        "//out/test/obj/url/url_java.javac.jar",
+        "//out/test/obj/url/url_java.javac.jar.info",
+    ],
+    tool_files: [
+        "build/android/gyp/compile_java.py",
+        "build/android/gyp/javac_output_processor.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/jar_info_utils.py",
+        "build/android/gyp/util/md5_check.py",
+        "build/android/gyp/util/server_utils.py",
+        "build/android/list_java_targets.py",
+        "build/android/pylib/__init__.py",
+        "build/android/pylib/constants/__init__.py",
+        "build/gn_helpers.py",
+        "build/print_python_deps.py",
+        "out/test/gen/url/url_java.build_config.json",
+        "out/test/gen/url/url_java.generated.srcjar",
+        "out/test/gen/url/url_java.sources",
+        "out/test/obj/url/url_java.turbine.jar",
+        "third_party/catapult/devil/devil/__init__.py",
+        "third_party/catapult/devil/devil/android/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/chrome.py",
+        "third_party/catapult/devil/devil/android/sdk/__init__.py",
+        "third_party/catapult/devil/devil/android/sdk/keyevent.py",
+        "third_party/catapult/devil/devil/android/sdk/version_codes.py",
+        "third_party/catapult/devil/devil/constants/__init__.py",
+        "third_party/catapult/devil/devil/constants/exit_codes.py",
+        "third_party/colorama/src/colorama/__init__.py",
+        "third_party/colorama/src/colorama/ansi.py",
+        "third_party/colorama/src/colorama/ansitowin32.py",
+        "third_party/colorama/src/colorama/initialise.py",
+        "third_party/colorama/src/colorama/win32.py",
+        "third_party/colorama/src/colorama/winterm.py",
+        "tools/android/modularization/convenience/lookup_dep.py",
+    ],
+}
+
+// GN: //url:url_java__dex
+genrule {
+    name: "cronet_aml_url_url_java__dex",
+    cmd: "$(location build/android/gyp/dex.py) --depfile " +
+         "gen/url/url_java__dex.d " +
+         "--output " +
+         "obj/url/url_java.dex.jar " +
+         "--min-api " +
+         "19 " +
+         "--r8-jar-path " +
+         "../../third_party/r8/lib/r8.jar " +
+         "--custom-d8-jar-path " +
+         "../../third_party/r8/custom_d8.jar " +
+         "--incremental-dir " +
+         "obj/url/url_java__dex " +
+         "--library " +
+         "--class-inputs " +
+         "[\"obj/url/url_java.processed.jar\"] " +
+         "--desugar " +
+         "--desugar-jdk-libs-json " +
+         "../../third_party/r8/desugar_jdk_libs.json " +
+         "--show-desugar-default-interface-warnings " +
+         "--classpath " +
+         "obj/url/url_java.javac.jar " +
+         "--desugar-dependencies " +
+         "gen/url/url_java__dex.desugardeps " +
+         "--bootclasspath " +
+         "@FileArg(gen/url/url_java.build_config.json:android:sdk_jars) " +
+         "--classpath " +
+         "@FileArg(gen/url/url_java.build_config.json:deps_info:javac_full_interface_classpath) " +
+         "--force-enable-assertions",
+    out: [
+        "//out/test/obj/url/url_java.dex.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/dex.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/md5_check.py",
+        "build/android/gyp/util/zipalign.py",
+        "build/gn_helpers.py",
+        "build/print_python_deps.py",
+        "out/test/obj/url/url_java.javac.jar",
+        "out/test/obj/url/url_java.processed.jar",
+        "third_party/r8/custom_d8.jar",
+        "third_party/r8/d8/lib/r8.jar",
+        "third_party/r8/desugar_jdk_libs.json",
+    ],
+}
+
+// GN: //url:url_java__errorprone
+genrule {
+    name: "cronet_aml_url_url_java__errorprone",
+    srcs: [
+        "url/android/java/src/org/chromium/url/IDNStringUtil.java",
+    ],
+    cmd: "$(location build/android/gyp/compile_java.py) --depfile " +
+         "gen/url/url_java__errorprone.d " +
+         "--generated-dir " +
+         "gen/url/url_java/generated_java " +
+         "--jar-path " +
+         "obj/url/url_java__errorprone.errorprone.stamp " +
+         "--java-srcjars " +
+         "[\"gen/url/url_java.generated.srcjar\"] " +
+         "--target-name " +
+         "//url:url_java__errorprone " +
+         "--classpath " +
+         "@FileArg(gen/url/url_java.build_config.json:android:sdk_interface_jars) " +
+         "--header-jar " +
+         "obj/url/url_java.turbine.jar " +
+         "--classpath " +
+         "[\"obj/url/url_java.turbine.jar\"] " +
+         "--classpath " +
+         "@FileArg(gen/url/url_java.build_config.json:deps_info:javac_full_interface_classpath) " +
+         "--chromium-code " +
+         "1 " +
+         "--jar-info-exclude-globs " +
+         "[\"*/R.class\", \"*/R\\$*.class\", \"*/Manifest.class\", \"*/Manifest\\$*.class\", \"*/GEN_JNI.class\"] " +
+         "--processorpath " +
+         "@FileArg(gen/tools/android/errorprone_plugin/errorprone_plugin.build_config.json:deps_info:host_classpath) " +
+         "--enable-errorprone " +
+         "@gen/url/url_java.sources",
+    out: [
+        "//out/test/obj/url/url_java__errorprone.errorprone.stamp",
+    ],
+    tool_files: [
+        "build/android/gyp/compile_java.py",
+        "build/android/gyp/javac_output_processor.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/jar_info_utils.py",
+        "build/android/gyp/util/md5_check.py",
+        "build/android/gyp/util/server_utils.py",
+        "build/android/list_java_targets.py",
+        "build/android/pylib/__init__.py",
+        "build/android/pylib/constants/__init__.py",
+        "build/gn_helpers.py",
+        "build/print_python_deps.py",
+        "out/test/gen/url/url_java.build_config.json",
+        "out/test/gen/url/url_java.generated.srcjar",
+        "out/test/gen/url/url_java.sources",
+        "out/test/obj/url/url_java.turbine.jar",
+        "third_party/catapult/devil/devil/__init__.py",
+        "third_party/catapult/devil/devil/android/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/chrome.py",
+        "third_party/catapult/devil/devil/android/sdk/__init__.py",
+        "third_party/catapult/devil/devil/android/sdk/keyevent.py",
+        "third_party/catapult/devil/devil/android/sdk/version_codes.py",
+        "third_party/catapult/devil/devil/constants/__init__.py",
+        "third_party/catapult/devil/devil/constants/exit_codes.py",
+        "third_party/colorama/src/colorama/__init__.py",
+        "third_party/colorama/src/colorama/ansi.py",
+        "third_party/colorama/src/colorama/ansitowin32.py",
+        "third_party/colorama/src/colorama/initialise.py",
+        "third_party/colorama/src/colorama/win32.py",
+        "third_party/colorama/src/colorama/winterm.py",
+        "tools/android/modularization/convenience/lookup_dep.py",
+    ],
+}
+
+// GN: //url:url_java__header
+genrule {
+    name: "cronet_aml_url_url_java__header",
+    srcs: [
+        "url/android/java/src/org/chromium/url/IDNStringUtil.java",
+    ],
+    cmd: "$(location build/android/gyp/turbine.py) --depfile " +
+         "gen/url/url_java__header.d " +
+         "--generated-dir " +
+         "gen/url/url_java/generated_java " +
+         "--jar-path " +
+         "obj/url/url_java.turbine.jar " +
+         "--java-srcjars " +
+         "[] " +
+         "--target-name " +
+         "//url:url_java__header " +
+         "--classpath " +
+         "@FileArg(gen/url/url_java.build_config.json:android:sdk_interface_jars) " +
+         "--classpath " +
+         "@FileArg(gen/url/url_java.build_config.json:javac:interface_classpath) " +
+         "--processorpath " +
+         "@FileArg(gen/url/url_java.build_config.json:javac:processor_classpath) " +
+         "--processors " +
+         "@FileArg(gen/url/url_java.build_config.json:javac:processor_classes) " +
+         "--turbine-jar-path " +
+         "../../third_party/turbine/turbine.jar " +
+         "--generated-jar-path " +
+         "gen/url/url_java.generated.srcjar " +
+         "--chromium-code " +
+         "1 " +
+         "--jar-info-exclude-globs " +
+         "[\"*/R.class\", \"*/R\\$*.class\", \"*/Manifest.class\", \"*/Manifest\\$*.class\", \"*/GEN_JNI.class\"] " +
+         "@gen/url/url_java.sources",
+    out: [
+        "//out/test/obj/url/url_java.turbine.jar",
+        "url/url_java.generated.srcjar",
+    ],
+    tool_files: [
+        "build/android/gyp/javac_output_processor.py",
+        "build/android/gyp/turbine.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/list_java_targets.py",
+        "build/android/pylib/__init__.py",
+        "build/android/pylib/constants/__init__.py",
+        "build/gn_helpers.py",
+        "out/test/gen/url/url_java.build_config.json",
+        "out/test/gen/url/url_java.sources",
+        "third_party/catapult/devil/devil/__init__.py",
+        "third_party/catapult/devil/devil/android/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/__init__.py",
+        "third_party/catapult/devil/devil/android/constants/chrome.py",
+        "third_party/catapult/devil/devil/android/sdk/__init__.py",
+        "third_party/catapult/devil/devil/android/sdk/keyevent.py",
+        "third_party/catapult/devil/devil/android/sdk/version_codes.py",
+        "third_party/catapult/devil/devil/constants/__init__.py",
+        "third_party/catapult/devil/devil/constants/exit_codes.py",
+        "third_party/colorama/src/colorama/__init__.py",
+        "third_party/colorama/src/colorama/ansi.py",
+        "third_party/colorama/src/colorama/ansitowin32.py",
+        "third_party/colorama/src/colorama/initialise.py",
+        "third_party/colorama/src/colorama/win32.py",
+        "third_party/colorama/src/colorama/winterm.py",
+        "third_party/turbine/turbine.jar",
+        "tools/android/modularization/convenience/lookup_dep.py",
+    ],
+}
+
+// GN: //url:url_java__process_device
+genrule {
+    name: "cronet_aml_url_url_java__process_device",
+    cmd: "$(location build/android/gyp/filter_zip.py) --input " +
+         "obj/url/url_java.javac.jar " +
+         "--output " +
+         "obj/url/url_java.processed.jar " +
+         "--exclude-globs " +
+         "[\"*/R.class\", \"*/R\\$*.class\", \"*/Manifest.class\", \"*/Manifest\\$*.class\", \"*/GEN_JNI.class\"] " +
+         "--include-globs " +
+         "[]",
+    out: [
+        "//out/test/obj/url/url_java.processed.jar",
+    ],
+    tool_files: [
+        "build/android/gyp/filter_zip.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+        "out/test/obj/url/url_java.javac.jar",
+    ],
+}
+
+// GN: //url:url_java__validate
+genrule {
+    name: "cronet_aml_url_url_java__validate",
+    cmd: "$(location build/android/gyp/bytecode_processor.py) --target-name " +
+         "//url:url_java__validate " +
+         "--script " +
+         "bin/helper/bytecode_processor " +
+         "--gn-target " +
+         "//url:url_java " +
+         "--input-jar " +
+         "obj/url/url_java.javac.jar " +
+         "--stamp " +
+         "obj/url/url_java__validate.bytecode.stamp " +
+         "--direct-classpath-jars " +
+         "@FileArg(gen/url/url_java.build_config.json:javac:classpath) " +
+         "--full-classpath-jars " +
+         "@FileArg(gen/url/url_java.build_config.json:deps_info:javac_full_classpath) " +
+         "--full-classpath-gn-targets " +
+         "@FileArg(gen/url/url_java.build_config.json:deps_info:javac_full_classpath_targets) " +
+         "--sdk-classpath-jars " +
+         "@FileArg(gen/url/url_java.build_config.json:android:sdk_jars)",
+    out: [
+        "//out/test/obj/url/url_java__validate.bytecode.stamp",
+    ],
+    tool_files: [
+        "build/android/gyp/bytecode_processor.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/android/gyp/util/server_utils.py",
+        "build/gn_helpers.py",
+        "out/test/bin/helper/bytecode_processor",
+        "out/test/gen/url/url_java.build_config.json",
+        "out/test/obj/url/url_java.javac.jar",
+    ],
+}
+
+// GN: //url:url_jni_headers
+genrule {
+    name: "cronet_aml_url_url_jni_headers",
+    srcs: [
+        "url/android/java/src/org/chromium/url/IDNStringUtil.java",
+        "url/android/java/src/org/chromium/url/Origin.java",
+    ],
+    cmd: "$(location base/android/jni_generator/jni_generator.py) --ptr_type " +
+         "long " +
+         " " +
+         " " +
+         "--output_dir " +
+         "$(genDir)/url/url_jni_headers " +
+         "--includes " +
+         "base/android/jni_generator/jni_generator_helper.h " +
+         "--use_proxy_hash " +
+         "--output_name " +
+         "IDNStringUtil_jni.h " +
+         "--output_name " +
+         "Origin_jni.h " +
+         "--input_file " +
+         "$(location url/android/java/src/org/chromium/url/IDNStringUtil.java) " +
+         "--input_file " +
+         "$(location url/android/java/src/org/chromium/url/Origin.java)",
+    out: [
+        "url/url_jni_headers/IDNStringUtil_jni.h",
+        "url/url_jni_headers/Origin_jni.h",
+    ],
+    tool_files: [
+        "base/android/jni_generator/jni_generator.py",
+        "build/android/gyp/util/__init__.py",
+        "build/android/gyp/util/build_utils.py",
+        "build/gn_helpers.py",
+    ],
 }
 
diff --git a/tools/gn2bp/desc.json b/tools/gn2bp/desc.json
index 3e97db5..0c51c3c 100644
--- a/tools/gn2bp/desc.json
+++ b/tools/gn2bp/desc.json
Binary files differ
diff --git a/tools/gn2bp/gen_android_bp b/tools/gn2bp/gen_android_bp
index 40addef..f0eb1d8 100755
--- a/tools/gn2bp/gen_android_bp
+++ b/tools/gn2bp/gen_android_bp
@@ -336,13 +336,14 @@
     self.defaults = set()
     self.cflags = set()
     self.include_dirs = set()
-    self.local_include_dirs = set()
+    self.local_include_dirs = []
     self.header_libs = set()
     self.required = set()
     self.tool_files = set()
     self.android = Target('android')
     self.host = Target('host')
     self.stl = None
+    self.cpp_std = None
     self.dist = dict()
     self.strip = dict()
     self.data = set()
@@ -354,6 +355,7 @@
     self.genrule_headers = set()
     self.genrule_srcs = set()
     self.genrule_shared_libs = set()
+    self.genrule_header_libs = set()
     self.version_script = None
     self.test_suites = set()
     self.test_config = None
@@ -383,7 +385,7 @@
     self._output_field(output, 'defaults')
     self._output_field(output, 'cflags')
     self._output_field(output, 'include_dirs')
-    self._output_field(output, 'local_include_dirs')
+    self._output_field(output, 'local_include_dirs', sort=False)
     self._output_field(output, 'header_libs')
     self._output_field(output, 'required')
     self._output_field(output, 'dist')
@@ -391,6 +393,7 @@
     self._output_field(output, 'tool_files')
     self._output_field(output, 'data')
     self._output_field(output, 'stl')
+    self._output_field(output, 'cpp_std')
     self._output_field(output, 'apex_available')
     self._output_field(output, 'min_sdk_version')
     self._output_field(output, 'version_script')
@@ -664,9 +667,41 @@
 
   blueprint.add_module(module)
 
-# There may be a better way to do target specific modification
-# Target specific modification before create_action_module
-def pre_create_action_module(target):
+# HACK: Need to support build_cofig_gen flexibly instead of hardcoding
+# build_config_gen generates srcjar by executing gcc via gcc_preprocess.py but gcc is not
+# available in genrule sandbox. Also gcc path is not configurable.
+# Under the //net:net, gcc_preprocess.py is only used for build_config_gen.
+# So, for now, hardcoding BuildConfig.java and generates srcjar by soong_zip.
+def override_build_config_gen(module):
+  module.tool_files.clear()
+  module.tools.add("soong_zip")
+  cmd = [
+    "echo",
+    "\\\"package org.chromium.build;\\n",
+    "public class BuildConfig {\\n",
+    "public static boolean IS_MULTIDEX_ENABLED ;\\n",
+    "public static boolean ENABLE_ASSERTS = true;\\n",
+    "public static boolean IS_UBSAN ;\\n",
+    "public static boolean IS_CHROME_BRANDED ;\\n",
+    "public static int R_STRING_PRODUCT_VERSION ;\\n",
+    "public static int MIN_SDK_VERSION = 1;\\n",
+    "public static boolean BUNDLES_SUPPORTED ;\\n",
+    "public static boolean IS_INCREMENTAL_INSTALL ;\\n",
+    "public static boolean ISOLATED_SPLITS_ENABLED ;\\n",
+    "public static boolean IS_FOR_TEST ;\\n",
+    "}\\n\\\"",
+    "> $(genDir)/BuildConfig.java &&",
+    "$(location soong_zip) -o $(out) -srcjar -f $(genDir)/BuildConfig.java"
+  ]
+  NEWLINE = ' " +\n         "'
+  module.cmd = NEWLINE.join(cmd)
+  return module
+
+
+def create_action_module(blueprint, target):
+  bp_module_name = label_to_module_name(target.name)
+  module = Module('genrule', bp_module_name, target.name)
+
   # Convert ['--param=value'] to ['--param', 'value'] for consistency.
   # TODO: we may want to only do this for python scripts arguments. If argparse
   # is used, this transformation is safe.
@@ -678,14 +713,22 @@
     for i, val in enumerate(target.args):
       if val == '--gen-dir':
         target.args[i + 1] = '.'
-        break
+      elif val == '--output':
+        target.args[i + 1] = '$(out)'
+
+  elif target.script == '//build/write_build_date_header.py':
+    target.args[0] = '$(out)'
 
   elif target.script == '//base/android/jni_generator/jni_generator.py':
+    # chromium builds against a prebuilt ndk that contains the jni_headers, so
+    # a dependency is never explicitly created.
+    module.genrule_header_libs.add('jni_headers')
+    needs_javap = False
     for i, val in enumerate(target.args):
       if val == '--output_dir':
-        # replace --output_dir gen/... with --output_dir $(genDir)/...
-        target.args[i + 1] = re.sub('^gen', '$(genDir)', target.args[i + 1])
-      if val == '--input_file':
+        # replace --output_dir gen/jni_headers/... with --output_dir $(genDir)/...
+        target.args[i + 1] = re.sub('^gen/jni_headers', '$(genDir)', target.args[i + 1])
+      elif val == '--input_file':
         # --input_file supports both .class specifiers or source files as arguments.
         # Only source files need to be wrapped inside a $(location <label>) tag.
         if re.match('.*\.class$', target.args[i + 1]):
@@ -694,19 +737,95 @@
         # TODO: put inside function
         filename = re.sub('^\.\./\.\./', '', target.args[i + 1])
         target.args[i + 1] = '$(location %s)' % filename
+      elif val == '--includes' and 'jni_generator_helper' in target.args[i + 1]:
+        # delete all leading ../
+        target.args[i + 1] = re.sub('^(\.\./)+', '', target.args[i + 1])
+      elif val == '--prev_output_dir':
+        # this is not needed for aosp builds.
+        target.args[i] = ''
+        target.args[i + 1] = ''
+      elif val == '--jar_file':
+        # delete leading ../../ and add path to javap
+        filename = re.sub('^\.\./\.\./', '', target.args[i + 1])
+        target.args[i + 1] = '$(location %s)' % filename
+        needs_javap = True
 
+    if needs_javap:
+      target.args.append('--javap')
+      target.args.append('$$(find out/.path -name javap)')
+    # fix target.output directory to match #include statements.
+    target.outputs = [re.sub('^jni_headers/', '', out) for out in target.outputs]
 
-def create_action_module(blueprint, target):
-  bp_module_name = label_to_module_name(target.name)
-  module = Module('genrule', bp_module_name, target.name)
+  elif target.script == '//build/android/gyp/write_build_config.py':
+    for i, val in enumerate(target.args):
+      if val == '--depfile':
+        # Depfile is not used, so no need to generate it.
+        target.args[i] = ''
+        target.args[i + 1] = ''
+      elif val in ['--deps-configs', '--bundled-srcjars']:
+        args = target.args[i + 1]
+        if args == '[]':
+          continue
+        # strip surrounding [] and split by ", "
+        args = args.strip('[]').split(', ')
+        # strip surrounding ""
+        args = [arg.strip('"') for arg in args]
+        # remove leading gen/
+        args = [re.sub('^gen/', '', arg) for arg in args]
+        # wrap filename in \"$(location filename)\"
+        args = ['\"$(location %s)\"' % arg for arg in args]
+        # join args with ", " and wrap in []
+        target.args[i + 1] = '[%s]' % ', '.join(args)
+
+      elif val == '--public-deps-configs':
+        # TODO: implement.
+        pass
+
+      elif val == '--build-config':
+        # json output of this script
+        target.args[i + 1] = re.sub('^gen', '$(genDir)', target.args[i + 1])
+
+      elif val in ['--unprocessed-jar-path', '--interface-jar-path',
+                   '--device-jar-path', '--host-jar-path']:
+        # jar path can be within sources (../../) or output generated by
+        # another genrule (obj/)
+        filename = re.sub('^\.\./\.\./', '', target.args[i + 1])
+        filename = re.sub('^obj/', '', target.args[i + 1])
+        target.args[i + 1] = '$(location %s)' % filename
+
+      elif val == '--proguard-configs':
+        args = target.args[i + 1]
+        if args == '[]':
+          continue
+        # TODO: consider adding helpers to deal with argument lists
+        # strip surrounding [] and split by ", ", then strip surrounding ""
+        args = args.strip('[]').split(', ')
+        args = [arg.strip('"') for arg in args]
+        # remove leading ../../
+        args = [re.sub('^\.\./\.\./', '', arg) for arg in args]
+        # add dependency on proguard config file, so a $(location) wrapper can be used.
+        module.tool_files.update(args)
+        # wrap filename in \"$(location filename)\"
+        args = ['$(location %s)' % arg for arg in args]
+        target.args[i + 1] = '[%s]' % ', '.join(args)
+  elif target.script == "//build/android/gyp/write_native_libraries_java.py":
+    for i, val in enumerate(target.args):
+      if val == '--output':
+        target.args[i + 1] = '$(out)'
+  elif target.script == "//tools/grit/stamp_grit_sources.py":
+    target.outputs = [re.sub('^\/\/', '', out) for out in target.outputs]
+    # Directory that contains grit scripts
+    target.args[0] = '`dirname $(location tools/grit/grit.py)`'
+    # Path to the stamp file
+    target.args[1] = '$(out)'
+    # Script tries to create args[2] file but this is not in the output.
+    # Specifying file under $(genDir) so that parent directory exists.
+    # If this file is used by other module, we may need to add this file to the outputs.
+    target.args[2] = '$(genDir)/' + target.args[2].split('/')[-1]
+
   script = gn_utils.label_to_path(target.script)
   module.tool_files.add(script)
 
-  # Replace arg by {$out} if possible
-  if len(target.outputs) == 1:
-    out = list(target.outputs)[0]
-    target.args = ['$(out)' if arg == out or arg == 'gen/' + out else arg for arg in target.args]
-
   # Handle passing parameters via response file by piping them into the script
   # and reading them from /dev/stdin.
   response_file = '{{response_file_name}}'
@@ -715,6 +834,12 @@
     # Replace {{response_file_contents}} with /dev/stdin
     target.args = ['/dev/stdin' if it == response_file else it for it in target.args]
 
+  # escape " and \$ in target.args.
+  # once all actions are properly implemented, this may not be necessary anymore.
+  # TODO: is this the right place to do this?
+  target.args = [arg.replace('"', r'\"') for arg in target.args]
+  target.args = [arg.replace(r'\$', r'\\$') for arg in target.args]
+
   # put all args on a new line for better diffs.
   NEWLINE = ' " +\n         "'
   arg_string = NEWLINE.join(target.args)
@@ -742,6 +867,13 @@
     module.srcs.remove(script)
 
   module.out.update(target.outputs)
+
+  if target.name == "//build/android:build_config_gen":
+    module = override_build_config_gen(module)
+  elif target.script == "//tools/grit/stamp_grit_sources.py":
+    # stamp_grit_sources.py is not executable
+    module.cmd = "python " + module.cmd
+
   blueprint.add_module(module)
   return module
 
@@ -803,8 +935,10 @@
         name_without_toolchain == gn_utils.GEN_VERSION_TARGET:
       module = create_gen_version_module(blueprint, target, bp_module_name)
     else:
-      pre_create_action_module(target)
       module = create_action_module(blueprint, target)
+  elif target.type == 'action_foreach':
+    return None
+      # Add basic support for action_foreach
   elif target.type == 'copy':
     # TODO: careful now! copy targets are not supported yet, but this will stop
     # traversing the dependency tree. For //base:base, this is not a big
@@ -822,15 +956,32 @@
       for src in target.sources
       if is_supported_source_file(src))
 
+  local_include_dirs_set = set()
   if target.type in gn_utils.LINKER_UNIT_TYPES:
     module.cflags.update(_get_cflags(target))
-    # HACK! We may have to link against chromium's sysroot instead, but this
-    # seems to work for //base:base.
     # TODO: implement proper cflag parsing.
     for flag in target.cflags:
-      if '--sysroot=' in flag:
-        module.header_libs.add('jni_headers')
-    module.local_include_dirs.update(gn_utils.label_to_path(it) for it in target.include_dirs)
+      if '-std=' in flag:
+        module.cpp_std = flag[len('-std='):]
+      if '-isystem' in flag:
+        local_include_dirs_set.add(flag[len('-isystem../../'):])
+
+    # Adding local_include_dirs is necessary due to source_sets / filegroups
+    # which do not properly propagate include directories.
+    # Filter any directory inside //out as a) this directory does not exist for
+    # aosp / soong builds and b) the include directory should already be
+    # configured via library dependency.
+    local_include_dirs_set.update([gn_utils.label_to_path(d)
+                                      for d in target.include_dirs
+                                      if not re.match('^//out/.*', d)])
+    module.local_include_dirs = sorted(list(local_include_dirs_set))
+
+    # Order matters for some targets. For example, base/time/time_exploded_icu.cc
+    # in //base:base needs to have sysroot include after icu/source/common
+    # include. So adding sysroot include at the end.
+    for flag in target.cflags:
+      if '--sysroot' in flag:
+        module.local_include_dirs.append(flag[len('--sysroot=../../'):] + "/usr/include")
 
   module_is_compiled = module.type not in ('genrule', 'filegroup')
   if module_is_compiled:
@@ -880,6 +1031,18 @@
 
     dep_module = create_modules_from_target(blueprint, gn, dep_name)
 
+    # TODO: Proper dependency check for genrule.
+    # Currently, only propagating genrule dependencies.
+    # Also, currently, all the dependencies are propagated upwards.
+    # in gn, public_deps should be propagated but deps should not.
+    # Not sure this information is available in the desc.json.
+    # Following rule works for adding android_runtime_jni_headers to base:base.
+    # If this doesn't work for other target, hardcoding for specific target
+    # might be better.
+    if module.type == "genrule" and dep_module.type == "genrule":
+        module.genrule_headers.add(dep_module.name)
+        module.genrule_headers.update(dep_module.genrule_headers)
+
     # For filegroups and genrule, recurse but don't apply the deps.
     if not module_is_compiled:
       continue
@@ -896,6 +1059,7 @@
       module.generated_headers.update(dep_module.genrule_headers)
       module.srcs.update(dep_module.genrule_srcs)
       module.shared_libs.update(dep_module.genrule_shared_libs)
+      module.header_libs.update(dep_module.genrule_header_libs)
     elif dep_module.type == 'cc_binary':
       continue  # Ignore executables deps (used by cmdline integration tests).
     else:
@@ -913,12 +1077,15 @@
   defaults = Module('cc_defaults', defaults_module, '//gn:default_deps')
   defaults.cflags = [
       '-Wno-error=return-type',
+      '-Wno-non-virtual-dtor',
+      '-Wno-missing-field-initializers',
       '-Wno-sign-compare',
       '-Wno-sign-promo',
       '-Wno-unused-parameter',
       '-fvisibility=hidden',
       '-O2',
   ]
+  defaults.stl = 'none'
   blueprint.add_module(defaults)
 
   for target in targets:
diff --git a/tools/gn2bp/update_results.sh b/tools/gn2bp/update_results.sh
index 6f90a69..ad0277c 100755
--- a/tools/gn2bp/update_results.sh
+++ b/tools/gn2bp/update_results.sh
@@ -12,7 +12,7 @@
 set -eux
 
 TARGETS=(
-  "//base:base"
+  "//net:net"
 )
 
 BASEDIR=$(dirname "$0")