G      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ Safe-Inferred Safe-Inferred      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuv ZVUTSRQPONMLKJIHGFEDCBA@?>=<;:9876543210/.-,+*)('&%$#"!      W `_^]\[ZYXa jihgfedcbkmlnopqrstuvwxyz{NoneA small wrapper around |, to ensure the ncurses' library is initialized while running.}~ }~}~None T  (X, Y, Z) pIf the mouse event was caused by a change in button state, the buttons and their new state will be listed here.MLower right of keypadNLower left of keypadOCenter of keypadPUpper right of keypadQUpper left of keypad\Clear to end of line]Clear to end of screen^ Clear screen_#Sent by rmir or smir in insert modedFunction keys, F0  F64qNA glyph is a character, typically spacing, combined with a set of attributes.uA wrapper around E to ensure clients don t use an uninitialized color in an attribute.wqAn unspecified default terminal color, for terminals that support ISO/IEC 6429 escape sequences (or equivalent).?This is most useful for terminals with translucent backgrounds.nPut the terminal in graphical mode, including enabling special keys, colors, and mouse events (if supported). After the A block has finished running, the terminal is reset to text mode. The default window created when ncurses is initialized, also known as stdscr. Create a new A, with the given dimensions. To create a fullscreen window, use  0 0 0 0.*When the window is no longer needed, call . Windows are not garbage collected, because there s no way to know if they re still in use (as a background, or event source, etc).wClose a window, and free all resources associated with it. Once a window has been closed, it is no longer safe to use.PNote: this computation will not automatically clear the window from the screen.LCreate a separate window, initialised with the state of an existing window.dApply a window update to the window. After all of an application s windows have been updated, call $ to update the terminal s contents.MRe draw any portions of the screen which have changed since the last render.6Set the current foreground and background colors. See  for how to create color IDs.>Move the window s cursor position to the given row and column.<Add some text to the window, at the current cursor position.<Add some text to the window, at the current cursor position.DDraw a border around the edge of the window. For any edge, passing  means to use the default glyph. @drawBox v h = drawBorder v v h h Nothing Nothing Nothing NothingDraw a horizontal line from left to right, using the given glyph and maximum character count. The cursor position is not changed.Draw a vertical line from top to bottom, using the given glyph and maximum character count. The cursor position is not changed.Set the window s background glyph. The glyph will be drawn in place of any blank characters, and the glyph s attributes will be combined with those of every character. Set a single : on the current window. No other attributes are modified.Set all Xs at once on the current window. Any attributes not included in the list will be unset.yCheck if the terminal supports color. If it doesn t, alternative indicators (such as underlines or bold) should be used.:Check if the terminal supports changing color defintiions.0Change the definition of an existing color. Use 9 to determine whether changing color values is possible.5Query the current definition of the given color (see C). The returned tuple is (red, green, blue), with values 0  1000.The default color ID Assign a new ux to some (foreground, background) color pair. The user may pick which color ID is assigned, but it must be valid. Use < to determine how many colors the current terminal supports.:Get the maximum color ID supported by the current terminalUpper left cornerLower left cornerUpper right cornerLower right cornerTee pointing rightTee pointing leftTee pointing upTee pointing downHorizontal line Vertical lineLarge plus or crossover Scan line 1 Scan line 9DiamondStipple, or checker board Degree symbol Plus/minusBulletArrow pointing leftArrow pointing rightArrow pointing downArrow pointing upBoard of squaresLantern symbolSolid square block Scan line 3 Scan line 7 Not equalLess than or equalGreater than or equalPiUK pounds sterling symbol Get the next k from a given window.KIf the timeout is specified, and no event is received within the timeout, getEvent returns . If the timeout is 0 or less, getEvent will not block at all.lSet the current cursor mode to visible, invisible, or "very visible". The previous cursor mode is returned.Runs raw() or noraw()Runs cbreak() or  nocbreak()Runs echo() or noecho()AGet the output speed of the current terminal, in bits per second.!Check if the terminal has a mouse5Check if some position is contained within the given .(Return (rows, columns) of current screenfSet whether the entire window has been touched ; touched characters are redrawn on the next refresh.?Set whether particular rows in the window have been touched .(Enable/disable support for special keys.  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~RowsColumnsBegin YBegin XRowColumn Left edge Right edgeTop edge Bottom edgeTop left cornerTop right cornerBottom left cornerBottom right cornerRed (0  1000)Green (0  1000)Blue (0  1000) Foreground BackgroundA value n, such that (0 < n "d ) Foreground BackgroundThe u to changeTimeout, in millisecondsRowColumnStartCount  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~v~}|{zyxwuqrstkponmljihgfedcba`_^]\[ZYXWVUTSRQPONMLKJIHGFEDCBA@?>=<;:9876543210/.-,+*)('&%$#"!   Vjihgfedcba`_^]\[ZYXWVUTSRQPONMLKJIHGFEDCBA@?>=<;:9876543210/.-,+*)('&%$#"! kponmlqrstuv ~}|{zyxw None Creates a new , on top of the panel stack.9Permanently removes the given panel from the panel stack.RUpdates windows to account for the current panel stack order. The user must call ( before changes are drawn to the screen. panelAbove p retrieve the panel above p. panelAbove p retrieve the panel below p.)Retrieve the top most panel in the stack.,Retrieve the bottom most panel in the stack.DMakes a hidden panel visible, and places it on the top of the stack.?Temporarily removes the given panel from the panel stack. Use  to restore it./Checks if the given panel is currently visible.CMove the panel so its upper left corner is at the new coordinates.'Raise a bottom to the top of the stack.)Lower a panel to the bottom of the stack.+Retrieves which window a panel is drawn to.*Replaces which window a panel is drawn to.New upper left rowNew upper left column       !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[z\]^_`abcdefghijklmnopqrstuvwxyz{|}~yncurses-0.2.11 UI.NCursesUI.NCurses.PanelUI.NCurses.CompatUI.NCurses.EnumsUI.NCurses.TypesWindowUpdateCurses CursorModeCursorVeryVisible CursorVisibleCursorInvisible MouseStatemouseCoordinates mouseButtonsmouseAlt mouseShift mouseControl ButtonStateButtonTripleClickedButtonDoubleClicked ButtonClickedButtonReleased ButtonPressedKeyKeyUndo KeySuspendKeyShiftedUndoKeyShiftedSuspendKeyShiftedSaveKeyShiftedResumeKeyShiftedRightArrowKeyShiftedReplaceKeyShiftedRedoKeyShiftedPrintKeyShiftedPreviousKeyShiftedOptionsKeyShiftedNextKeyShiftedMoveKeyShiftedMessageKeyShiftedLeftArrowKeyShiftedInsertCharacterKeyShiftedHomeKeyShiftedHelpKeyShiftedFindKeyShiftedExit KeyShiftedEOL KeyShiftedEnd KeySelectKeyShiftedDeleteLineKeyShiftedDeleteCharacterKeyShiftedCreateKeyShiftedCopyKeyShiftedCommandKeyShiftedCancelKeyShiftedBeginKeySave KeyResume KeyRestart KeyReplace KeyRefresh KeyReferenceKeyRedo KeyPrevious KeyOptionsKeyOpenKeyNextKeyMove KeyMessageKeyMarkKeyHelpKeyFindKeyExitKeyEnd KeyCreateKeyCopy KeyCommandKeyClose KeyCancelKeyBegin KeyBackTabKeyC3KeyC1KeyB2KeyA3KeyA1 KeyHomeDownKeyPrintKeyEnterKeyClearAllTabs KeyClearTab KeySetTabKeyPreviousPage KeyNextPageKeyScrollBackwardKeyScrollForwardKeyEOLKeyEOSKeyClearKeyEICKeyInsertCharacterKeyDeleteCharacter KeyInsertLine KeyDeleteLine KeyFunction KeyBackspaceKeyHome KeyRightArrow KeyLeftArrow KeyDownArrow KeyUpArrowEvent EventUnknown EventResized EventMouseEventSpecialKeyEventCharacterGlyphglyphCharacterglyphAttributesColorIDColor ColorDefault ColorWhite ColorCyan ColorMagenta ColorBlue ColorYellow ColorGreenColorRed ColorBlack AttributeAttributeProtectAttributeInvisibleAttributeAltCharset AttributeBold AttributeDimAttributeBlinkAttributeReverseAttributeUnderlineAttributeStandout runCurses defaultWindow newWindow closeWindow cloneWindow updateWindowrendersetColor moveCursor drawStringdrawText drawBorderdrawBox drawLineH drawLineV setBackground setAttribute setAttributes supportsColorcanDefineColor defineColor queryColordefaultColorID newColorID setColorID maxColorID glyphCornerUL glyphCornerLL glyphCornerUR glyphCornerLR glyphTeeL glyphTeeR glyphTeeB glyphTeeT glyphLineH glyphLineV glyphPlus glyphScan1 glyphScan9 glyphDiamond glyphStipple glyphDegreeglyphPlusMinus glyphBullet glyphArrowL glyphArrowR glyphArrowD glyphArrowU glyphBoard glyphLantern glyphBlockglyphS3glyphS7glyphNEglyphLTEglyphGTEglyphPi glyphSterlinggetEvent setCursorModesetRaw setCBreaksetEchobaudratebeepflashhasMouseenclosed screenSize setTouchedsetRowsTouched setKeypad getCursorPanelnewPanel deletePanel refreshPanels panelAbove panelBelowpanelTop panelBottom showPanel hidePanel panelHidden movePanel raisePanel lowerPanelgetPanelWindowreplacePanelWindowbase Control.MonadvoidButton BUTTON_ALT BUTTON_SHIFT BUTTON_CTRLBUTTON4_TRIPLE_CLICKEDBUTTON4_DOUBLE_CLICKEDBUTTON4_CLICKEDBUTTON4_PRESSEDBUTTON4_RELEASEDBUTTON3_TRIPLE_CLICKEDBUTTON3_DOUBLE_CLICKEDBUTTON3_CLICKEDBUTTON3_PRESSEDBUTTON3_RELEASEDBUTTON2_TRIPLE_CLICKEDBUTTON2_DOUBLE_CLICKEDBUTTON2_CLICKEDBUTTON2_PRESSEDBUTTON2_RELEASEDBUTTON1_TRIPLE_CLICKEDBUTTON1_DOUBLE_CLICKEDBUTTON1_CLICKEDBUTTON1_PRESSEDBUTTON1_RELEASED KEY_EVENT KEY_RESIZE KEY_MOUSEKEY_UNDO KEY_SUSPEND KEY_SUNDO KEY_SSUSPEND KEY_SSAVE KEY_SRSUME KEY_SRIGHT KEY_SREPLACE KEY_SREDO KEY_SPRINT KEY_SPREVIOUS KEY_SOPTIONS KEY_SNEXT KEY_SMOVE KEY_SMESSAGE KEY_SLEFTKEY_SIC KEY_SHOME KEY_SHELP KEY_SFIND KEY_SEXITKEY_SEOLKEY_SEND KEY_SELECTKEY_SDLKEY_SDC KEY_SCREATE KEY_SCOPY KEY_SCOMMAND KEY_SCANCELKEY_SBEGKEY_SAVE KEY_RESUME KEY_RESTART KEY_REPLACE KEY_REFRESH KEY_REFERENCEKEY_REDO KEY_PREVIOUS KEY_OPTIONSKEY_OPENKEY_NEXTKEY_MOVE KEY_MESSAGEKEY_MARKKEY_HELPKEY_FINDKEY_EXITKEY_END KEY_CREATEKEY_COPY KEY_COMMAND KEY_CLOSE KEY_CANCELKEY_BEGKEY_BTABKEY_C3KEY_C1KEY_B2KEY_A3KEY_A1KEY_LL KEY_PRINT KEY_ENTER KEY_CATABKEY_CTABKEY_STAB KEY_PPAGE KEY_NPAGEKEY_SRKEY_SFKEY_EOLKEY_EOS KEY_CLEARKEY_EICKEY_ICKEY_DCKEY_ILKEY_DLKEY_F0 KEY_BACKSPACEKEY_HOME KEY_RIGHTKEY_LEFTKEY_UPKEY_DOWN KEY_CODE_YES COLOR_WHITE COLOR_CYAN COLOR_MAGENTA COLOR_BLUE COLOR_YELLOW COLOR_GREEN COLOR_RED COLOR_BLACK COLOR_DEFAULT WA_PROTECTWA_INVIS WA_ALTCHARSETWA_BOLDWA_DIMWA_BLINK WA_REVERSE WA_UNDERLINE WA_STANDOUT EnumWrapperALL_MOUSE_EVENTSERREnumtoEnumfromEnumpredsuccenumFrom enumFromThen enumFromToenumFromThenTo $fEnumButton $fEnumKey $fEnumColor$fEnumAttribute$fEnumEnumWrapperghc-prim GHC.TypesIO windowPtrunUpdateunCursescheckRCcToBool cFromBool$fApplicativeUpdate$fFunctorUpdate$fMonadFixUpdate $fMonadUpdate$fApplicativeCurses$fFunctorCurses$fMonadIOCurses$fMonadFixCurses $fMonadCurses integer-gmpGHC.Integer.TypeInteger Data.MaybeNothingCursorModeUnknownMMaskTAttrTCCharTgetcurxgetcurywtouchln untouchwintouchwinwenclosec_flashc_beep c_baudratenoechoechonocbreaknorawrawcurs_setgetmousehsncurses_wget_wchmemset init_pair color_content init_colorcan_change_color wattr_set wattr_get wattr_offwattr_on wbkgrndset wvline_set whline_set wborder_setwaddwstrwmove wcolor_setdoupdate wnoutrefreshdupwindelwinnewwinwtimeoutmetakeypaduse_default_colors start_color has_colors mousemaskcbreakinitscrendwinc_COLSc_LINES c_hasMouse c_COLOR_PAIRSc_stdscrattrEnum attrToInt colorEnum colorToShort withGlyphkeyMapparseMouseState withWindow withWindow_panelPtr replace_panel panel_window bottom_panel top_panel move_panel panel_hidden hide_panel show_panel panel_below panel_above update_panels del_panel new_panel