tocData = [
  ["Quick Reference","index.htm"],
  ["Usage and Syntax","",
  [
    ["Using the Program","Program.htm"],
    ["Concepts and Conventions","Concepts.htm"],
    ["Scripting Language","Language.htm"],
    ["Hotkeys","Hotkeys.htm"],
    ["Hotstrings","Hotstrings.htm"],
    ["Remapping Keys","misc/Remap.htm"],
    ["List of Keys","KeyList.htm"],
    ["Scripts (misc)","Scripts.htm"],
    ["Variables and Expressions","Variables.htm"],
    ["Functions","Functions.htm"],
    ["Labels","misc/Labels.htm"],
    ["Threads","misc/Threads.htm"],
    ["Debugging Clients","AHKL_DBGPClients.htm"],
    ["Compiler Directives","misc/Ahk2ExeDirectives.htm"],
    ["Objects","Objects.htm"]
  ]],
  ["Frequently Asked Questions","FAQ.htm"],
  ["Tutorial (quick start)","Tutorial.htm"],
  ["Recent Changes","AHKL_ChangeLog.htm"],
  ["Script Showcase","scripts/index.htm"],
  ["Script Compatibility","Compat.htm"],
  ["Command and Function Index","lib/index.htm"],
  ["Environment","",
  [
    ["ClipWait","lib/ClipWait.htm"],
    ["DPI Scaling","misc/DPIScaling.htm"],
    ["EnvGet","lib/EnvGet.htm"],
    ["EnvSet","lib/EnvSet.htm"],
    ["EnvUpdate","lib/EnvUpdate.htm"],
    ["OnClipboardChange Label","lib/OnClipboardChange.htm#label"],
    ["OnClipboardChange()","lib/OnClipboardChange.htm#function"],
    ["SysGet","lib/SysGet.htm"]
  ]],
  ["External Libraries","",
  [
    ["DllCall()","lib/DllCall.htm"],
    ["NumGet()","lib/NumGet.htm"],
    ["NumPut()","lib/NumPut.htm"],
    ["RegisterCallback()","lib/RegisterCallback.htm"],
    ["StrGet()","lib/StrGet.htm"],
    ["StrPut()","lib/StrPut.htm"],
    ["VarSetCapacity()","lib/VarSetCapacity.htm"],
    ["COM","",
    [
      ["ComObjActive()","lib/ComObjActive.htm"],
      ["ComObjArray()","lib/ComObjArray.htm"],
      ["ComObjConnect()","lib/ComObjConnect.htm"],
      ["ComObjCreate()","lib/ComObjCreate.htm"],
      ["ComObject()","lib/ComObjActive.htm#ComObject"],
      ["ComObjEnwrap()","lib/ComObjActive.htm#ComObjEnwrap"],
      ["ComObjError()","lib/ComObjError.htm"],
      ["ComObjFlags()","lib/ComObjFlags.htm"],
      ["ComObjGet()","lib/ComObjGet.htm"],
      ["ComObjMissing()","lib/ComObjActive.htm#ComObjMissing"],
      ["ComObjParameter()","lib/ComObjActive.htm#ComObjParameter"],
      ["ComObjQuery()","lib/ComObjQuery.htm"],
      ["ComObjType()","lib/ComObjType.htm"],
      ["ComObjUnwrap()","lib/ComObjActive.htm#ComObjUnwrap"],
      ["ComObjValue()","lib/ComObjValue.htm"],
      ["ObjAddRef() / ObjRelease()","lib/ObjAddRef.htm"]
    ]]
  ]],
  ["File, Directory and Disk","",
  [
    ["Drive","lib/Drive.htm"],
    ["DriveGet","lib/DriveGet.htm"],
    ["DriveSpaceFree","lib/DriveSpaceFree.htm"],
    ["FileAppend","lib/FileAppend.htm"],
    ["FileCopy","lib/FileCopy.htm"],
    ["FileCopyDir","lib/FileCopyDir.htm"],
    ["FileCreateDir","lib/FileCreateDir.htm"],
    ["FileCreateShortcut","lib/FileCreateShortcut.htm"],
    ["FileDelete","lib/FileDelete.htm"],
    ["FileEncoding","lib/FileEncoding.htm"],
    ["FileExist()","lib/FileExist.htm"],
    ["FileGetAttrib","lib/FileGetAttrib.htm"],
    ["FileGetShortcut","lib/FileGetShortcut.htm"],
    ["FileGetSize","lib/FileGetSize.htm"],
    ["FileGetTime","lib/FileGetTime.htm"],
    ["FileGetVersion","lib/FileGetVersion.htm"],
    ["FileInstall","lib/FileInstall.htm"],
    ["FileMove","lib/FileMove.htm"],
    ["FileMoveDir","lib/FileMoveDir.htm"],
    ["FileOpen()","lib/FileOpen.htm"],
    ["FileRead","lib/FileRead.htm"],
    ["FileReadLine","lib/FileReadLine.htm"],
    ["FileRecycle","lib/FileRecycle.htm"],
    ["FileRecycleEmpty","lib/FileRecycleEmpty.htm"],
    ["FileRemoveDir","lib/FileRemoveDir.htm"],
    ["FileSelectFile","lib/FileSelectFile.htm"],
    ["FileSelectFolder","lib/FileSelectFolder.htm"],
    ["FileSetAttrib","lib/FileSetAttrib.htm"],
    ["FileSetTime","lib/FileSetTime.htm"],
    ["If[Not]Exist","lib/IfExist.htm"],
    ["IniDelete","lib/IniDelete.htm"],
    ["IniRead","lib/IniRead.htm"],
    ["IniWrite","lib/IniWrite.htm"],
    ["Long Paths","misc/LongPaths.htm"],
    ["Loop (files & folders)","lib/LoopFile.htm"],
    ["Loop (read file contents)","lib/LoopReadFile.htm"],
    ["SetWorkingDir","lib/SetWorkingDir.htm"],
    ["SplitPath","lib/SplitPath.htm"]
  ]],
  ["Flow of Control","",
  [
    ["#Include[Again]","lib/_Include.htm"],
    ["{ ... } (block)","lib/Block.htm"],
    ["Catch","lib/Catch.htm"],
    ["Critical","lib/Critical.htm"],
    ["Else","lib/Else.htm"],
    ["Exit","lib/Exit.htm"],
    ["ExitApp","lib/ExitApp.htm"],
    ["Finally","lib/Finally.htm"],
    ["Gosub","lib/Gosub.htm"],
    ["Goto","lib/Goto.htm"],
    ["If Statements","Language.htm#if-statement",
    [
      ["If (expression)","lib/IfExpression.htm"],
      ["If (legacy)","lib/IfEqual.htm"],
      ["If Var [not] between Low and High","lib/IfBetween.htm"],
      ["If Var is [not] Type","lib/IfIs.htm"],
      ["If Var [not] in/contains MatchList","lib/IfIn.htm"],
      ["If[Not]Exist","lib/IfExist.htm"],
      ["If[Not]InString","lib/IfInString.htm"],
      ["IfMsgBox","lib/IfMsgBox.htm"],
      ["IfWin[Not]Active","lib/IfWinActive.htm"],
      ["IfWin[Not]Exist","lib/IfWinExist.htm"]
    ]],
    ["Loop Statements","Language.htm#loop-statement",
    [
      ["Loop","lib/Loop.htm"],
      ["Loop (files & folders)","lib/LoopFile.htm"],
      ["Loop (parse a string)","lib/LoopParse.htm"],
      ["Loop (read file contents)","lib/LoopReadFile.htm"],
      ["Loop (registry)","lib/LoopReg.htm"],
      ["While","lib/While.htm"],
      ["For","lib/For.htm"],
      ["Break","lib/Break.htm"],
      ["Continue","lib/Continue.htm"],
      ["Until","lib/Until.htm"]
    ]],
    ["OnError()","lib/OnError.htm"],
    ["OnExit","lib/OnExit.htm"],
    ["Pause","lib/Pause.htm"],
    ["Reload","lib/Reload.htm"],
    ["Return","lib/Return.htm"],
    ["SetBatchLines","lib/SetBatchLines.htm"],
    ["SetTimer","lib/SetTimer.htm"],
    ["Sleep","lib/Sleep.htm"],
    ["Suspend","lib/Suspend.htm"],
    ["Switch","lib/Switch.htm"],
    ["Thread","lib/Thread.htm"],
    ["Throw","lib/Throw.htm"],
    ["Try","lib/Try.htm"]
  ]],
  ["Graphical User Interfaces","",
  [
    ["FileSelectFile","lib/FileSelectFile.htm"],
    ["FileSelectFolder","lib/FileSelectFolder.htm"],
    ["Gui","lib/Gui.htm"],
    ["Gui control types","lib/GuiControls.htm"],
    ["GuiControl","lib/GuiControl.htm"],
    ["GuiControlGet","lib/GuiControlGet.htm"],
    ["Gui ListView control","lib/ListView.htm"],
    ["Gui TreeView control","lib/TreeView.htm"],
    ["IfMsgBox","lib/IfMsgBox.htm"],
    ["Image Handles","misc/ImageHandles.htm"],
    ["InputBox","lib/InputBox.htm"],
    ["LoadPicture()","lib/LoadPicture.htm"],
    ["Menu","lib/Menu.htm"],
    ["MenuGetHandle()","lib/MenuGetHandle.htm"],
    ["MenuGetName()","lib/MenuGetName.htm"],
    ["MsgBox","lib/MsgBox.htm"],
    ["OnMessage()","lib/OnMessage.htm"],
    ["Progress","lib/Progress.htm"],
    ["SplashImage","lib/Progress.htm"],
    ["SplashTextOn/Off","lib/SplashTextOn.htm"],
    ["Standard Windows Fonts","misc/FontsStandard.htm"],
    ["Styles for a window/control","misc/Styles.htm"],
    ["ToolTip","lib/ToolTip.htm"],
    ["TrayTip","lib/TrayTip.htm"]
  ]],
  ["Maths","lib/Math.htm",
  [
    ["Abs()","lib/Math.htm#Abs"],
    ["Ceil()","lib/Math.htm#Ceil"],
    ["EnvAdd (and date math)","lib/EnvAdd.htm"],
    ["EnvDiv","lib/EnvDiv.htm"],
    ["EnvMult","lib/EnvMult.htm"],
    ["EnvSub (and date diff)","lib/EnvSub.htm"],
    ["Exp()","lib/Math.htm#Exp"],
    ["Floor()","lib/Math.htm#Floor"],
    ["Log()","lib/Math.htm#Log"],
    ["Ln()","lib/Math.htm#Ln"],
    ["Max()","lib/Math.htm#Max"],
    ["Min()","lib/Math.htm#Min"],
    ["Mod()","lib/Math.htm#Mod"],
    ["Random","lib/Random.htm"],
    ["Round()","lib/Math.htm#Round"],
    ["SetFormat","lib/SetFormat.htm"],
    ["Sqrt()","lib/Math.htm#Sqrt"],
    ["Sin() / Cos() / Tan()","lib/Math.htm#Sin"],
    ["ASin() / ACos() / ATan()","lib/Math.htm#ASin"],
    ["Transform","lib/Transform.htm"]
  ]],
  ["Mouse and Keyboard","",
  [
    ["Hotkeys and Hotstrings","Hotkeys.htm",
    [
      ["#HotkeyInterval","lib/_HotkeyInterval.htm"],
      ["#HotkeyModifierTimeout","lib/_HotkeyModifierTimeout.htm"],
      ["#Hotstring","lib/_Hotstring.htm"],
      ["#If","lib/_If.htm"],
      ["#IfTimeOut","lib/_IfTimeout.htm"],
      ["#IfWin[Not]Active","lib/_IfWinActive.htm"],
      ["#IfWin[Not]Exist","lib/_IfWinActive.htm"],
      ["#InputLevel","lib/_InputLevel.htm"],
      ["#MaxHotkeysPerInterval","lib/_MaxHotkeysPerInterval.htm"],
      ["#MaxThreads","lib/_MaxThreads.htm"],
      ["#MaxThreadsBuffer","lib/_MaxThreadsBuffer.htm"],
      ["#MaxThreadsPerHotkey","lib/_MaxThreadsPerHotkey.htm"],
      ["#MenuMaskKey","lib/_MenuMaskKey.htm"],
      ["#UseHook","lib/_UseHook.htm"],
      ["Hotkey","lib/Hotkey.htm"],
      ["Hotstring()","lib/Hotstring.htm"],
      ["Hotstrings & auto-replace","Hotstrings.htm"],
      ["ListHotkeys","lib/ListHotkeys.htm"],
      ["Suspend","lib/Suspend.htm"]
    ]],
    ["#InstallKeybdHook","lib/_InstallKeybdHook.htm"],
    ["#InstallMouseHook","lib/_InstallMouseHook.htm"],
    ["#KeyHistory","lib/_KeyHistory.htm"],
    ["BlockInput","lib/BlockInput.htm"],
    ["Click","lib/Click.htm"],
    ["ControlClick","lib/ControlClick.htm"],
    ["ControlSend[Raw]","lib/ControlSend.htm"],
    ["CoordMode","lib/CoordMode.htm"],
    ["GetKeyName()","lib/GetKey.htm"],
    ["GetKeySC()","lib/GetKey.htm"],
    ["GetKeyState","lib/GetKeyState.htm"],
    ["GetKeyVK()","lib/GetKey.htm"],
    ["List of Keys","KeyList.htm"],
    ["KeyHistory","lib/KeyHistory.htm"],
    ["KeyWait","lib/KeyWait.htm"],
    ["Input","lib/Input.htm"],
    ["InputHook()","lib/InputHook.htm"],
    ["MouseClick","lib/MouseClick.htm"],
    ["MouseClickDrag","lib/MouseClickDrag.htm"],
    ["MouseGetPos","lib/MouseGetPos.htm"],
    ["MouseMove","lib/MouseMove.htm"],
    ["Send[Raw|Input|Play|Event]","lib/Send.htm"],
    ["SendLevel","lib/SendLevel.htm"],
    ["SendMode","lib/SendMode.htm"],
    ["SetCapsLockState","lib/SetNumScrollCapsLockState.htm"],
    ["SetDefaultMouseSpeed","lib/SetDefaultMouseSpeed.htm"],
    ["SetKeyDelay","lib/SetKeyDelay.htm"],
    ["SetMouseDelay","lib/SetMouseDelay.htm"],
    ["SetNumLockState","lib/SetNumScrollCapsLockState.htm"],
    ["SetScrollLockState","lib/SetNumScrollCapsLockState.htm"],
    ["SetStoreCapsLockMode","lib/SetStoreCapsLockMode.htm"]
  ]],
  ["Misc.","",
  [
    ["AutoTrim","lib/AutoTrim.htm"],
    ["Edit","lib/Edit.htm"],
    ["Func()","lib/Func.htm#Func"],
    ["IsByRef()","lib/IsByRef.htm"],
    ["IsFunc()","lib/IsFunc.htm"],
    ["IsLabel()","lib/IsLabel.htm"],
    ["IsObject()","lib/IsObject.htm"],
    ["IsSet()","lib/IsSet.htm"],
    ["ListLines","lib/ListLines.htm"],
    ["ListVars","lib/ListVars.htm"],
    ["OutputDebug","lib/OutputDebug.htm"],
    ["Transform","lib/Transform.htm"],
    ["URLDownloadToFile","lib/URLDownloadToFile.htm"],
    ["VarSetCapacity()","lib/VarSetCapacity.htm"]
  ]],
  ["Object Types","",
  [
    ["Object","lib/Object.htm"],
    ["Enumerator Object","lib/Enumerator.htm"],
    ["Exception Object","lib/Throw.htm#Exception"],
    ["File Object","lib/File.htm"],
    ["Func Object","lib/Func.htm"],
    ["Function Objects","misc/Functor.htm"],
    ["InputHook Object","lib/InputHook.htm#object"],
    ["RegExMatch Object","lib/RegExMatch.htm#MatchObject"]
  ]],
  ["Process","",
  [
    ["Process","lib/Process.htm"],
    ["Run[Wait]","lib/Run.htm"],
    ["RunAs","lib/RunAs.htm"],
    ["Shutdown","lib/Shutdown.htm"]
  ]],
  ["Registry","",
  [
    ["Loop (registry)","lib/LoopReg.htm"],
    ["RegDelete","lib/RegDelete.htm"],
    ["RegRead","lib/RegRead.htm"],
    ["RegWrite","lib/RegWrite.htm"],
    ["SetRegView","lib/SetRegView.htm"]
  ]],
  ["Screen","",
  [
    ["ImageSearch","lib/ImageSearch.htm"],
    ["PixelGetColor","lib/PixelGetColor.htm"],
    ["PixelSearch","lib/PixelSearch.htm"]
  ]],
  ["Sound","",
  [
    ["SoundBeep","lib/SoundBeep.htm"],
    ["SoundGet","lib/SoundGet.htm"],
    ["SoundGetWaveVolume","lib/SoundGetWaveVolume.htm"],
    ["SoundPlay","lib/SoundPlay.htm"],
    ["SoundSet","lib/SoundSet.htm"],
    ["SoundSetWaveVolume","lib/SoundSetWaveVolume.htm"]
  ]],
  ["String","",
  [
    ["Asc()","lib/Asc.htm"],
    ["Chr()","lib/Chr.htm"],
    ["Format()","lib/Format.htm"],
    ["FormatTime","lib/FormatTime.htm"],
    ["If[Not]InString","lib/IfInString.htm"],
    ["If Var [not] in/contains MatchList","lib/IfIn.htm"],
    ["InStr()","lib/InStr.htm"],
    ["Loop (parse a string)","lib/LoopParse.htm"],
    ["Ord()","lib/Ord.htm"],
    ["RegEx Quick Reference","misc/RegEx-QuickRef.htm"],
    ["RegExMatch()","lib/RegExMatch.htm"],
    ["RegExReplace()","lib/RegExReplace.htm"],
    ["SetEnv (Var = Value)","lib/SetEnv.htm"],
    ["SetFormat","lib/SetFormat.htm"],
    ["Sort","lib/Sort.htm"],
    ["StringCaseSense","lib/StringCaseSense.htm"],
    ["StringGetPos","lib/StringGetPos.htm"],
    ["StringLeft/Right","lib/StringLeft.htm"],
    ["StringLen","lib/StringLen.htm"],
    ["StringLower/Upper","lib/StringLower.htm"],
    ["StringMid","lib/StringMid.htm"],
    ["StringReplace","lib/StringReplace.htm"],
    ["StringSplit","lib/StringSplit.htm"],
    ["StringTrimLeft/Right","lib/StringTrimLeft.htm"],
    ["StrGet()","lib/StrGet.htm"],
    ["StrLen()","lib/StrLen.htm"],
    ["StrPut()","lib/StrPut.htm"],
    ["StrReplace()","lib/StrReplace.htm"],
    ["StrSplit()","lib/StrSplit.htm"],
    ["SubStr()","lib/SubStr.htm"],
    ["Trim() / LTrim() / RTrim()","lib/Trim.htm"],
    ["VerCompare()","lib/VerCompare.htm"]
  ]],
  ["Window","",
  [
    ["Controls","",
    [
      ["Control","lib/Control.htm"],
      ["ControlClick","lib/ControlClick.htm"],
      ["ControlFocus","lib/ControlFocus.htm"],
      ["ControlGet","lib/ControlGet.htm"],
      ["ControlGetFocus","lib/ControlGetFocus.htm"],
      ["ControlGetPos","lib/ControlGetPos.htm"],
      ["ControlGetText","lib/ControlGetText.htm"],
      ["ControlMove","lib/ControlMove.htm"],
      ["ControlSend[Raw]","lib/ControlSend.htm"],
      ["ControlSetText","lib/ControlSetText.htm"],
      ["Menu","lib/Menu.htm"],
      ["PostMessage/SendMessage","lib/PostMessage.htm"],
      ["SetControlDelay","lib/SetControlDelay.htm"],
      ["WinMenuSelectItem","lib/WinMenuSelectItem.htm"]
    ]],
    ["Window Groups","",
    [
      ["GroupActivate","lib/GroupActivate.htm"],
      ["GroupAdd","lib/GroupAdd.htm"],
      ["GroupClose","lib/GroupClose.htm"],
      ["GroupDeactivate","lib/GroupDeactivate.htm"]
    ]],
    ["Window Titles","misc/WinTitle.htm"],
    ["#WinActivateForce","lib/_WinActivateForce.htm"],
    ["DetectHiddenText","lib/DetectHiddenText.htm"],
    ["DetectHiddenWindows","lib/DetectHiddenWindows.htm"],
    ["IfWin[Not]Active","lib/IfWinActive.htm"],
    ["IfWin[Not]Exist","lib/IfWinExist.htm"],
    ["SetTitleMatchMode","lib/SetTitleMatchMode.htm"],
    ["SetWinDelay","lib/SetWinDelay.htm"],
    ["StatusBarGetText","lib/StatusBarGetText.htm"],
    ["StatusBarWait","lib/StatusBarWait.htm"],
    ["WinActivate","lib/WinActivate.htm"],
    ["WinActivateBottom","lib/WinActivateBottom.htm"],
    ["WinActive()","lib/WinActive.htm"],
    ["WinClose","lib/WinClose.htm"],
    ["WinExist()","lib/WinExist.htm"],
    ["WinGet","lib/WinGet.htm"],
    ["WinGetActiveStats","lib/WinGetActiveStats.htm"],
    ["WinGetActiveTitle","lib/WinGetActiveTitle.htm"],
    ["WinGetClass","lib/WinGetClass.htm"],
    ["WinGetPos","lib/WinGetPos.htm"],
    ["WinGetText","lib/WinGetText.htm"],
    ["WinGetTitle","lib/WinGetTitle.htm"],
    ["WinHide","lib/WinHide.htm"],
    ["WinKill","lib/WinKill.htm"],
    ["WinMaximize","lib/WinMaximize.htm"],
    ["WinMinimize","lib/WinMinimize.htm"],
    ["WinMinimizeAll[Undo]","lib/WinMinimizeAll.htm"],
    ["WinMove","lib/WinMove.htm"],
    ["WinRestore","lib/WinRestore.htm"],
    ["WinSet","lib/WinSet.htm"],
    ["WinSetTitle","lib/WinSetTitle.htm"],
    ["WinShow","lib/WinShow.htm"],
    ["WinWait","lib/WinWait.htm"],
    ["WinWait[Not]Active","lib/WinWaitActive.htm"],
    ["WinWaitClose","lib/WinWaitClose.htm"]
  ]],
  ["#Directives","",
  [
    ["#AllowSameLineComments","lib/_AllowSameLineComments.htm"],
    ["#ClipboardTimeout","lib/_ClipboardTimeout.htm"],
    ["#CommentFlag","lib/_CommentFlag.htm"],
    ["#ErrorStdOut","lib/_ErrorStdOut.htm"],
    ["#EscapeChar","lib/_EscapeChar.htm"],
    ["#HotkeyInterval","lib/_HotkeyInterval.htm"],
    ["#HotkeyModifierTimeout","lib/_HotkeyModifierTimeout.htm"],
    ["#Hotstring","lib/_Hotstring.htm"],
    ["#If","lib/_If.htm"],
    ["#IfWin[Not]Active","lib/_IfWinActive.htm"],
    ["#IfWin[Not]Exist","lib/_IfWinActive.htm"],
    ["#IfTimeout","lib/_IfTimeout.htm"],
    ["#Include[Again]","lib/_Include.htm"],
    ["#InputLevel","lib/_InputLevel.htm"],
    ["#InstallKeybdHook","lib/_InstallKeybdHook.htm"],
    ["#InstallMouseHook","lib/_InstallMouseHook.htm"],
    ["#KeyHistory","lib/_KeyHistory.htm"],
    ["#MaxHotkeysPerInterval","lib/_MaxHotkeysPerInterval.htm"],
    ["#MaxMem","lib/_MaxMem.htm"],
    ["#MaxThreads","lib/_MaxThreads.htm"],
    ["#MaxThreadsBuffer","lib/_MaxThreadsBuffer.htm"],
    ["#MaxThreadsPerHotkey","lib/_MaxThreadsPerHotkey.htm"],
    ["#MenuMaskKey","lib/_MenuMaskKey.htm"],
    ["#NoEnv","lib/_NoEnv.htm"],
    ["#NoTrayIcon","lib/_NoTrayIcon.htm"],
    ["#Persistent","lib/_Persistent.htm"],
    ["#Requires","lib/_Requires.htm"],
    ["#SingleInstance","lib/_SingleInstance.htm"],
    ["#UseHook","lib/_UseHook.htm"],
    ["#Warn","lib/_Warn.htm"],
    ["#WinActivateForce","lib/_WinActivateForce.htm"]
  ]]
];
