package Ġcom . ad ri elm . a oc 2 0 2 0 . solutions . day 0 4 Ċ Ċ import Ġcom . ad ri elm . a oc 2 0 2 0 . common . Solution Ċ import Ġorg . k oin . dsl . module Ċ Ċ class ĠDay 0 4 Ġ: ĠSolution < List < Passport >, ĠInt >( 4 ) Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġsolve Problem 1 ( input : ĠList < Passport >): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġinput . count Ġ{ Ġit . isValid 1 () Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġsolve Problem 2 ( input : ĠList < Passport >): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġinput . count Ġ{ Ġit . isValid 2 () Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmodule Ġ= Ġmodule Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsingle Ġ{ ĠDay 0 4 () Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsingle Ġ{ ĠPass port Accumulator () Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ