úÎTÄQ;=      !"#$%&'()*+,-./0123456789:;<Safe<=? 6An error occuring during an operation on the settings.‘An option route, i.e. a list of section names ending with an option name, which describes a path in the settings UI tree leading to that option.An option path string.A section name.An opion name.+A settings section in the settings UI tree.'The options located under this section.'Subsections located under this section.zA settings option. The option value itself is held as usual in regular application state, not here. What is held here is  functions0 applied to that state to get or set the value.7A monadic action which returns the value of the option.eA monadic action which tries to set the option to the given valie, and returns whether it succeeded.>A monadic action which resets the option to its default value.      Safe:Construct an empty section, no options and no subsections.)Construct a section with a single option.Return =' if this section contains any options, > otherwise. Return =+ if this section contains any subsections, > otherwise.!Return =9 if this section is empty (no options, no subsections), > otherwise."Return =A if an option or a subsection is present at the specified path, > otherwise.#Return =0 if an option is present at the specified path, > otherwise.$Return =3 if a subsection is present at the specified path, > otherwise.%Return ?2 the section or option at the specified route, or @) if this section contains no such route.&Return ?' the option at the specified route, or @: if this section doesn't contain an option at this route.'Return ?( the section at the specified route, or @= if this section doesn't contain a subsection at this route.(žAdd the specified option at the specified route under this section. If the section previously contained an option for this route, the old value is replaced.)¥Add the specified subsection at the specified route under this section. If the section previously contained a subsection for this route, the old value is replaced.*sRemove the option at the specified route, if present. If there is a section under this route, it won't be removed.+tRemove the section at the specified route, if present. If there is an option under this route, it won't be removed.,@Remove the option or section at the specified route, if present. !"#$%&'("Route at which to place the optionOption to insert"Root section under which to insert)&Route at which to place the subsectionSubsection to insert"Root section under which to insertA*+, !"#$%&'()*+, !"#$%&'()*+, !"#$%&'()A*+,Safe-MSplit a path string into its components, if it's a valid path syntactically..Like -2, but allows to choose the escape character (e.g. '\'*) and the path separator character (e.g. B)./~Create a string representation of a path, with the parts separated by periods, and literal periods escaped using backslashes.0Like /2, but allows to choose the escape character (e.g. \\*) and the path separator character (e.g. B).-./0-./0-./0-./0Safe12121212Safe 37Get what the settings tree contains at the given route.BReturn an error description if there is no such route in the tree.]If there is a section at the route, return a list of subsection and option names under it.5If there is an option at the route, return its value.4FGet info about a settings section at the given route, if there is one.fReturn an error description if there is no such route in the tree or it doesn't point to a section.]If there is a section at the route, return a list of subsection and option names under it.5/Get the value of the option at the given route.fReturn an error description if there is no such route in the tree or it doesn't point to an option.5If there is an option at the route, return its value.6¸Change the value of the option at the given route. Return an error description if there is no such route in the tree, or it doesn't point to an option, or the value given is invalid.7¦Reset the value of the option at the given route to the default. Return an error description if there is no such route in the tree or it doesn't point to an option.8Like 3t, but takes a path and first tries to parse it into a route, returning an error description if the path is invalid.9Like 4t, but takes a path and first tries to parse it into a route, returning an error description if the path is invalid.:Like 5t, but takes a path and first tries to parse it into a route, returning an error description if the path is invalid.;Like 6t, but takes a path and first tries to parse it into a route, returning an error description if the path is invalid.<Like 7t, but takes a path and first tries to parse it into a route, returning an error description if the path is invalid. 34567CD89:;< 3456789:;< 3456789:;< 34567CD89:;<SafeE      !"#$%&'()*+,-./0123456789:;<=>?@ABCDBCEFGHFGIJFGKLMN'settings-0.3.0.0-L68EuiWDWWKEbIWWgjGK9vData.Settings.TypesData.Settings.SectionData.Settings.RouteData.Settings.OptionData.Settings.Interface Data.Settings MonadSettings getSettings putSettingsmodifySettingsgetSTree OptionValue readOption showOptiontypeName SettingsError InvalidPath NoSuchOption NoSuchSection NoSuchNodeInvalidValueForType InvalidValueOptRouteOptPathSecNameOptNameSectionsecOptssecSubsOptionoptGetoptSetoptResetempty singletonhasOptshasSubsnullmember memberOpt memberSublookup lookupOpt lookupSub insertOpt insertSub deleteOpt deleteSubdelete parseRoute parseRoute' showRoute showRoute' mkOptionV mkOptionSqueryR querySectionR queryOptionR updateOptionR resetOptionRquery querySection queryOption updateOption resetOptionghc-prim GHC.TypesTrueFalsebaseGHC.BaseJustNothing deleteImpl. byPathMaybe byPathEither