# Function Composition

In Haskell, the . operator represents represents function composition. That is to say, (f.g) x = f(g(x))

Using the type variables a, b and c, what would be the type of the function composition operator itself?

1. (a -> b) -> (c -> a) -> c -> b
2. a -> b -> c -> a -> c -> b
3. (a -> b) -> (c -> a) -> b -> c
4. (a -> b) -> (c -> a) -> a -> c
5. (a -> b) -> (b -> c) -> a -> c
×