diff --git a/src/main/java/io/takima/Yatzy.java b/src/main/java/io/takima/Yatzy.java
index 14fd3a4e78a8d17b530ee7458bd1b00eed3b7099..b5daead97dfb2a503e8d8b9a9a5b09ece6a2bca1 100644
--- a/src/main/java/io/takima/Yatzy.java
+++ b/src/main/java/io/takima/Yatzy.java
@@ -23,24 +23,8 @@ public final class Yatzy {
         return roll.toStream().filter(i -> i == 1).sum();
     }
 
-    public static int twos(int d1, int d2, int d3, int d4, int d5) {
-        int sum = 0;
-        if (d1 == 2) {
-            sum += 2;
-        }
-        if (d2 == 2) {
-            sum += 2;
-        }
-        if (d3 == 2) {
-            sum += 2;
-        }
-        if (d4 == 2) {
-            sum += 2;
-        }
-        if (d5 == 2) {
-            sum += 2;
-        }
-        return sum;
+    public static int twos(Roll roll) {
+        return roll.toStream().filter(i -> i == 2).sum();
     }
 
     public static int threes(int d1, int d2, int d3, int d4, int d5) {
diff --git a/src/test/java/io/takima/YatzyTest.java b/src/test/java/io/takima/YatzyTest.java
index 7f687951c832245fba864abd60bd3af2f009c112..8084ca941cca173e07d8908bfbb02b47a7a094af 100644
--- a/src/test/java/io/takima/YatzyTest.java
+++ b/src/test/java/io/takima/YatzyTest.java
@@ -41,8 +41,8 @@ class YatzyTest {
     @Test
     void twosShouldSumAllTwoDices() {
         assertAll(
-            () -> assertEquals(4, Yatzy.twos(1, 2, 3, 2, 6)),
-            () -> assertEquals(10, Yatzy.twos(2, 2, 2, 2, 2))
+            () -> assertEquals(4, Yatzy.twos(roll(1, 2, 3, 2, 6))),
+            () -> assertEquals(10, Yatzy.twos(roll(2, 2, 2, 2, 2)))
         );
     }