implementRule :: SimpleRule -> Filter
implementRule (t, c, s) = let blockHeader = show t ++ newline
                          in Filter $ concat $
                                      zipWith3
                                      (\header xs ys -> header ++ xs ++ ys)
                                      (repeat blockHeader)
                                      (implementCategory c)
                                      (repeat $ implementStyle s ++ newline)
implementRule :: SimpleRule -> Filter
implementRule (t, c, s) = let blockHeader = show t ++ newline
                          in Filter $ concat $
                                      zipWith3
                                      (\header xs ys -> header ++ xs ++ ys)
                                      (repeat blockHeader)
                                      (implementCategory c)
                                      (repeat $ implementStyle s ++ newline)
implementRule (t, c, s) = let blockHeader = show t ++ newline
                          in Filter $ concat $
                                      zipWith3
                                      (\header xs ys -> header ++ xs ++ ys)
                                      (repeat blockHeader)
                                      (implementCategory c)
                                      (repeat $ implementStyle s ++ newline)