# This is a Gradle generated file for dependency locking.
# Manual edits can break the build and are not advised.
# This file is expected to be part of source control.
androidx.databinding:databinding-common:9.0.1=classpath
androidx.databinding:databinding-compiler-common:9.0.1=classpath
com.android.application:com.android.application.gradle.plugin:9.0.1=classpath
com.android.databinding:baseLibrary:9.0.1=classpath
com.android.tools.analytics-library:crash:32.0.1=classpath
com.android.tools.analytics-library:protos:32.0.1=classpath
com.android.tools.analytics-library:shared:32.0.1=classpath
com.android.tools.analytics-library:tracker:32.0.1=classpath
com.android.tools.build.jetifier:jetifier-core:1.0.0-beta10=classpath
com.android.tools.build.jetifier:jetifier-processor:1.0.0-beta10=classpath
com.android.tools.build:aapt2-proto:9.0.1-14304508=classpath
com.android.tools.build:aaptcompiler:9.0.1=classpath
com.android.tools.build:apksig:9.0.1=classpath
com.android.tools.build:apkzlib:9.0.1=classpath
com.android.tools.build:builder-model:9.0.1=classpath
com.android.tools.build:builder-test-api:9.0.1=classpath
com.android.tools.build:builder:9.0.1=classpath
com.android.tools.build:bundletool:1.18.3=classpath
com.android.tools.build:gradle-api:9.0.1=classpath
com.android.tools.build:gradle-common-api:9.0.1=classpath
com.android.tools.build:gradle-settings-api:9.0.1=classpath
com.android.tools.build:gradle:9.0.1=classpath
com.android.tools.build:manifest-merger:32.0.1=classpath
com.android.tools.ddms:ddmlib:32.0.1=classpath
com.android.tools.layoutlib:layoutlib-api:32.0.1=classpath
com.android.tools.lint:lint-model:32.0.1=classpath
com.android.tools.lint:lint-typedef-remover:32.0.1=classpath
com.android.tools.utp:gradle-work-action-api:32.0.1=classpath
com.android.tools:annotations:32.0.1=classpath
com.android.tools:common:32.0.1=classpath
com.android.tools:dvlib:32.0.1=classpath
com.android.tools:repository:32.0.1=classpath
com.android.tools:sdk-common:32.0.1=classpath
com.android.tools:sdklib:32.0.1=classpath
com.android:signflinger:9.0.1=classpath
com.android:zipflinger:9.0.1=classpath
com.google.auto.value:auto-value-annotations:1.6.2=classpath
com.google.code.findbugs:jsr305:3.0.2=classpath
com.google.code.gson:gson:2.11.0=classpath
com.google.crypto.tink:tink:1.7.0=classpath
com.google.dagger:dagger:2.28.3=classpath
com.google.errorprone:error_prone_annotations:2.28.0=classpath
com.google.flatbuffers:flatbuffers-java:1.12.0=classpath
com.google.guava:failureaccess:1.0.2=classpath
com.google.guava:guava:33.3.1-jre=classpath
com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava=classpath
com.google.j2objc:j2objc-annotations:3.0.0=classpath
com.google.jimfs:jimfs:1.1=classpath
com.google.protobuf:protobuf-java-util:3.25.5=classpath
com.google.protobuf:protobuf-java:3.25.5=classpath
com.googlecode.juniversalchardet:juniversalchardet:1.0.3=classpath
com.squareup:javapoet:1.13.0=classpath
com.squareup:javawriter:2.5.0=classpath
com.sun.istack:istack-commons-runtime:3.0.8=classpath
com.sun.xml.fastinfoset:FastInfoset:1.2.16=classpath
commons-codec:commons-codec:1.17.1=classpath
commons-io:commons-io:2.16.1=classpath
commons-logging:commons-logging:1.2=classpath
jakarta.activation:jakarta.activation-api:1.2.1=classpath
jakarta.xml.bind:jakarta.xml.bind-api:2.3.2=classpath
javax.inject:javax.inject:1=classpath
net.java.dev.jna:jna-platform:5.6.0=classpath
net.java.dev.jna:jna:5.6.0=classpath
net.sf.jopt-simple:jopt-simple:4.9=classpath
net.sf.kxml:kxml2:2.3.0=classpath
org.apache.commons:commons-compress:1.27.1=classpath
org.apache.commons:commons-lang3:3.16.0=classpath
org.apache.httpcomponents:httpclient:4.5.14=classpath
org.apache.httpcomponents:httpcore:4.4.16=classpath
org.apache.httpcomponents:httpmime:4.5.6=classpath
org.bitbucket.b_c:jose4j:0.9.5=classpath
org.bouncycastle:bcpkix-jdk18on:1.79=classpath
org.bouncycastle:bcprov-jdk18on:1.79=classpath
org.bouncycastle:bcutil-jdk18on:1.79=classpath
org.checkerframework:checker-qual:3.43.0=classpath
org.glassfish.jaxb:jaxb-runtime:2.3.2=classpath
org.glassfish.jaxb:txw2:2.3.2=classpath
org.jdom:jdom2:2.0.6=classpath
org.jetbrains.kotlin.android:org.jetbrains.kotlin.android.gradle.plugin:2.3.20=classpath
org.jetbrains.kotlin:abi-tools-api:2.3.20=classpath
org.jetbrains.kotlin:fus-statistics-gradle-plugin:2.3.20=classpath
org.jetbrains.kotlin:kotlin-build-statistics:2.3.20=classpath
org.jetbrains.kotlin:kotlin-build-tools-api:2.3.20=classpath
org.jetbrains.kotlin:kotlin-compiler-runner:2.3.20=classpath
org.jetbrains.kotlin:kotlin-daemon-client:2.3.20=classpath
org.jetbrains.kotlin:kotlin-gradle-plugin-annotations:2.3.20=classpath
org.jetbrains.kotlin:kotlin-gradle-plugin-api:2.3.20=classpath
org.jetbrains.kotlin:kotlin-gradle-plugin-idea-proto:2.3.20=classpath
org.jetbrains.kotlin:kotlin-gradle-plugin-idea:2.3.20=classpath
org.jetbrains.kotlin:kotlin-gradle-plugin:2.3.20=classpath
org.jetbrains.kotlin:kotlin-gradle-plugins-bom:2.3.20=classpath
org.jetbrains.kotlin:kotlin-klib-commonizer-api:2.3.20=classpath
org.jetbrains.kotlin:kotlin-native-utils:2.3.20=classpath
org.jetbrains.kotlin:kotlin-reflect:2.2.10=classpath
org.jetbrains.kotlin:kotlin-stdlib-common:2.2.10=classpath
org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.2.10=classpath
org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.2.10=classpath
org.jetbrains.kotlin:kotlin-stdlib:2.2.10=classpath
org.jetbrains.kotlin:kotlin-tooling-core:2.3.20=classpath
org.jetbrains.kotlin:kotlin-util-io:2.3.20=classpath
org.jetbrains.kotlin:kotlin-util-klib-metadata:2.3.20=classpath
org.jetbrains.kotlin:kotlin-util-klib:2.3.20=classpath
org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.9.0=classpath
org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.9.0=classpath
org.jetbrains.kotlinx:kotlinx-coroutines-core:1.9.0=classpath
org.jetbrains.kotlinx:kotlinx-serialization-core-jvm:1.4.0=classpath
org.jetbrains.kotlinx:kotlinx-serialization-core:1.4.0=classpath
org.jetbrains.kotlinx:kotlinx-serialization-json-jvm:1.4.0=classpath
org.jetbrains.kotlinx:kotlinx-serialization-json:1.4.0=classpath
org.jetbrains:annotations:23.0.0=classpath
org.jvnet.staxex:stax-ex:1.8.1=classpath
org.ow2.asm:asm-analysis:9.8=classpath
org.ow2.asm:asm-commons:9.8=classpath
org.ow2.asm:asm-tree:9.8=classpath
org.ow2.asm:asm-util:9.8=classpath
org.ow2.asm:asm:9.8=classpath
org.slf4j:slf4j-api:1.7.30=classpath
org.tensorflow:tensorflow-lite-metadata:0.2.0=classpath
empty=
