diff --git a/.idea/androidTestResultsUserPreferences.xml b/.idea/androidTestResultsUserPreferences.xml
index b8a01a25d35681c8c781c546fd98eb4a1fe706e6..ef9ca5822ed7cc7ced820751cbef36af42e8a58b 100644
--- a/.idea/androidTestResultsUserPreferences.xml
+++ b/.idea/androidTestResultsUserPreferences.xml
@@ -78,7 +78,9 @@
             <AndroidTestResultsTableState>
               <option name="preferredColumnWidths">
                 <map>
+                  <entry key="29211JEGR13699" value="120" />
                   <entry key="Duration" value="90" />
+                  <entry key="Google&#10; Pixel 6a" value="120" />
                   <entry key="R5CNC07TZCY" value="120" />
                   <entry key="Tests" value="360" />
                   <entry key="samsung&#10; SM-G998B" value="120" />
@@ -150,6 +152,7 @@
                   <entry key="29211JEGR13699" value="120" />
                   <entry key="Duration" value="90" />
                   <entry key="Google&#10; Pixel 6a" value="120" />
+                  <entry key="Pixel_3a_API_33_x86_64" value="120" />
                   <entry key="Tests" value="360" />
                 </map>
               </option>
@@ -233,7 +236,9 @@
             <AndroidTestResultsTableState>
               <option name="preferredColumnWidths">
                 <map>
+                  <entry key="29211JEGR13699" value="120" />
                   <entry key="Duration" value="90" />
+                  <entry key="Google&#10; Pixel 6a" value="120" />
                   <entry key="R5CNC07TZCY" value="120" />
                   <entry key="Tests" value="360" />
                   <entry key="samsung&#10; SM-G998B" value="120" />
diff --git a/.idea/compiler.xml b/.idea/compiler.xml
index fb7f4a8a465d42b4a0390d464b83b99e8465bba7..b589d56e9f285d8cfdc6c270853a5d439021a278 100644
--- a/.idea/compiler.xml
+++ b/.idea/compiler.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project version="4">
   <component name="CompilerConfiguration">
-    <bytecodeTargetLevel target="11" />
+    <bytecodeTargetLevel target="17" />
   </component>
 </project>
\ No newline at end of file
diff --git a/.idea/kotlinc.xml b/.idea/kotlinc.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e1eea1d6b9d84faa7006e37a676609e51525b125
--- /dev/null
+++ b/.idea/kotlinc.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="KotlinJpsPluginSettings">
+    <option name="version" value="1.7.20" />
+  </component>
+</project>
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 54d5acd7d7803e035156e6a92b2eac33785c8994..0ad17cbd33a2f389d524bc4bfef9c52e1f7ab490 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project version="4">
   <component name="ExternalStorageConfigurationManager" enabled="true" />
-  <component name="ProjectRootManager" version="2" languageLevel="JDK_11" default="true" project-jdk-name="11" project-jdk-type="JavaSDK">
+  <component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="jbr-17" project-jdk-type="JavaSDK">
     <output url="file://$PROJECT_DIR$/build/classes" />
   </component>
   <component name="ProjectType">
diff --git a/app/src/androidTest/java/com/futo/polycentric/core/DatabaseTests.kt b/app/src/androidTest/java/com/futo/polycentric/core/DatabaseTests.kt
index 6895fb828a587add1718f6f6594d669237b18e15..ace1e20bc8f5030ed461daec5e0e5042d76cf941 100644
--- a/app/src/androidTest/java/com/futo/polycentric/core/DatabaseTests.kt
+++ b/app/src/androidTest/java/com/futo/polycentric/core/DatabaseTests.kt
@@ -35,10 +35,10 @@ class DatabaseTests {
 
         val secrets = Store.instance.getProcessSecrets()
         Assert.assertEquals(1, secrets.size)
-        Assert.assertEquals(handle.system, secrets[0].system)
+        Assert.assertEquals(handle.system, secrets[0].system.publicKey)
         Assert.assertEquals(handle.processSecret.system.publicKey, secrets[0].system.publicKey)
         Assert.assertEquals(handle.processSecret.system.privateKey, secrets[0].system.privateKey)
-        Assert.assertEquals(handle.processSecret.system.secretKey, secrets[0].system.secretKey)
+        Assert.assertArrayEquals(handle.processSecret.system.secretKey, secrets[0].system.secretKey)
     }
 
     @After
diff --git a/app/src/androidTest/java/com/futo/polycentric/core/ProcessHandleTests.kt b/app/src/androidTest/java/com/futo/polycentric/core/ProcessHandleTests.kt
index 714f843fd8f84edb07a5aa4cfddba1a54f11752f..ccc244cbd06420e61f95c30e3cc884f771267adf 100644
--- a/app/src/androidTest/java/com/futo/polycentric/core/ProcessHandleTests.kt
+++ b/app/src/androidTest/java/com/futo/polycentric/core/ProcessHandleTests.kt
@@ -10,6 +10,7 @@ import org.junit.Assert.*
 import org.junit.Test
 import org.junit.runner.RunWith
 import userpackage.Protocol
+import userpackage.Protocol.QueryReferencesRequestCountReferences
 import java.io.ByteArrayOutputStream
 
 @RunWith(AndroidJUnit4::class)
@@ -233,18 +234,20 @@ class ProcessHandleTests {
         val queryReferences = ApiMethods.getQueryReferences(SERVER, subject, null,
             Protocol.QueryReferencesRequestEvents.newBuilder()
                 .setFromType(ContentType.POST.value)
-                .build(),
-            arrayListOf(Protocol.QueryReferencesRequestCountLWWElementReferences.newBuilder()
-                .setFromType(ContentType.OPINION.value)
-                .setValue(ByteString.copyFrom(Opinion.like.data))
-                .build(),
-                Protocol.QueryReferencesRequestCountLWWElementReferences.newBuilder()
-                    .setFromType(ContentType.OPINION.value)
-                    .setValue(ByteString.copyFrom(Opinion.dislike.data))
-                    .build()),
-            arrayListOf(Protocol.QueryReferencesRequestCountReferences.newBuilder()
-                .setFromType(ContentType.POST.value)
-                .build())
+                .addAllCountLwwElementReferences(arrayListOf(
+                    Protocol.QueryReferencesRequestCountLWWElementReferences.newBuilder()
+                        .setFromType(ContentType.OPINION.value)
+                        .setValue(ByteString.copyFrom(Opinion.like.data))
+                        .build(),
+                    Protocol.QueryReferencesRequestCountLWWElementReferences.newBuilder()
+                        .setFromType(ContentType.OPINION.value)
+                        .setValue(ByteString.copyFrom(Opinion.dislike.data))
+                        .build()
+                ))
+                .addCountReferences(QueryReferencesRequestCountReferences.newBuilder()
+                    .setFromType(ContentType.POST.value)
+                    .build())
+                .build()
         )
 
         assertEquals(rootPosts.count(), queryReferences.itemsCount)