Îõ³h$’Ø#      !"None#$+<=àœ leanpub-wreq Construct a  by using #! to combine any of the following:Either  or  (not both) Optionally, 1Then use the config as the first argument to the  function.  leanpub-wreqThere are two ways to run a   action:  Create a   and then apply the newtyped Context -> IO a function directly. Create a  and then apply the ø function. This approach is likely more convenient, because it can do some things automatically like creating the * and reading your API key from a file.  leanpub-wreq$What book does the coupon give away? leanpub-wreq>The secret that the user needs to have to redeem the coupon leanpub-wreq'How many times can each coupon be used? leanpub-wreqÑAn optional note to remind you what the coupon is for, why it was issued, etc. leanpub-wreq>Action to perform after creating each coupon, e.g. perhaps $ for use in a REPL. leanpub-wreqHow many coupons? leanpub-wreq$What book does the coupon give away? leanpub-wreq'How many times can each coupon be used? leanpub-wreqÑAn optional note to remind you what the coupon is for, why it was issued, etc.  %      !"#$%&'(&)*+'leanpub-wreq-1.1-2Nlq0xF8kpT1mNkrGKXF8l Leanpub.Wreq#wreq-0.5.3.3-2NIbvLsxii1HFhLi8xuFvLNetwork.Wreq.Session newAPISessionNetwork.Wreq.Internal.Types:= FormParamSession QueryParam ExtensionPath WreqResponseConfigLeanpubContextcontextSessioncontextKeyMaybe runLeanpub configSession configKey configKeyFilewreqGetwreqPost wreqGetAeson wreqPostAesonwreqPostAeson_getBookSummarygetBookSalesSummarycreateFreeBookCouponcreateManyFreeBookCoupons$fSemigroupConfig$fMonoidConfig$fFunctorLeanpub$fApplicativeLeanpub$fMonadLeanpub$fMonadIOLeanpub$fMonadFailLeanpubbaseGHC.Base<> System.IOprint