diff --git a/app/src/main/java/org/lineageos/twelve/datasources/LocalDataSource.kt b/app/src/main/java/org/lineageos/twelve/datasources/LocalDataSource.kt
index a3df640..fc67c33 100644
--- a/app/src/main/java/org/lineageos/twelve/datasources/LocalDataSource.kt
+++ b/app/src/main/java/org/lineageos/twelve/datasources/LocalDataSource.kt
@@ -327,8 +327,8 @@
             )
         ).mapEachRow(audiosProjection, mapAudio)
     ) { albums, audios ->
-        albums.firstOrNull()?.let {
-            RequestStatus.Success<_, MediaError>(Pair(it, audios))
+        albums.firstOrNull()?.let { album ->
+            RequestStatus.Success<_, MediaError>(album to audios)
         } ?: RequestStatus.Error(MediaError.NOT_FOUND)
     }
 
@@ -393,14 +393,14 @@
             ).mapEachRow(albumsProjection, mapAlbum)
         }
     ) { artists, albums, appearsInAlbum ->
-        artists.firstOrNull()?.let {
+        artists.firstOrNull()?.let { artist ->
             val artistWorks = ArtistWorks(
                 albums,
                 appearsInAlbum,
                 listOf(),
             )
 
-            RequestStatus.Success<_, MediaError>(Pair(it, artistWorks))
+            RequestStatus.Success<_, MediaError>(artist to artistWorks)
         } ?: RequestStatus.Error(MediaError.NOT_FOUND)
     }
 
@@ -490,7 +490,7 @@
                     audios,
                 )
 
-                RequestStatus.Success<_, MediaError>(Pair(it, genreContent))
+                RequestStatus.Success<_, MediaError>(it to genreContent)
             } ?: RequestStatus.Error(MediaError.NOT_FOUND)
         }
     }
@@ -502,8 +502,8 @@
             val playlist = playlistWithItems.playlist.toModel()
 
             audios(playlistWithItems.items.map(Item::audioUri))
-                .mapLatest {
-                    RequestStatus.Success<_, MediaError>(Pair(playlist, it))
+                .mapLatest { items ->
+                    RequestStatus.Success<_, MediaError>(playlist to items)
                 }
         } ?: flowOf(
             RequestStatus.Error(
diff --git a/app/src/main/java/org/lineageos/twelve/repositories/MediaRepository.kt b/app/src/main/java/org/lineageos/twelve/repositories/MediaRepository.kt
index 7ed619c..697954d 100644
--- a/app/src/main/java/org/lineageos/twelve/repositories/MediaRepository.kt
+++ b/app/src/main/java/org/lineageos/twelve/repositories/MediaRepository.kt
@@ -235,7 +235,7 @@
                 name, server, username, password, useLegacyAuthentication
             )
 
-            Pair(providerType, typeId)
+            providerType to typeId
         }
     }
 
