diff --git a/src/main/java/eu/mulk/mulkcms2/benki/users/User.java b/src/main/java/eu/mulk/mulkcms2/benki/users/User.java
index b7ba545..bf0f3d0 100644
--- a/src/main/java/eu/mulk/mulkcms2/benki/users/User.java
+++ b/src/main/java/eu/mulk/mulkcms2/benki/users/User.java
@@ -148,7 +148,8 @@
   }
 
   public static User findByNickname(String nickname) {
-    return User.find("select u from BenkiUser u join u.nicknames n where ?1 = n", nickname).singleResult();
+    return User.find("select u from BenkiUser u join u.nicknames n where ?1 = n", nickname)
+        .singleResult();
   }
 
   public static User findByNicknameWithRoles(String nickname) {
diff --git a/src/main/java/eu/mulk/mulkcms2/benki/wiki/WikiResource.java b/src/main/java/eu/mulk/mulkcms2/benki/wiki/WikiResource.java
index 22c7fa5..30fad03 100644
--- a/src/main/java/eu/mulk/mulkcms2/benki/wiki/WikiResource.java
+++ b/src/main/java/eu/mulk/mulkcms2/benki/wiki/WikiResource.java
@@ -71,7 +71,8 @@
     } else {
       var userName = identity.getPrincipal().getName();
       User user =
-          User.find("select u from BenkiUser u join u.nicknames n where ?1 = n", userName).singleResult();
+          User.find("select u from BenkiUser u join u.nicknames n where ?1 = n", userName)
+              .singleResult();
       page = new WikiPageRevision();
       page.content = "";
       page.title = pageName;
@@ -108,7 +109,8 @@
 
     var userName = identity.getPrincipal().getName();
     User user =
-        User.find("select u from BenkiUser u join u.nicknames n where ?1 = n", userName).singleResult();
+        User.find("select u from BenkiUser u join u.nicknames n where ?1 = n", userName)
+            .singleResult();
 
     Optional<WikiPageRevision> maybeCurrentRevision =
         WikiPageRevision.find(
diff --git a/src/main/java/eu/mulk/mulkcms2/cms/comments/CommentRevision.java b/src/main/java/eu/mulk/mulkcms2/cms/comments/CommentRevision.java
index add3cd6..57c8886 100644
--- a/src/main/java/eu/mulk/mulkcms2/cms/comments/CommentRevision.java
+++ b/src/main/java/eu/mulk/mulkcms2/cms/comments/CommentRevision.java
@@ -1,7 +1,6 @@
 package eu.mulk.mulkcms2.cms.comments;
 
 import eu.mulk.mulkcms2.cms.users.User;
-import java.net.InetAddress;
 import io.quarkus.hibernate.orm.panache.PanacheEntityBase;
 import jakarta.persistence.Column;
 import jakarta.persistence.Entity;
@@ -12,9 +11,9 @@
 import jakarta.persistence.JoinColumn;
 import jakarta.persistence.ManyToOne;
 import jakarta.persistence.Table;
+import java.net.InetAddress;
 import java.sql.Timestamp;
 import javax.annotation.CheckForNull;
-import org.hibernate.annotations.Type;
 
 @Entity
 @Table(name = "comment_revisions", schema = "public")
