I am looking at signatures for Arrow and Composable classes and I cannot understand some of them. Could you please explain me the following:
Let's take for example the following:

class FunAble h => FunDble h where
  resultFun   :: (h b -> h b') -> (h (a->b) -> h (a->b'))

class FunAble h where
  secondFun :: (h b -> h b') -> (h (a,b) -> h (a,b')) -- for 'second'


in the signatures:
resultFun   :: (h b -> h b') -> (h (a->b) -> h (a->b'))
secondFun :: (h b -> h b') -> (h (a,b) -> h (a,b'))

if (h b -> h b') is the input of these functions where does 'a' comes from in the output?

Thanks,