úÎ'¢%¢     None+-;<=>?FQSTVh%R†A class that'll define the generated server using the supplied constraints and some function that takes a response type (through a r) and returns a computation in an arbitrary monad that returns a value of the aforementionned response type.What does this all mean?CWell, for example, we can use an empty list of constraints (see ) and just systematically call  throwError6 in all endpoints. The monad in that case would be , and the result of calling g on any API type would be a server implementation for that API that just errors out in each handler.MAnother example would be to use a constraint list of just one class (with ), say  Arbitrary, and pass a function to B that simply generates a random value in IO (something like +_ -> liftIO $ generate (arbitrary :: Gen a)Í). The result of calling this on a given API type would be a server implementation that can live in any `MonadIO m`, where for each endpoint we simply generate a random response (of the right type!).Given:a particular API type api,Csome constraint(s) that all response types in the API must satisfy, a "monad-like" type constructor m , of kind * -> *,a function that, when given (a  to) any response type ad that implements the aforementionned constraints, can produce a value of that type in m,^ gives you back an implementation of the given API in with handlers returning responses in m, that is, a value of type  api m.When m is just , you can directly  O that implementation. If you're working with another monad, you need to use ! on the result of  before you can   it.+Meant to be used as the second argument to x when your implementation function doesn't need any typeclass constraint and can just work with any response type.+Meant to be used as the second argument to N when your implementation function requires one or more constraints on the all( the response types of your API, e.g  @ '[Show, Random, Monoid].*Meant to be used as the third argument to 0. It's a simple more readable wrapper around 6. Use a type application to specify the monad, e.g  @ AppMonad.Requires all constraints in cs to be satisfied by a."#$      !"#$"%&"'("')*+,+servant-generate-0.1-G8Xl4nbijA5608aX9hYXLuServant.Server.GenerateNonEmptyFlattenGenerateServergenerateServer unconstrained constrainedhandlers$fGenerateServerVerbcs!$fGenerateServerWithNamedContextc$fGenerateServer:>c$fGenerateServer:>c0$fGenerateServer:>c1$fGenerateServer:>c2$fGenerateServer:>c3$fGenerateServer:>c4$fGenerateServer:>c5$fGenerateServer:>c6$fGenerateServer:>c7$fGenerateServer:>c8$fGenerateServer:>c9$fGenerateServerEmptyAPIc$fGenerateServer:>c10$fGenerateServer:>c11$fGenerateServer:>c12$fGenerateServer:<|>c $fAHeaders $fAHeaders0$fAInt $fANoContentbase Data.ProxyProxy*servant-server-0.13-HJdUl8oHXbCLqNbYOxaK35Servant.Server.Internal.HandlerHandlerServant.Server.InternalServerTServant.Serverserve hoistServerAgetA