h*E<+      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                              0.13  Safe-Inferred Safe-Inferred )*9 Ztelegram-bot-simpleThe idea behind following type class is to allow you defining the type ret you want to return from   action. You can create your own return-types via new instances. Here action is a  botAction' type, that will be used further in  botHandler5 function. If you don't want to return action use  instead.See Telegram.Bot.Simple.Instances* for more commonly useful instances. -  GetAction a a - for simple making finite automata of BotM actions. (For example you can log every update and then return new action to answer at message send sticker etc) - GetAction () a - to use pure () instead of dealing with Nothing. - GetAction Text a - to add some sugar over the  replyText function. OverloadedStrings/ breaks type inference, so we advise to use replyText "message" instead of pure @_ @Text "message". telegram-bot-simpleBot handler context.The context may include an Update# the bot is handling at the moment.telegram-bot-simpleSet a specific  in a   context.telegram-bot-simpleSet a specific  in every effect of  context.    Safe-Inferred%&9otelegram-bot-simple"An environment actual bot runs in.telegram-bot-simple2A transactional variable with bot's current state. telegram-bot-simple A queue of actions to process (with associated s).!telegram-bot-simpleHTTP client environment (where and how exactly to make requests to Telegram Bot API). This includes ."telegram-bot-simple)Information about the bot in the form of .#telegram-bot-simpleA background bot job.%telegram-bot-simpleCron schedule for the job.&telegram-bot-simple Job function.'telegram-bot-simpleA bot application.)telegram-bot-simpleInitial bot state.*telegram-bot-simpleHow to convert incoming s into actions. See  Telegram.Bot.Simple.UpdateParser for some helpers.+telegram-bot-simpleHow to handle actions.,telegram-bot-simpleBackground bot jobs.-telegram-bot-simpleRun bot job task once..telegram-bot-simpleSchedule a cron-like bot job./telegram-bot-simpleSchedule all bot jobs.0telegram-bot-simpleConstruct a default  model action for a bot.1telegram-bot-simple*Issue a new action for the bot to process.2telegram-bot-simpleProcess one action.3telegram-bot-simple1A job to wait for the next action and process it.4telegram-bot-simple&Process incoming actions indefinitely.5telegram-bot-simpleStart  polling for a bot.6telegram-bot-simpleStart % polling with a given update handler.7telegram-bot-simple Instead of forkIO which hides exceptions, allow users to handle those exceptions separately.See  8https://github.com/fizruk/telegram-bot-simple/issues/159."! #&%$',)+*(-./01234567',)+*(#&%$"! -./01234567 Safe-Inferred9:;9:; Safe-Inferred)<telegram-bot-simple2The most preferrable way to run telegram requests.E.g. instead of invoking /liftClientM $ methodName MethodNameRequest {..}, you just need to specify runTG $ defMethodName params. See examples for more details.>telegram-bot-simpleWrapper around  request type for  method.?telegram-bot-simpleWrapper around  request type for  method.@telegram-bot-simpleWrapper around  request type for  method.Atelegram-bot-simpleWrapper around  request type for  method.Btelegram-bot-simpleWrapper around  request type for  method.Ctelegram-bot-simpleWrapper around  request type for  method.Dtelegram-bot-simpleWrapper around  request type for  method.Etelegram-bot-simpleWrapper around  request type for  method.Ftelegram-bot-simpleWrapper around  request type for  method.Gtelegram-bot-simpleWrapper around  request type for  method.Htelegram-bot-simpleWrapper around  request type for  method.Itelegram-bot-simpleWrapper around  request type for  method.Jtelegram-bot-simpleWrapper around  request type for  method.Ktelegram-bot-simpleWrapper around  request type for  method.Ltelegram-bot-simpleWrapper around  request type for  method.Mtelegram-bot-simpleWrapper around  request type for  method.Ntelegram-bot-simpleWrapper around  request type for  method.Otelegram-bot-simpleWrapper around  request type for  method.Ptelegram-bot-simpleWrapper around  request type for  method.Qtelegram-bot-simpleWrapper around  request type for  method.Rtelegram-bot-simpleWrapper around  request type for  method.Stelegram-bot-simpleWrapper around  request type for  method.Ttelegram-bot-simpleWrapper around  request type for  method.Utelegram-bot-simpleWrapper around  request type for  method.Vtelegram-bot-simpleWrapper around  request type for  method.Wtelegram-bot-simpleWrapper around  request type for  method.Xtelegram-bot-simpleWrapper around  request type for  method.Ytelegram-bot-simpleWrapper around  request type for  method.Ztelegram-bot-simpleWrapper around  request type for  method.\telegram-bot-simpleWrapper around  request type for  method.]telegram-bot-simpleWrapper around  request type for  method.^telegram-bot-simpleWrapper around  request type for  method._telegram-bot-simpleWrapper around  request type for  method.`telegram-bot-simpleWrapper around  request type for  method.atelegram-bot-simpleWrapper around  request type for  method.btelegram-bot-simpleWrapper around  request type for  method.ctelegram-bot-simpleWrapper around  request type for  method.dtelegram-bot-simpleWrapper around  request type for  method.etelegram-bot-simpleWrapper around  request type for  method.ftelegram-bot-simpleWrapper around  request type for  method.gtelegram-bot-simpleWrapper around  request type for  method.htelegram-bot-simpleWrapper around  request type for  method.itelegram-bot-simpleWrapper around  request type for  method.jtelegram-bot-simpleWrapper around  request type for  method.ktelegram-bot-simpleWrapper around  request type for  method.ltelegram-bot-simpleWrapper around  request type for  method.mtelegram-bot-simpleWrapper around  request type for  method.ntelegram-bot-simpleWrapper around  request type for  method.otelegram-bot-simpleWrapper around  request type for  method.ptelegram-bot-simpleWrapper around  request type for  method.qtelegram-bot-simpleWrapper around  request type for  method.rtelegram-bot-simpleWrapper around  request type for  method.stelegram-bot-simpleWrapper around  request type for  method.ttelegram-bot-simpleWrapper around  request type for  method.utelegram-bot-simpleWrapper around  request type for  method.vtelegram-bot-simpleWrapper around  request type for  method.wtelegram-bot-simpleWrapper around  request type for  method.xtelegram-bot-simpleWrapper around SetStickerSetThumbRequest request type for setStickerSetThumb method.ytelegram-bot-simpleWrapper around  request type for  method.ztelegram-bot-simpleWrapper around  request type for  method.{telegram-bot-simpleWrapper around  request type for  method.|telegram-bot-simpleWrapper around  request type for  method.}telegram-bot-simpleWrapper around  request type for  method.~telegram-bot-simpleWrapper around  request type for  method.telegram-bot-simpleWrapper around  request type for  method.telegram-bot-simpleWrapper around  request type for  method.telegram-bot-simpleWrapper around  request type for  method.telegram-bot-simpleWrapper around  request type for  method.telegram-bot-simpleWrapper around  request type for  method.telegram-bot-simpleWrapper around  request type for  method.telegram-bot-simpleWrapper around  request type for  method.telegram-bot-simple?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                                      /telegram-bot-simple-0.13-6NcG5CnFaop10Woc2o0C4KTelegram.Bot.Simple.Eff#Telegram.Bot.Simple.BotApp.Internal"Telegram.Bot.Simple.InlineKeyboardTelegram.Bot.Simple.RunTGTelegram.Bot.Simple.ReplyTelegram.Bot.Simple.Instances Telegram.Bot.Simple.UpdateParserTelegram.Bot.Simple.WebhookTelegram.Bot.Simple.BotAppTelegram.Bot.Simple.Debug Telegram.Bot.Simple.Conversationtelegram-bot-simplePaths_telegram_bot_simpleTelegram.Bot.Simple GetAction getNextActionEff_runEff BotContextbotContextUserbotContextUpdateBotM_runBotM liftClientMrunBotMrunEffeff withEffect<# setBotMUpdate setEffUpdate$fBifunctorEff $fFunctorEff$fApplicativeEff $fMonadEff $fFunctorBotM$fApplicativeBotM $fMonadBotM$fMonadReaderBotContextBotM $fMonadIOBotMBotEnv botModelVarbotActionsQueue botClientEnvbotUserBotJobbotJobSchedule botJobTaskBotAppbotInitialModel botAction botHandlerbotJobs runJobTaskscheduleBotJobscheduleBotJobs defaultBotEnv issueAction processActionprocessActionJobprocessActionsIndefinitelystartBotPolling startPolling asyncLink$fFunctorBotJob urlButtoncallbackButton actionButtonRunTGrunTG*$fRunTGGetUserProfilePhotosRequestResponse!$fRunTGSendContactRequestResponse#$fRunTGSendVideoNoteRequestResponse5$fRunTGSetChatAdministratorCustomTitleRequestResponse$$fRunTGSendMediaGroupRequestResponse$fRunTGSendVenueRequestResponse#$fRunTGGetMyCommandsRequestResponse$fRunTGSendPollRequestResponse'$fRunTGGetChatMenuButtonRequestResponse#$fRunTGBanChatMemberRequestResponse+$fRunTGGetMyShortDescriptionRequestResponse&$fRunTGGetMyDescriptionRequestResponse5$fRunTGGetMyDefaultAdministratorRightsRequestResponse'$fRunTGPromoteChatMemberRequestResponse($fRunTGSetChatPermissionsRequestResponse$$fRunTGPinChatMessageRequestResponse*$fRunTGCreateChatInviteLinkRequestResponse+$fRunTGSetMyShortDescriptionRequestResponse&$fRunTGSetMyDescriptionRequestResponse5$fRunTGSetMyDefaultAdministratorRightsRequestResponse)$fRunTGAnswerCallbackQueryRequestResponse($fRunTGRestrictChatMemberRequestResponse#$fRunTGSendAnimationRequestResponse"$fRunTGSendDocumentRequestResponse-$fRunTGStopMessageLiveLocationRequestResponse$fRunTGSendPhotoRequestResponse($fRunTGEditChatInviteLinkRequestResponse!$fRunTGSendMessageRequestResponse!$fRunTGCopyMessageRequestResponse7$fRunTGSetCustomEmojiStickerSetThumbnailRequestResponse#$fRunTGSetMyCommandsRequestResponse'$fRunTGSetChatMenuButtonRequestResponse-$fRunTGEditMessageLiveLocationRequestResponse&$fRunTGDeleteMyCommandsRequestResponse"$fRunTGSetChatPhotoRequestResponse$fRunTGSendVideoRequestResponse$fRunTGSendAudioRequestResponse$fRunTGSendVoiceRequestResponse"$fRunTGSendLocationRequestResponse%$fRunTGUnbanChatMemberRequestResponse$fRunTGSendDiceRequestResponse$$fRunTGForwardMessageRequestResponse-$fRunTGUnhideGeneralForumTopicRequestResponse+$fRunTGHideGeneralForumTopicRequestResponse-$fRunTGReopenGeneralForumTopicRequestResponse,$fRunTGCloseGeneralForumTopicRequestResponse+$fRunTGEditGeneralForumTopicRequestResponse0$fRunTGUnpinAllForumTopicMessagesRequestResponse&$fRunTGDeleteForumTopicRequestResponse&$fRunTGReopenForumTopicRequestResponse%$fRunTGCloseForumTopicRequestResponse$$fRunTGEditForumTopicRequestResponse&$fRunTGCreateForumTopicRequestResponse$fRunTGStopPollRequestResponse,$fRunTGEditMessageReplyMarkupRequestResponse&$fRunTGEditMessageMediaRequestResponse($fRunTGEditMessageCaptionRequestResponse%$fRunTGEditMessageTextRequestResponse,$fRunTGSetStickerSetThumbnailRequestResponse%$fRunTGAddStickerToSetRequestResponse)$fRunTGCreateNewStickerSetRequestResponse'$fRunTGUploadStickerFileRequestResponse!$fRunTGSendStickerRequestResponse"$fRunTGSetGameScoreRequestResponse$fRunTGSendGameRequestResponse $fRunTGGetUpdatesRequestResponse,$fRunTGAnswerPreCheckoutQueryRequestResponse)$fRunTGAnswerShippingQueryRequestResponse'$fRunTGCreateInvoiceLinkRequestResponse!$fRunTGSendInvoiceRequestResponse'$fRunTGAnswerWebAppQueryRequestResponse'$fRunTGAnswerInlineQueryRequestResponse$fRunTGClientMResponse EditMessageIdEditChatMessageIdEditInlineMessageId EditMessageeditMessageTexteditMessageParseModeeditMessageLinkPreviewOptionseditMessageReplyMarkup ReplyMessagereplyMessageTextreplyMessageMessageThreadIdreplyMessageParseModereplyMessageEntitiesreplyMessageLinkPreviewOptionsreplyMessageDisableNotificationreplyMessageProtectContentreplyMessageReplyToMessageIdreplyMessageReplyParametersreplyMessageReplyMarkup currentChatIdgetEditMessageIdupdateEditMessageIdtoReplyMessage replyMessageToSendMessageRequestreplyToreply replyText toEditMessage#editMessageToEditMessageTextRequesteditMessageToReplyMessage editMessageeditUpdateMessageeditUpdateMessageText replyOrEdit$fIsStringReplyMessage$fIsStringEditMessage$fGenericReplyMessage$fGetActionTexta$fGetAction()a $fGetActionaa UpdateParserrunUpdateParsermkParser parseUpdatetext plainTextcommandcommandWithBotNamecallbackQueryDataReadupdateMessageTextupdateMessageSticker$fMonadFailUpdateParser$fMonadUpdateParser$fAlternativeUpdateParser$fApplicativeUpdateParser$fFunctorUpdateParser webhookApp WebhookConfigwebhookConfigTlsSettingswebhookConfigTlsWarpSettingswebhookConfigSetWebhookRequest startBotAsyncstartBotAsync_startBot startBot_startBotWebhookstartBotWebhook_ getEnvToken TracedActionTracedIncomingActionTracedIssuedActiontraceBotDefaulttraceTelegramUpdatesWithtraceTelegramUpdatesJSONtraceTelegramUpdatesShowppTracedActiontraceBotActionsWithtraceBotActionsShowtraceBotModelWithtraceBotModelShowtraceBotModelJSONppAsJSON$fEqTracedAction$fShowTracedActionconversationBotuseLatestUpdateInJobsversion getBinDir getLibDir getDynLibDir getDataDir getLibexecDirgetDataFileName getSysconfDirbase GHC.MaybeNothing+telegram-bot-api-7.0-2XShkJeCLX71W7OKNKemWZTelegram.Bot.API.GettingUpdatesUpdateTelegram.Bot.API.MakingRequestsTokenTelegram.Bot.API.Types.UserUser-Telegram.Bot.API.Methods.GetUserProfilePhotosGetUserProfilePhotosRequestgetUserProfilePhotos$Telegram.Bot.API.Methods.SendContactSendContactRequest sendContact&Telegram.Bot.API.Methods.SendVideoNoteSendVideoNoteRequest sendVideoNote8Telegram.Bot.API.Methods.SetChatAdministratorCustomTitle&SetChatAdministratorCustomTitleRequestsetChatAdministratorCustomTitle'Telegram.Bot.API.Methods.SendMediaGroupSendMediaGroupRequestsendMediaGroup"Telegram.Bot.API.Methods.SendVenueSendVenueRequest sendVenue&Telegram.Bot.API.Methods.GetMyCommandsGetMyCommandsRequest getMyCommands!Telegram.Bot.API.Methods.SendPollSendPollRequestsendPoll*Telegram.Bot.API.Methods.GetChatMenuButtonGetChatMenuButtonRequestgetChatMenuButton&Telegram.Bot.API.Methods.BanChatMemberBanChatMemberRequest banChatMember.Telegram.Bot.API.Methods.GetMyShortDescriptionGetMyShortDescriptionRequestgetMyShortDescription)Telegram.Bot.API.Methods.GetMyDescriptionGetMyDescriptionRequestgetMyDescription8Telegram.Bot.API.Methods.GetMyDefaultAdministratorRights&GetMyDefaultAdministratorRightsRequestgetMyDefaultAdministratorRights*Telegram.Bot.API.Methods.PromoteChatMemberPromoteChatMemberRequestpromoteChatMember+Telegram.Bot.API.Methods.SetChatPermissionsSetChatPermissionsRequestsetChatPermissions'Telegram.Bot.API.Methods.PinChatMessagePinChatMessageRequestpinChatMessage-Telegram.Bot.API.Methods.CreateChatInviteLinkCreateChatInviteLinkRequestcreateChatInviteLink.Telegram.Bot.API.Methods.SetMyShortDescriptionSetMyShortDescriptionRequestsetMyShortDescription)Telegram.Bot.API.Methods.SetMyDescriptionSetMyDescriptionRequestsetMyDescription8Telegram.Bot.API.Methods.SetMyDefaultAdministratorRights&SetMyDefaultAdministratorRightsRequestsetMyDefaultAdministratorRights,Telegram.Bot.API.Methods.AnswerCallbackQueryAnswerCallbackQueryRequestanswerCallbackQuery+Telegram.Bot.API.Methods.RestrictChatMemberRestrictChatMemberRequestrestrictChatMember&Telegram.Bot.API.Methods.SendAnimationSendAnimationRequest sendAnimation%Telegram.Bot.API.Methods.SendDocumentSendDocumentRequest sendDocument0Telegram.Bot.API.Methods.StopMessageLiveLocationStopMessageLiveLocationRequeststopMessageLiveLocation"Telegram.Bot.API.Methods.SendPhotoSendPhotoRequest sendPhoto+Telegram.Bot.API.Methods.EditChatInviteLinkEditChatInviteLinkRequesteditChatInviteLink$Telegram.Bot.API.Methods.SendMessageSendMessageRequest sendMessage$Telegram.Bot.API.Methods.CopyMessageCopyMessageRequest copyMessage&Telegram.Bot.API.Methods.SetMyCommandsSetMyCommandsRequest setMyCommands*Telegram.Bot.API.Methods.SetChatMenuButtonSetChatMenuButtonRequestsetChatMenuButton0Telegram.Bot.API.Methods.EditMessageLiveLocationEditMessageLiveLocationRequesteditMessageLiveLocation)Telegram.Bot.API.Methods.DeleteMyCommandsDeleteMyCommandsRequestdeleteMyCommands%Telegram.Bot.API.Methods.SetChatPhotoSetChatPhotoRequest setChatPhoto"Telegram.Bot.API.Methods.SendVideoSendVideoRequest sendVideo"Telegram.Bot.API.Methods.SendAudioSendAudioRequest sendAudio"Telegram.Bot.API.Methods.SendVoiceSendVoiceRequest sendVoice%Telegram.Bot.API.Methods.SendLocationSendLocationRequest sendLocation(Telegram.Bot.API.Methods.UnbanChatMemberUnbanChatMemberRequestunbanChatMember!Telegram.Bot.API.Methods.SendDiceSendDiceRequestsendDice'Telegram.Bot.API.Methods.ForwardMessageForwardMessageRequestforwardMessageTelegram.Bot.API.ForumUnhideGeneralForumTopicRequestunhideGeneralForumTopicHideGeneralForumTopicRequesthideGeneralForumTopicReopenGeneralForumTopicRequestreopenGeneralForumTopicCloseGeneralForumTopicRequestcloseGeneralForumTopicEditGeneralForumTopicRequesteditGeneralForumTopic!UnpinAllForumTopicMessagesRequestunpinAllForumTopicMessagesDeleteForumTopicRequestdeleteForumTopicReopenForumTopicRequestreopenForumTopicCloseForumTopicRequestcloseForumTopicEditForumTopicRequesteditForumTopicCreateForumTopicRequestcreateForumTopic!Telegram.Bot.API.UpdatingMessagesStopPollRequeststopPollEditMessageReplyMarkupRequestEditMessageMediaRequesteditMessageMediaEditMessageCaptionRequesteditMessageCaptionEditMessageTextRequestTelegram.Bot.API.StickersAddStickerToSetRequestaddStickerToSetCreateNewStickerSetRequestcreateNewStickerSetUploadStickerFileRequestuploadStickerFileSendStickerRequest sendStickerTelegram.Bot.API.GamesSetGameScoreRequest setGameScoreSendGameRequestsendGameGetUpdatesRequest getUpdatesTelegram.Bot.API.PaymentsAnswerPreCheckoutQueryRequestanswerPreCheckoutQueryAnswerShippingQueryRequestanswerShippingQueryCreateInvoiceLinkRequestcreateInvoiceLinkSendInvoiceRequest sendInvoiceTelegram.Bot.API.WebAppsAnswerWebAppQueryRequestanswerWebAppQueryTelegram.Bot.API.InlineModeAnswerInlineQueryRequestanswerInlineQueryTelegram.Bot.API.Types.Common SomeChatId Telegram.Bot.API.Types.ParseMode MarkdownV2HTMLMarkdownChatId text-2.0.2Data.Text.InternalText$Telegram.Bot.API.Types.CallbackQuery CallbackQueryGHC.ShowShow updateChatId