content: [versions]
  gradle = "7.4.2"
  kotlin = "1.7.22"
  kotlin-ksp = "1.7.22-1.0.8"
  kotlin-serialization = "1.4.1"
  gms = "4.3.15"
  crashlytics = "2.9.4"
  
  coroutines = "1.6.4"
  dagger = "2.45"
  
  androidx-core = "1.9.0"
  androidx-appcompat = "1.6.1"
  androidx-media = "1.6.0"
  androidx-recycler = "1.2.1"
  androidx-browser = "1.5.0"
  androidx-material = "1.8.0"
  androidx-preference = "1.2.0"
  androidx-palette = "1.0.0"
  androidx-annotations = "1.5.0"
  androidx-coordinator = "1.2.0"
  androidx-fragments = "1.5.5"
  androidx-constraintlayout = "2.1.4"
  androidx-lifecycle = "2.5.1"
  
  firebase-core = "21.1.1"
  firebase-crashlytics = "18.3.5"
  
  glide = "4.15.0"
  lottie = "6.0.0"
  custom-tabs = "3.0.1"
  material-dialogs = "3.3.0"
  scroll-helper = "1.1.4"
  blurkit = "1.0.0"
  color-desaturation = "1.0.2"
  tap-target-view = "2.0.0"
  
  room = "2.5.0"
  sql-content-resolver = "1.2.1"
  okhttp = "4.10.0"
  retrofit = "2.9.0"
  retrofit-serialization = "0.8.0"
  
  last-fm-binding = "0.1.2"
  aes-crypto = "1.1.0"
  fuzzywuzzy = "1.2.0"
  
  leak-canary = "2.10"
  
  junit = "4.13"
  mockito-core = "3.5.10"
  mockito-kotlin = "2.2.0"
  robolectric = "4.9.2"
  
  [libraries]
  plugin-gradle = { module = "com.android.tools.build:gradle", version.ref = "gradle" }
  plugin-kotlin-core = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin", version.ref = "kotlin" }
  plugin-kotlin-serialization = { module = "org.jetbrains.kotlin:kotlin-serialization", version.ref = "kotlin" }
  plugin-kotlin-ksp = { module = "com.google.devtools.ksp:com.google.devtools.ksp.gradle.plugin", version.ref = "kotlin-ksp" }
  plugin-gms = { module = "com.google.gms:google-services", version.ref = "gms" }
  plugin-crashlytics = { module = "com.google.firebase:firebase-crashlytics-gradle", version.ref = "crashlytics" }
  plugin-hilt = { module = "com.google.dagger:hilt-android-gradle-plugin", version.ref = "dagger" }
  
  kotlin-core = { module = "org.jetbrains.kotlin:kotlin-stdlib", version.ref = "kotlin" }
  kotlin-serialization = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version.ref = "kotlin-serialization" }
  
  coroutines-core = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "coroutines" }
  coroutines-android = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-android", version.ref = "coroutines" }
  coroutines-test = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-test", version.ref = "coroutines" }
  
  hilt-core = { module = "com.google.dagger:hilt-android", version.ref = "dagger" }
  hilt-compiler = { module = "com.google.dagger:hilt-compiler", version.ref = "dagger" }
  
  androidx-core = { module = "androidx.core:core-ktx", version.ref = "androidx-core" }
  androidx-appcompat = { module = "androidx.appcompat:appcompat", version.ref = "androidx-appcompat" }
  androidx-media = { module = "androidx.media:media", version.ref = "androidx-media" }
  androidx-recycler = { module = "androidx.recyclerview:recyclerview", version.ref = "androidx-recycler" }
  androidx-browser = { module = "androidx.browser:browser", version.ref = "androidx-browser" }
  androidx-material = { module = "com.google.android.material:material", version.ref = "androidx-material" }
  androidx-preference = { module = "androidx.preference:preference", version.ref = "androidx-preference" }
  androidx-palette = { module = "androidx.palette:palette", version.ref = "androidx-palette" }
  androidx-annotations-core = { module = "androidx.annotation:annotation", version.ref = "androidx-annotations" }
  androidx-constraintlayout = { module = "androidx.constraintlayout:constraintlayout", version.ref = "androidx-constraintlayout" }
  androidx-coordinator = { module = "androidx.coordinatorlayout:coordinatorlayout", version.ref = "androidx-coordinator" }
  androidx-fragments = { module = "androidx.fragment:fragment-ktx", version.ref = "androidx-fragments" }
  androidx-lifecycle-runtime = { module = "androidx.lifecycle:lifecycle-runtime-ktx", version.ref = "androidx-lifecycle" }
  androidx-lifecycle-java8 = { module = "androidx.lifecycle:lifecycle-common-java8", version.ref = "androidx-lifecycle" }
  androidx-lifecycle-livedata = { module = "androidx.lifecycle:lifecycle-livedata-ktx", version.ref = "androidx-lifecycle" }
  androidx-lifecycle-viewmodel = { module = "androidx.lifecycle:lifecycle-viewmodel-ktx", version.ref = "androidx-lifecycle" }
  androidx-lifecycle-service = { module = "androidx.lifecycle:lifecycle-service", version.ref = "androidx-lifecycle" }
  androidx-lifecycle-process = { module = "androidx.lifecycle:lifecycle-process", version.ref = "androidx-lifecycle" }
  
  firebase-core = { module = "com.google.firebase:firebase-core", version.ref = "firebase-core" }
  firebase-crashlytics = { module = "com.google.firebase:firebase-crashlytics", version.ref = "firebase-crashlytics" }
  
  ui-glide-core = { module = "com.github.bumptech.glide:glide", version.ref = "glide" }
  ui-glide-processor = { module = "com.github.bumptech.glide:compiler", version.ref = "glide" }
  ui-scrollhelper = { module = "com.github.ologe:scroll-helper", version.ref = "scroll-helper" }
  ui-blurkit = { module = "io.alterac.blurkit:blurkit", version.ref = "blurkit" }
  ui-lottie = { module = "com.airbnb.android:lottie", version.ref = "lottie" }
  ui-customtabs = { module = "saschpe.android:customtabs", version.ref = "custom-tabs" }
  ui-materialdialogs-core = { module = "com.afollestad.material-dialogs:core", version.ref = "material-dialogs" }
  ui-materialdialogs-color = { module = "com.afollestad.material-dialogs:color", version.ref = "material-dialogs" }
  ui-colordesaturation = { module = "com.github.ologe:color-desaturation", version.ref = "color-desaturation" }
  ui-taptargetview = { module = "com.github.ologe:taptargetview", version.ref = "tap-target-view" }
  
  data-sqlcontentresolver = { module = "com.github.ologe:android-content-resolver-SQL", version.ref = "sql-content-resolver" }
  data-room-core = { module = "androidx.room:room-runtime", version.ref = "room" }
  data-room-ktx = { module = "androidx.room:room-ktx", version.ref = "room" }
  data-room-processor = { module = "androidx.room:room-compiler", version.ref = "room" }
  data-room-testing = { module = "androidx.room:room-testing", version.ref = "room" }
  data-okhttp-core = { module = "com.squareup.okhttp3:okhttp", version.ref = "okhttp" }
  data-okhttp-interceptor = { module = "com.squareup.okhttp3:logging-interceptor", version.ref = "okhttp" }
  data-retrofit-core = { module = "com.squareup.retrofit2:retrofit", version.ref = "retrofit" }
  data-retrofit-serialization = { module = "com.jakewharton.retrofit:retrofit2-kotlinx-serialization-converter", version.ref = "retrofit-serialization" }
  
  utils-lastfmbinding = { module = "de.u-mass:lastfm-java", version.ref = "last-fm-binding" }
  utils-aescrypto = { module = "com.github.tozny:java-aes-crypto", version.ref = "aes-crypto" }
  utils-fuzzywuzzy = { module = "me.xdrop:fuzzywuzzy", version.ref = "fuzzywuzzy" }
  utils-leakcanary = { module = "com.squareup.leakcanary:leakcanary-android", version.ref = "leak-canary" }
  
  test-junit = { module = "junit:junit", version.ref = "junit" }
  test-mockito-core = { module = "org.mockito:mockito-android", version.ref = "mockito-core" }
  test-mockito-kotlin = { module = "com.nhaarman.mockitokotlin2:mockito-kotlin", version.ref = "mockito-kotlin" }
  test-robolectric = { module = "org.robolectric:robolectric", version.ref = "robolectric" }