data ADT = One | Two Int | Three | Four Bool ADT | Five case_split :: ADT -> Int case_split One = _ case_split (Two i) = _ case_split Three = _ case_split (Four b a) = _ case_split Five = _