X^O<      !"#$%&'()*+,-./0123456789:;None<7A list of all mouse buttons available via the GLFW api.= A map from >' to externals created for every button.? Creating the @ of a A from > to B from a A of =.C Making a A from > to sink from a A of =.<=?CD<=?C<=?CDNoneE1A list of all possible keys used in the GLFW API.F A Map from G/ to the externals created for every single key.H Creating the @ of a A from G to B from a A of F.I Making a A from G to sink from a A of F.EFHIEFHIEFHI Safe-InferredJ#Driving a network created with the # function and a function such as  .JJJ NoneK Given an Lr indicating whether or not the program should close, it either returns the delta time since the last call, or a M-, indicating that the program should close.KKK NoneKA datatype that houses two values of a given type. It is provided with a Ny instance so that, when used with number types it can function similarly (though not exactly) to a mathematical vector.OMaps over both values in the P8Performs operations on the matching fields of the other .QDisplaying the .RThe default for the .OPQROPQR NoneS-Creating the external for the mouse position.T4Getting the signal from the mouse position external.U2Getting the sink from the mouse position external.STUSTUSTUNone None Converting a V to a WNone $The commonly used instance of SceneT/For composing a scene out of a set of elements.TPurely specifying the rendering behavior of a single element. To be composed into s for a full rendering effect.Rendering a single . .Constructing a SceneT from a list of elements. Rendering a whole  (renders each ' from first in list to last in list.)XZUsed for being able to compose Scenes in a do-notation. Not very useful outside of that.YFApplicative instance to satisfy the monad instance. Not advised to useZ1Functor instance to satisfy applicative instance.  XYZ   XYZNone[A function to be ran on a H's render function to provide a bit of a framework around it. It runs \# before the render function, and ] / ^ afterwards.[[[None  Representing a Color using four VG representing reg, green, blue, and the alpha mask respectively. The V*s are in a range from 0-1, representing _ s from 0-255.<Changes the current OpenGL context's rendering color to the   specified.A synonym for the   constructor.Constructing a   from 3 V$s, defaulting the alpha mask to 1.0. Creating a   from 4 _s. The ints, similarly to s represent red, green, blue, and the alpha mask respectively. The ints should be in the range of 0-255. (Note:  is functionally equivalent (and also equivalent in source code) to calling color4f with each of its arguments divided by 255.)Constructing a   from 3 _$s, defaulting the alpha mask to 255.The color black.The color white.The color red.The color green.The color blue.    NoneRendering a point.Rendering a rectangle.Rendering a square.None   NoneTA datatype to configure the window settings when creating an OpenGL context using  in the engine.$The default for  getWindowWidth = 640 getWindowHeight = 480 getWindowFullscreen = False getWindowResizeable = False getWindowTitle = "Spice Application" !"#$` !"#$ !"#$`None%A container around . and @ )+ so that one needn't pass around a tuple.)>A container for all of the states themselves. It is used as a @ ) in the %> (which is necessary to use it within Elerea's FRP network)..aA wrapper around the sinks for the mouse position, the key states, and the mouse button states.3 Making an %% filled with all necessary externals.49Creating a callback to update the mouse position's state.54Creating a callback to update the keyboard's states.68Creating a callback to update the mouse buttons' states.%&'()*+,-./0123456[abGcdefghijklmnopqrstuvwxyz{|}~>%&'()*+,-./0123456%&'()*+,-./0123456None7%The class which is to be used in the  function. 8: provides the API to update on every tick (purely), an 9( provides the API to render every frame.:<A synonym to make the update function more self-documenting.789:789:789:None)Creating a network to be used with the  function.None;BStarting the spice engine with the parameters prescribed in the . It updates and renders the 75 automatically so all you need to to is set up the + and make a datatype with an instance of 7.;;;NonegabGcdefghijklmnopqrstuvwxyz{|}~> !"#$%&'()*+,-./0123456789:; !"#$;./012)*+,-%&'(3456:789    !!"#$%&'()*+,-./012334567899:;<<=>?@@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\LMN]PZ ^_`^ab^cd e f g h L P ZWXijklmnopqrsqtuMNvWXwxMNyMNzMN{MN|MN}MN~MNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNMNzMNMNMNMNTU spice-0.2.0.0FRP.Spice.MathFRP.Spice.Graphics FRP.SpiceFRP.Spice.Input.MouseFRP.Spice.Input.KeyboardFRP.Spice.Engine.DriverFRP.Spice.Engine.Network makeNetworkFRP.Spice.Engine.RunInputrunInputFRP.Spice.Math.VectorFRP.Spice.Input.MousePositionFRP.Spice.Graphics.UtilsFRP.Spice.Graphics.SceneSceneFRP.Spice.Engine.RenderWrapperFRP.Spice.GameGameFRP.Spice.Graphics.ColorFRP.Spice.Graphics.GeometryFRP.Spice.ConfigFRP.Spice.Engine startEngineFRP.Spice.Input driveNetworkVectortoglSceneTElement renderElement fromElements renderSceneColorgetRedgetGreengetBluegetAlpha bindColorcolor4fcolor3fcolor4icolor3iblackwhiteredgreenblue renderPointrenderRectangle renderSquare WindowConfiggetWindowWidthgetWindowHeightgetWindowFullscreengetWindowTitledefaultWindowConfigInputContainergetSinksgetInputInput mousePositionkeyboardmouseSinksmousePositionSinks keyboardSinks mouseSinksmakeInputContainermakeMousePositionCallbackmakeKeyboardCallbackmakeMouseCallbackupdaterender DeltaTimebuttons externals GLFW-0.5.2.2Graphics.UI.GLFW MouseButtonsignalselerea-2.7.0.2FRP.Elerea.ParamSignalcontainers-0.5.5.1 Data.Map.BaseMapghc-prim GHC.TypesBoolsinks$fOrdMouseButtonkeysKeybase GHC.IORefIORef Data.MaybeNothingGHC.NumNum$fFunctorVector $fNumVector $fShowVector$fDefaultVectorFloatOpenGLRaw-1.5.0.0#Graphics.Rendering.OpenGL.Raw.TypesGLfloat $fMonadSceneT$fApplicativeSceneT$fFunctorSceneT renderWrapperOpenGL-2.9.2.0(Graphics.Rendering.OpenGL.GL.Framebufferclear(Graphics.Rendering.OpenGL.GL.FlushFinishflush swapBuffersInt$fDefaultWindowConfigCharKey SpecialKeyUNKNOWNESCF1F2F3F4F5F6F7F8F9F10F11F12F13F14F15F16F17F18F19F20F21F22F23F24F25UPDOWNLEFTRIGHTLSHIFTRSHIFTLCTRLRCTRLLALTRALTTABENTER BACKSPACEINSERTDELPAGEUPPAGEDOWNHOMEENDKP_0KP_1KP_2KP_3KP_4KP_5KP_6KP_7KP_8KP_9 KP_DIVIDE KP_MULTIPLY KP_SUBTRACTKP_ADD KP_DECIMALKP_EQUALKP_ENTER ButtonLeft ButtonRight ButtonMiddleButtonNo!madeRefmakeSizemakeDisplayBitsmakeWindowMode