mapPaths
  :: (Path c b e a -> Path c b' e' a') -> System c b e a -> System c b' e' a'
mapPaths f sys = System
  { systemStart = f $ systemStart sys
  , systemPaths = fmap f $ systemPaths sys }
mapPaths
  :: (Path c b e a -> Path c b' e' a') -> System c b e a -> System c b' e' a'
mapPaths f sys = System
  { systemStart = f $ systemStart sys
  , systemPaths = fmap f $ systemPaths sys }
mapPaths f sys = System
  { systemStart = f $ systemStart sys
  , systemPaths = fmap f $ systemPaths sys }