{"id":24738776,"url":"https://github.com/leanx2/leanx","last_synced_at":"2025-03-22T18:43:23.707Z","repository":{"id":248533169,"uuid":"828960008","full_name":"LeanX2/LeanX","owner":"LeanX2","description":null,"archived":false,"fork":false,"pushed_at":"2025-02-13T10:28:28.000Z","size":196,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-13T11:31:57.545Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/LeanX2.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-07-15T13:22:51.000Z","updated_at":"2025-02-13T10:28:32.000Z","dependencies_parsed_at":null,"dependency_job_id":"4eb8df76-2f4b-4e96-a666-2d4059c003d2","html_url":"https://github.com/LeanX2/LeanX","commit_stats":null,"previous_names":["leanx2/leanx"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LeanX2%2FLeanX","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LeanX2%2FLeanX/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LeanX2%2FLeanX/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LeanX2%2FLeanX/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LeanX2","download_url":"https://codeload.github.com/LeanX2/LeanX/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245006796,"owners_count":20546136,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-01-27T22:55:37.011Z","updated_at":"2025-03-22T18:43:23.677Z","avatar_url":"https://github.com/LeanX2.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"-- https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\n--[[\n\tNew Dex\n\tFinal Version\n\tDeveloped by Moon\n\tModified for Infinite Yield\n\t\n\tDex is a debugging suite designed to help the user debug games and find any potential vulnerabilities.\n]]\n\nlocal nodes = {}\nlocal selection\nlocal cloneref = cloneref or function(...) return ... end\n\nlocal EmbeddedModules = {\nExplorer = function()\n--[[\n\tExplorer App Module\n\t\n\tThe main explorer interface\n]]\n\n-- Common Locals\nlocal Main,Lib,Apps,Settings -- Main Containers\nlocal Explorer, Properties, ScriptViewer, Notebook -- Major Apps\nlocal API,RMD,env,service,plr,create,createSimple -- Main Locals\n\nlocal function initDeps(data)\n\tMain = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\tLib = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\tApps = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\tSettings = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\n\tAPI = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\tRMD = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\tenv = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\tservice = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\tplr = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\tcreate = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\tcreateSimple = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\nend\n\nlocal function initAfterMain()\n\tExplorer = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\tProperties = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\tScriptViewer = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\tNotebook = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\nend\n\nlocal function main()\n\tlocal Explorer = {}\n\tlocal tree,listEntries,explorerOrders,searchResults,specResults = {},{},{},{},{}\n\tlocal expanded\n\tlocal entryTemplate,treeFrame,toolBar,descendantAddedCon,descendantRemovingCon,itemChangedCon\n\tlocal ffa = game[\"Run Service\"]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\tlocal getDescendants = game[\"Run Service\"]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\tlocal getTextSize = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\tlocal updateDebounce,refreshDebounce = false,false\n\tlocal nilNode = {Obj = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(\"Folder\")}\n\tlocal idCounter = 0\n\tlocal scrollV,scrollH,clipboard\n\tlocal renameBox,renamingNode,searchFunc\n\tlocal sortingEnabled,autoUpdateSearch\n\tlocal table,math = table,math\n\tlocal nilMap,nilCons = {},{}\n\tlocal connectSignal = game[\"Run Service\"]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\tlocal addObject,removeObject,moveObject = nil,nil,nil\n\n\taddObject = function(root)\n\t\tif nodes[root] then return end\n\n\t\tlocal isNil = false\n\t\tlocal rootParObj = ffa(root,\"Instance\")\n\t\tlocal par = nodes[rootParObj]\n\n\t\t-- Nil Handling\n\t\tif not par then\n\t\t\tif nilMap[root] then\n\t\t\t\tnilCons[root] = nilCons[root] or {\n\t\t\t\t\tconnectSignal(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,addObject),\n\t\t\t\t\tconnectSignal(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,moveObject),\n\t\t\t\t}\n\t\t\t\tpar = nilNode\n\t\t\t\tisNil = true\n\t\t\telse\n\t\t\t\treturn\n\t\t\tend\n\t\telseif nilMap[rootParObj] or par == nilNode then\n\t\t\tnilMap[root] = true\n\t\t\tnilCons[root] = nilCons[root] or {\n\t\t\t\tconnectSignal(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,addObject),\n\t\t\t\tconnectSignal(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,moveObject),\n\t\t\t}\n\t\t\tisNil = true\n\t\tend\n\n\t\tlocal newNode = {Obj = root, Parent = par}\n\t\tnodes[root] = newNode\n\n\t\t-- Automatic sorting if expanded\n\t\tif sortingEnabled and expanded[par] and https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then\n\t\t\tlocal left,right = 1,#par\n\t\t\tlocal floor = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tlocal sorter = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tlocal pos = (right == 0 and 1)\n\n\t\t\tif not pos then\n\t\t\t\twhile true do\n\t\t\t\t\tif left \u003e= right then\n\t\t\t\t\t\tif sorter(newNode,par[left]) then\n\t\t\t\t\t\t\tpos = left\n\t\t\t\t\t\telse\n\t\t\t\t\t\t\tpos = left+1\n\t\t\t\t\t\tend\n\t\t\t\t\t\tbreak\n\t\t\t\t\tend\n\n\t\t\t\t\tlocal mid = floor((left+right)/2)\n\t\t\t\t\tif sorter(newNode,par[mid]) then\n\t\t\t\t\t\tright = mid-1\n\t\t\t\t\telse\n\t\t\t\t\t\tleft = mid+1\n\t\t\t\t\tend\n\t\t\t\tend\n\t\t\tend\n\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(par,pos,newNode)\n\t\telse\n\t\t\tpar[#par+1] = newNode\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = nil\n\t\tend\n\n\t\tlocal insts = getDescendants(root)\n\t\tfor i = 1,#insts do\n\t\t\tlocal obj = insts[i]\n\t\t\tif nodes[obj] then continue end -- Deferred\n\t\t\t\n\t\t\tlocal par = nodes[ffa(obj,\"Instance\")]\n\t\t\tif not par then continue end\n\t\t\tlocal newNode = {Obj = obj, Parent = par}\n\t\t\tnodes[obj] = newNode\n\t\t\tpar[#par+1] = newNode\n\n\t\t\t-- Nil Handling\n\t\t\tif isNil then\n\t\t\t\tnilMap[obj] = true\n\t\t\t\tnilCons[obj] = nilCons[obj] or {\n\t\t\t\t\tconnectSignal(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,addObject),\n\t\t\t\t\tconnectSignal(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,moveObject),\n\t\t\t\t}\n\t\t\tend\n\t\tend\n\n\t\tif searchFunc and autoUpdateSearch then\n\t\t\tsearchFunc({newNode})\n\t\tend\n\n\t\tif not updateDebounce and https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(par) then\n\t\t\tif expanded[par] then\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\t\telseif not refreshDebounce then\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\t\tend\n\t\tend\n\tend\n\n\tremoveObject = function(root)\n\t\tlocal node = nodes[root]\n\t\tif not node then return end\n\n\t\t-- Nil Handling\n\t\tif nilMap[https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip] then\n\t\t\tmoveObject(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip)\n\t\t\treturn\n\t\tend\n\n\t\tlocal par = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tif par then\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = true\n\t\tend\n\n\t\tlocal function recur(root)\n\t\t\tfor i = 1,#root do\n\t\t\t\tlocal node = root[i]\n\t\t\t\tif not https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then\n\t\t\t\t\tnodes[https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip] = nil\n\t\t\t\t\tif #node \u003e 0 then recur(node) end\n\t\t\t\tend\n\t\t\tend\n\t\tend\n\t\trecur(node)\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = true\n\t\tnodes[root] = nil\n\n\t\tif par and not updateDebounce and https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(par) then\n\t\t\tif expanded[par] then\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\t\telseif not refreshDebounce then\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\t\tend\n\t\tend\n\tend\n\n\tmoveObject = function(obj)\n\t\tlocal node = nodes[obj]\n\t\tif not node then return end\n\n\t\tlocal oldPar = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tlocal newPar = nodes[ffa(obj,\"Instance\")]\n\t\tif oldPar == newPar then return end\n\n\t\t-- Nil Handling\n\t\tif not newPar then\n\t\t\tif nilMap[obj] then\n\t\t\t\tnewPar = nilNode\n\t\t\telse\n\t\t\t\treturn\n\t\t\tend\n\t\telseif nilMap[https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip] or newPar == nilNode then\n\t\t\tnilMap[obj] = true\n\t\t\tnilCons[obj] = nilCons[obj] or {\n\t\t\t\tconnectSignal(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,addObject),\n\t\t\t\tconnectSignal(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,moveObject),\n\t\t\t}\n\t\tend\n\n\t\tif oldPar then\n\t\t\tlocal parPos = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(oldPar,node)\n\t\t\tif parPos then https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(oldPar,parPos) end\n\t\tend\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = nil\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = newPar\n\n\t\tif sortingEnabled and expanded[newPar] and https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then\n\t\t\tlocal left,right = 1,#newPar\n\t\t\tlocal floor = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tlocal sorter = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tlocal pos = (right == 0 and 1)\n\n\t\t\tif not pos then\n\t\t\t\twhile true do\n\t\t\t\t\tif left \u003e= right then\n\t\t\t\t\t\tif sorter(node,newPar[left]) then\n\t\t\t\t\t\t\tpos = left\n\t\t\t\t\t\telse\n\t\t\t\t\t\t\tpos = left+1\n\t\t\t\t\t\tend\n\t\t\t\t\t\tbreak\n\t\t\t\t\tend\n\n\t\t\t\t\tlocal mid = floor((left+right)/2)\n\t\t\t\t\tif sorter(node,newPar[mid]) then\n\t\t\t\t\t\tright = mid-1\n\t\t\t\t\telse\n\t\t\t\t\t\tleft = mid+1\n\t\t\t\t\tend\n\t\t\t\tend\n\t\t\tend\n\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(newPar,pos,node)\n\t\telse\n\t\t\tnewPar[#newPar+1] = node\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = nil\n\t\tend\n\n\t\tif searchFunc and searchResults[node] then\n\t\t\tlocal currentNode = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\twhile currentNode and (not searchResults[currentNode] or expanded[currentNode] == 0) do\n\t\t\t\texpanded[currentNode] = true\n\t\t\t\tsearchResults[currentNode] = true\n\t\t\t\tcurrentNode = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tend\n\t\tend\n\n\t\tif not updateDebounce and (https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(newPar) or https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(oldPar)) then\n\t\t\tif expanded[newPar] or expanded[oldPar] then\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\t\telseif not refreshDebounce then\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\t\tend\n\t\tend\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = 0\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = 0\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = 20\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = 32\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = {}\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function()\n\t\trenameBox = create({{1,\"TextBox\",{https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0.17647059261799,0.17647059261799,0.17647059261799),https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0.062745101749897,0.51764708757401,1),BorderMode=2,ClearTextOnFocus=false,Font=3,Name=\"RenameBox\",https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0.69803923368454,0.69803923368454,0.69803923368454),https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,26,0,2),https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,200,0,16),Text=\"\",https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(1,1,1),TextSize=14,TextXAlignment=0,Visible=false,ZIndex=2}}})\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(function()\n\t\t\tif not renamingNode then return end\n\n\t\t\tpcall(function() https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip end)\n\t\t\trenamingNode = nil\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\tend)\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(function()\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = 1\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip + 1\n\t\tend)\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function(node)\n\t\trenamingNode = node\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = tostring(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip)\n\t\trenameBox:CaptureFocus()\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function(val)\n\t\tsortingEnabled = val\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = val\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function()\n\t\tlocal maxNodes = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip / 20)\n\t\tlocal maxX = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tlocal totalWidth = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip + https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = maxNodes\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = #tree + 1\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = maxX\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = totalWidth\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = #tree + 1 \u003e maxNodes\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = totalWidth \u003e maxX\n\n\t\tlocal oldSize = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(1,(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip and -16 or 0),1,(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip and -39 or -23))\n\t\tif oldSize ~= https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\telse\n\t\t\tscrollV:Update()\n\t\t\tscrollH:Update()\n\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,maxX-100,0,16)\n\n\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip and https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,16,1,-39)\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(1,-16,0,16)\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = true\n\t\t\telse\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,16,1,-23)\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(1,0,0,16)\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = false\n\t\t\tend\n\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tend\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function(a,b)\n\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip or https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then return false end -- Ghost node\n\n\t\tlocal aClass = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tlocal bClass = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tif not aClass then aClass = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = aClass end\n\t\tif not bClass then bClass = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = bClass end\n\n\t\tlocal aOrder = explorerOrders[aClass]\n\t\tlocal bOrder = explorerOrders[bClass]\n\t\tif not aOrder then aOrder = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[aClass] and tonumber(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[aClass].ExplorerOrder) or 9999 explorerOrders[aClass] = aOrder end\n\t\tif not bOrder then bOrder = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[bClass] and tonumber(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[bClass].ExplorerOrder) or 9999 explorerOrders[bClass] = bOrder end\n\n\t\tif aOrder ~= bOrder then\n\t\t\treturn aOrder \u003c bOrder\n\t\telse\n\t\t\tlocal aName,bName = tostring(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip),tostring(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip)\n\t\t\tif aName ~= bName then\n\t\t\t\treturn aName \u003c bName\n\t\t\telseif aClass ~= bClass then\n\t\t\t\treturn aClass \u003c bClass\n\t\t\telse\n\t\t\t\tlocal aId = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip if not aId then aId = idCounter idCounter = (idCounter+0.001)%999999999 https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = aId end\n\t\t\t\tlocal bId = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip if not bId then bId = idCounter idCounter = (idCounter+0.001)%999999999 https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = bId end\n\t\t\t\treturn aId \u003c bId\n\t\t\tend\n\t\tend\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function()\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(tree)\n\t\tlocal maxNameWidth,maxDepth,count = 0,1,1\n\t\tlocal nameCache = {}\n\t\tlocal font = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tlocal size = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,20)\n\t\tlocal useNameWidth = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tlocal tSort = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tlocal sortFunc = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tlocal isSearching = (expanded == https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip)\n\t\tlocal textServ = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\n\t\tlocal function recur(root,depth)\n\t\t\tif depth \u003e maxDepth then maxDepth = depth end\n\t\t\tdepth = depth + 1\n\t\t\tif sortingEnabled and not https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then\n\t\t\t\ttSort(root,sortFunc)\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = true\n\t\t\tend\n\t\t\tfor i = 1,#root do\n\t\t\t\tlocal n = root[i]\n\n\t\t\t\tif (isSearching and not searchResults[n]) or https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then continue end\n\n\t\t\t\tif useNameWidth then\n\t\t\t\t\tlocal nameWidth = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\t\tif not nameWidth then\n\t\t\t\t\t\tlocal objName = tostring(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip)\n\t\t\t\t\t\tnameWidth = nameCache[objName]\n\t\t\t\t\t\tif not nameWidth then\n\t\t\t\t\t\t\tnameWidth = getTextSize(textServ,objName,14,font,size).X\n\t\t\t\t\t\t\tnameCache[objName] = nameWidth\n\t\t\t\t\t\tend\n\t\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = nameWidth\n\t\t\t\t\tend\n\t\t\t\t\tif nameWidth \u003e maxNameWidth then\n\t\t\t\t\t\tmaxNameWidth = nameWidth\n\t\t\t\t\tend\n\t\t\t\tend\n\n\t\t\t\ttree[count] = n\n\t\t\t\tcount = count + 1\n\t\t\t\tif expanded[n] and #n \u003e 0 then\n\t\t\t\t\trecur(n,depth)\n\t\t\t\tend\n\t\t\tend\n\t\tend\n\n\t\trecur(nodes[game[\"Run Service\"].Parent],1)\n\n\t\t-- Nil Instances\n\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then\n\t\t\tif not (isSearching and not searchResults[nilNode]) then\n\t\t\t\ttree[count] = nilNode\n\t\t\t\tcount = count + 1\n\t\t\t\tif expanded[nilNode] then\n\t\t\t\t\trecur(nilNode,2)\n\t\t\t\tend\n\t\t\tend\n\t\tend\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = maxNameWidth\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = maxDepth\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = useNameWidth and https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip*maxDepth + maxNameWidth + 26 or https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip*maxDepth + 226\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function(offX,offY)\n\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then return end\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = true\n\n\t\tlocal dragTree = treeFrame:Clone()\n\t\tdragTree:ClearAllChildren()\n\n\t\tfor i,v in pairs(listEntries) do\n\t\t\tlocal node = tree[i + https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip]\n\t\t\tif node and https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[node] then\n\t\t\t\tlocal clone = v:Clone()\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = false\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = false\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = dragTree\n\t\t\tend\n\t\tend\n\n\t\tlocal newGui = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(\"ScreenGui\")\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = newGui\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(newGui)\n\n\t\tlocal dragOutline = create({\n\t\t\t{1,\"Frame\",{https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(1,1,1),BackgroundTransparency=1,Name=\"DragSelect\",https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(1,0,1,0),}},\n\t\t\t{2,\"Frame\",{https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(1,1,1),BorderSizePixel=0,Name=\"Line\",Parent={1},https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(1,0,0,1),ZIndex=2,}},\n\t\t\t{3,\"Frame\",{https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(1,1,1),BorderSizePixel=0,Name=\"Line\",Parent={1},https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,0,1,-1),https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(1,0,0,1),ZIndex=2,}},\n\t\t\t{4,\"Frame\",{https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(1,1,1),BorderSizePixel=0,Name=\"Line\",Parent={1},https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,1,1,0),ZIndex=2,}},\n\t\t\t{5,\"Frame\",{https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(1,1,1),BorderSizePixel=0,Name=\"Line\",Parent={1},https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(1,-1,0,0),https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,1,1,0),ZIndex=2,}},\n\t\t})\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = treeFrame\n\n\n\t\tlocal mouse = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip or https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\tlocal function move()\n\t\t\tlocal posX = mouse.X - offX\n\t\t\tlocal posY = mouse.Y - offY\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,posX,0,posY)\n\n\t\t\tfor i = 1,#listEntries do\n\t\t\t\tlocal entry = listEntries[i]\n\t\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(entry) then\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,0,https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip)\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,0,20)\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = true\n\t\t\t\t\treturn\n\t\t\t\tend\n\t\t\tend\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = false\n\t\tend\n\t\tmove()\n\n\t\tlocal input = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tlocal mouseEvent,releaseEvent\n\n\t\tmouseEvent = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(function(input)\n\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip == https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then\n\t\t\t\tmove()\n\t\t\tend\n\t\tend)\n\n\t\treleaseEvent = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(function(input)\n\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip == https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then\n\t\t\t\treleaseEvent:Disconnect()\n\t\t\t\tmouseEvent:Disconnect()\n\t\t\t\tnewGui:Destroy()\n\t\t\t\tdragOutline:Destroy()\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = false\n\n\t\t\t\tfor i = 1,#listEntries do\n\t\t\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(listEntries[i]) then\n\t\t\t\t\t\tlocal node = tree[i + https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip]\n\t\t\t\t\t\tif node then\n\t\t\t\t\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[node] then return end\n\t\t\t\t\t\t\tlocal newPar = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\t\t\t\tlocal sList = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\t\t\t\tfor i = 1,#sList do\n\t\t\t\t\t\t\t\tlocal n = sList[i]\n\t\t\t\t\t\t\t\tpcall(function() https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = newPar end)\n\t\t\t\t\t\t\tend\n\t\t\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(sList[1])\n\t\t\t\t\t\tend\n\t\t\t\t\t\tbreak\n\t\t\t\t\tend\n\t\t\t\tend\n\t\t\tend\n\t\tend)\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function(index)\n\t\tlocal newEntry = entryTemplate:Clone()\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,0,0,20*(index-1))\n\n\t\tlocal isRenaming = false\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(function(input)\n\t\t\tlocal node = tree[index + https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip]\n\t\t\tif not node or https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[node] or https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip ~= https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then return end\n\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = 0\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = 0\n\t\tend)\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(function(input)\n\t\t\tlocal node = tree[index + https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip]\n\t\t\tif not node or https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[node] or https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip ~= https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then return end\n\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = 1\n\t\tend)\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(function()\n\n\t\tend)\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(function()\n\n\t\tend)\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(function(input)\n\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip == https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then\n\t\t\t\tlocal releaseEvent,mouseEvent\n\n\t\t\t\tlocal mouse = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip or plr:GetMouse()\n\t\t\t\tlocal startX = mouse.X\n\t\t\t\tlocal startY = mouse.Y\n\n\t\t\t\tlocal listOffsetX = startX - https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\tlocal listOffsetY = startY - https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\n\t\t\t\treleaseEvent = cloneref(game[\"Run Service\"].Parent:GetService(\"UserInputService\")).InputEnded:Connect(function(input)\n\t\t\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip == https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then\n\t\t\t\t\t\treleaseEvent:Disconnect()\n\t\t\t\t\t\tmouseEvent:Disconnect()\n\t\t\t\t\tend\n\t\t\t\tend)\n\n\t\t\t\tmouseEvent = cloneref(game[\"Run Service\"].Parent:GetService(\"UserInputService\")).InputChanged:Connect(function(input)\n\t\t\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip == https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then\n\t\t\t\t\t\tlocal deltaX = mouse.X - startX\n\t\t\t\t\t\tlocal deltaY = mouse.Y - startY\n\t\t\t\t\t\tlocal dist = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(deltaX^2 + deltaY^2)\n\n\t\t\t\t\t\tif dist \u003e 5 then\n\t\t\t\t\t\t\treleaseEvent:Disconnect()\n\t\t\t\t\t\t\tmouseEvent:Disconnect()\n\t\t\t\t\t\t\tisRenaming = false\n\t\t\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(listOffsetX,listOffsetY)\n\t\t\t\t\t\tend\n\t\t\t\t\tend\n\t\t\t\tend)\n\t\t\tend\n\t\tend)\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(function()\n\n\t\tend)\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(function(input)\n\t\t\tlocal node = tree[index + https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip]\n\t\t\tif not node or https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip ~= https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then return end\n\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, expanded[node] and \"Collapse_Over\" or \"Expand_Over\")\n\t\tend)\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(function(input)\n\t\t\tlocal node = tree[index + https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip]\n\t\t\tif not node or https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip ~= https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then return end\n\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, expanded[node] and \"Collapse\" or \"Expand\")\n\t\tend)\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(function()\n\t\t\tlocal node = tree[index + https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip]\n\t\t\tif not node or #node == 0 then return end\n\n\t\t\texpanded[node] = not expanded[node]\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\tend)\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = treeFrame\n\t\treturn newEntry\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function()\n\t\tlocal maxNodes = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip((https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip) / 20),0)\t\n\t\tlocal renameNodeVisible = false\n\t\tlocal isa = game[\"Run Service\"]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\n\t\tfor i = 1,maxNodes do\n\t\t\tlocal entry = listEntries[i]\n\t\t\tif not listEntries[i] then entry = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(i) listEntries[i] = entry https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(entry) end\n\n\t\t\tlocal node = tree[i + https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip]\n\t\t\tif node then\n\t\t\t\tlocal obj = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\tlocal depth = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip*https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(node)\n\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = true\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,0,https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip)\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,0,20)\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = tostring(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip)\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,depth,0,0)\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(1,-depth,1,0)\n\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = (https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip and https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip or https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip)\n\n\t\t\t\tif (isa(obj,\"LocalScript\") or isa(obj,\"Script\")) and https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, isa(obj,\"LocalScript\") and \"LocalScript_Disabled\" or \"Script_Disabled\")\n\t\t\t\telse\n\t\t\t\t\tlocal rmdEntry = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip]\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, rmdEntry and https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip or 0)\n\t\t\t\tend\n\n\t\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[node] then\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = 0\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = 0\n\t\t\t\telse\n\t\t\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(entry) then\n\t\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\t\telse\n\t\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = 1\n\t\t\t\t\tend\n\t\t\t\tend\n\n\t\t\t\tif node == renamingNode then\n\t\t\t\t\trenameNodeVisible = true\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,depth+https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,0,https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip+2)\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = true\n\t\t\t\tend\n\n\t\t\t\tif #node \u003e 0 and expanded[node] ~= 0 then\n\t\t\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip) then\n\t\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, expanded[node] and \"Collapse_Over\" or \"Expand_Over\")\n\t\t\t\t\telse\n\t\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, expanded[node] and \"Collapse\" or \"Expand\")\n\t\t\t\t\tend\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = true\n\t\t\t\telse\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = false\n\t\t\t\tend\n\t\t\telse\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = false\n\t\t\tend\n\t\tend\n\n\t\tif not renameNodeVisible then\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = false\n\t\tend\n\n\t\tfor i = maxNodes+1, #listEntries do\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(listEntries[i])\n\t\t\tlistEntries[i]:Destroy()\n\t\t\tlistEntries[i] = nil\n\t\tend\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function(instant)\n\t\tupdateDebounce = true\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(not instant and 0.1)\n\t\tif not updateDebounce then return end\n\t\tupdateDebounce = false\n\t\tif not https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip() then return end\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function(norefresh)\n\t\tupdateDebounce = false\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\tif not norefresh then https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip() end\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function()\n\t\trefreshDebounce = true\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0.1)\n\t\trefreshDebounce = false\n\t\tif updateDebounce or not https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip() then return end\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function(node)\n\t\tif not node then return end\n\n\t\tlocal curNode = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\twhile curNode do\n\t\t\tif not expanded[curNode] then return false end\n\t\t\tcurNode = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tend\n\t\treturn true\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function(node)\n\t\tlocal depth = 0\n\n\t\tif node == nilNode then\n\t\t\treturn 1\n\t\tend\n\n\t\tlocal curNode = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\twhile curNode do\n\t\t\tif curNode == nilNode then depth = depth + 1 end\n\t\t\tcurNode = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tdepth = depth + 1\n\t\tend\n\t\treturn depth\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function()\n\t\tif descendantAddedCon then descendantAddedCon:Disconnect() end\n\t\tif descendantRemovingCon then descendantRemovingCon:Disconnect() end\n\t\tif itemChangedCon then itemChangedCon:Disconnect() end\n\n\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then\n\t\t\tdescendantAddedCon = game[\"Run Service\"]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(addObject)\n\t\t\tdescendantRemovingCon = game[\"Run Service\"]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(removeObject)\n\t\telse\n\t\t\tdescendantAddedCon = game[\"Run Service\"]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(function(obj) pcall(addObject,obj) end)\n\t\t\tdescendantRemovingCon = game[\"Run Service\"]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(function(obj) pcall(removeObject,obj) end)\n\t\tend\n\n\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then\n\t\t\titemChangedCon = game[\"Run Service\"]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(function(obj,prop)\n\t\t\t\tif prop == \"Parent\" and nodes[obj] then\n\t\t\t\t\tmoveObject(obj)\n\t\t\t\telseif prop == \"Name\" and nodes[obj] then\n\t\t\t\t\tnodes[obj].NameWidth = nil\n\t\t\t\tend\n\t\t\tend)\n\t\telse\n\t\t\titemChangedCon = game[\"Run Service\"]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(function(obj,prop)\n\t\t\t\tif prop == \"Parent\" and nodes[obj] then\n\t\t\t\t\tmoveObject(obj)\n\t\t\t\tend\n\t\t\tend)\n\t\tend\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function(node)\n\t\tif not node then return end\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(node)\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(true)\n\t\tlocal visibleSpace = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\n\t\tfor i,v in next,tree do\n\t\t\tif v == node then\n\t\t\t\tlocal relative = i - 1\n\t\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip \u003e relative then\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = relative\n\t\t\t\telseif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip + visibleSpace - 1 \u003c= relative then\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = relative - visibleSpace + 2\n\t\t\t\tend\n\t\t\tend\n\t\tend\n\n\t\tscrollV:Update() https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function(obj)\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(nodes[obj])\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function(node,expandRoot)\n\t\tif not node then return end\n\n\t\tlocal hasExpanded = false\n\n\t\tif expandRoot and not expanded[node] then\n\t\t\texpanded[node] = true\n\t\t\thasExpanded = true\n\t\tend\n\n\t\tlocal currentNode = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\twhile currentNode do\n\t\t\thasExpanded = true\n\t\t\texpanded[currentNode] = true\n\t\t\tcurrentNode = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tend\n\n\t\tif hasExpanded and not updateDebounce then\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip)(true)\n\t\tend\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function()\n\t\tlocal context = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tcontext:Clear()\n\n\t\tlocal sList = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tlocal sMap = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tlocal emptyClipboard = #clipboard == 0\n\t\tlocal presentClasses = {}\n\t\tlocal apiClasses = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\n\t\tfor i = 1, #sList do\n\t\t\tlocal node = sList[i]\n\t\t\tlocal class = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tif not class then class = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = class end\n\t\t\tlocal curClass = apiClasses[class]\n\t\t\twhile curClass and not presentClasses[https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip] do\n\t\t\t\tpresentClasses[https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip] = true\n\t\t\t\tcurClass = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tend\n\t\tend\n\n\t\tcontext:AddRegistered(\"CUT\")\n\t\tcontext:AddRegistered(\"COPY\")\n\t\tcontext:AddRegistered(\"PASTE\", emptyClipboard)\n\t\tcontext:AddRegistered(\"DUPLICATE\")\n\t\tcontext:AddRegistered(\"DELETE\")\n\t\tcontext:AddRegistered(\"RENAME\", #sList ~= 1)\n\n\t\tcontext:AddDivider()\n\t\tcontext:AddRegistered(\"GROUP\")\n\t\tcontext:AddRegistered(\"UNGROUP\")\n\t\tcontext:AddRegistered(\"SELECT_CHILDREN\")\n\t\tcontext:AddRegistered(\"JUMP_TO_PARENT\")\n\t\tcontext:AddRegistered(\"EXPAND_ALL\")\n\t\tcontext:AddRegistered(\"COLLAPSE_ALL\")\n\n\t\tcontext:AddDivider()\n\t\tif expanded == https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then context:AddRegistered(\"CLEAR_SEARCH_AND_JUMP_TO\") end\n\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then context:AddRegistered(\"COPY_PATH\") end\n\t\tcontext:AddRegistered(\"INSERT_OBJECT\")\n\t\tcontext:AddRegistered(\"SAVE_INST\")\n\t\tcontext:AddRegistered(\"CALL_FUNCTION\")\n\t\tcontext:AddRegistered(\"VIEW_CONNECTIONS\")\n\t\tcontext:AddRegistered(\"GET_REFERENCES\")\n\t\tcontext:AddRegistered(\"VIEW_API\")\n\t\t\n\t\tcontext:QueueDivider()\n\n\t\tif presentClasses[\"BasePart\"] or presentClasses[\"Model\"] then\n\t\t\tcontext:AddRegistered(\"TELEPORT_TO\")\n\t\t\tcontext:AddRegistered(\"VIEW_OBJECT\")\n\t\tend\n\n\t\tif presentClasses[\"TouchTransmitter\"] then context:AddRegistered(\"FIRE_TOUCHTRANSMITTER\", firetouchinterest == nil) end\n\t\tif presentClasses[\"ClickDetector\"] then context:AddRegistered(\"FIRE_CLICKDETECTOR\", fireclickdetector == nil) end\n\t\tif presentClasses[\"ProximityPrompt\"] then context:AddRegistered(\"FIRE_PROXIMITYPROMPT\", fireproximityprompt == nil) end\n\t\tif presentClasses[\"Player\"] then context:AddRegistered(\"SELECT_CHARACTER\") end\n\t\tif presentClasses[\"Players\"] then context:AddRegistered(\"SELECT_LOCAL_PLAYER\") end\n\t\tif presentClasses[\"LuaSourceContainer\"] then context:AddRegistered(\"VIEW_SCRIPT\") end\n\n\t\tif sMap[nilNode] then\n\t\t\tcontext:AddRegistered(\"REFRESH_NIL\")\n\t\t\tcontext:AddRegistered(\"HIDE_NIL\")\n\t\tend\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tcontext:Show()\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function()\n\t\tlocal context = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\n\t\tcontext:Register(\"CUT\",{Name = \"Cut\", IconMap = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, Icon = \"Cut\", DisabledIcon = \"Cut_Disabled\", Shortcut = \"Ctrl+Z\", OnClick = function()\n\t\t\tlocal destroy,clone = game[\"Run Service\"]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,game[\"Run Service\"]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tlocal sList,newClipboard = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,{}\n\t\t\tlocal count = 1\n\t\t\tfor i = 1,#sList do\n\t\t\t\tlocal inst = sList[i].Obj\n\t\t\t\tlocal s,cloned = pcall(clone,inst)\n\t\t\t\tif s and cloned then\n\t\t\t\t\tnewClipboard[count] = cloned\n\t\t\t\t\tcount = count + 1\n\t\t\t\tend\n\t\t\t\tpcall(destroy,inst)\n\t\t\tend\n\t\t\tclipboard = newClipboard\n\t\t\tselection:Clear()\n\t\tend})\n\n\t\tcontext:Register(\"COPY\",{Name = \"Copy\", IconMap = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, Icon = \"Copy\", DisabledIcon = \"Copy_Disabled\", Shortcut = \"Ctrl+C\", OnClick = function()\n\t\t\tlocal clone = game[\"Run Service\"]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tlocal sList,newClipboard = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,{}\n\t\t\tlocal count = 1\n\t\t\tfor i = 1,#sList do\n\t\t\t\tlocal inst = sList[i].Obj\n\t\t\t\tlocal s,cloned = pcall(clone,inst)\n\t\t\t\tif s and cloned then\n\t\t\t\t\tnewClipboard[count] = cloned\n\t\t\t\t\tcount = count + 1\n\t\t\t\tend\n\t\t\tend\n\t\t\tclipboard = newClipboard\n\t\tend})\n\n\t\tcontext:Register(\"PASTE\",{Name = \"Paste Into\", IconMap = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, Icon = \"Paste\", DisabledIcon = \"Paste_Disabled\", Shortcut = \"Ctrl+Shift+V\", OnClick = function()\n\t\t\tlocal sList = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tlocal newSelection = {}\n\t\t\tlocal count = 1\n\t\t\tfor i = 1,#sList do\n\t\t\t\tlocal node = sList[i]\n\t\t\t\tlocal inst = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(node,true)\n\t\t\t\tfor c = 1,#clipboard do\n\t\t\t\t\tlocal cloned = clipboard[c]:Clone()\n\t\t\t\t\tif cloned then\n\t\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = inst\n\t\t\t\t\t\tlocal clonedNode = nodes[cloned]\n\t\t\t\t\t\tif clonedNode then newSelection[count] = clonedNode count = count + 1 end\n\t\t\t\t\tend\n\t\t\t\tend\n\t\t\tend\n\t\t\tselection:SetTable(newSelection)\n\n\t\t\tif #newSelection \u003e 0 then\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(newSelection[1])\n\t\t\tend\n\t\tend})\n\n\t\tcontext:Register(\"DUPLICATE\",{Name = \"Duplicate\", IconMap = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, Icon = \"Copy\", DisabledIcon = \"Copy_Disabled\", Shortcut = \"Ctrl+D\", OnClick = function()\n\t\t\tlocal clone = game[\"Run Service\"]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tlocal sList = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tlocal newSelection = {}\n\t\t\tlocal count = 1\n\t\t\tfor i = 1,#sList do\n\t\t\t\tlocal node = sList[i]\n\t\t\t\tlocal inst = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\tlocal instPar = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip and https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(node)\n\t\t\t\tlocal s,cloned = pcall(clone,inst)\n\t\t\t\tif s and cloned then\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = instPar\n\t\t\t\t\tlocal clonedNode = nodes[cloned]\n\t\t\t\t\tif clonedNode then newSelection[count] = clonedNode count = count + 1 end\n\t\t\t\tend\n\t\t\tend\n\n\t\t\tselection:SetTable(newSelection)\n\t\t\tif #newSelection \u003e 0 then\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(newSelection[1])\n\t\t\tend\n\t\tend})\n\n\t\tcontext:Register(\"DELETE\",{Name = \"Delete\", IconMap = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, Icon = \"Delete\", DisabledIcon = \"Delete_Disabled\", Shortcut = \"Del\", OnClick = function()\n\t\t\tlocal destroy = game[\"Run Service\"]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tlocal sList = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tfor i = 1,#sList do\n\t\t\t\tpcall(destroy,sList[i].Obj)\n\t\t\tend\n\t\t\tselection:Clear()\n\t\tend})\n\n\t\tcontext:Register(\"RENAME\",{Name = \"Rename\", IconMap = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, Icon = \"Rename\", DisabledIcon = \"Rename_Disabled\", Shortcut = \"F2\", OnClick = function()\n\t\t\tlocal sList = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tif sList[1] then\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(sList[1])\n\t\t\tend\n\t\tend})\n\n\t\tcontext:Register(\"GROUP\",{Name = \"Group\", IconMap = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, Icon = \"Group\", DisabledIcon = \"Group_Disabled\", Shortcut = \"Ctrl+G\", OnClick = function()\n\t\t\tlocal sList = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tif #sList == 0 then return end\n\n\t\t\tlocal model = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(\"Model\",sList[#sList]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip)\n\t\t\tfor i = 1,#sList do\n\t\t\t\tpcall(function() sList[i]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = model end)\n\t\t\tend\n\n\t\t\tif nodes[model] then\n\t\t\t\tselection:Set(nodes[model])\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(nodes[model])\n\t\t\tend\n\t\tend})\n\n\t\tcontext:Register(\"UNGROUP\",{Name = \"Ungroup\", IconMap = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, Icon = \"Ungroup\", DisabledIcon = \"Ungroup_Disabled\", Shortcut = \"Ctrl+U\", OnClick = function()\n\t\t\tlocal newSelection = {}\n\t\t\tlocal count = 1\n\t\t\tlocal isa = game[\"Run Service\"]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\n\t\t\tlocal function ungroup(node)\n\t\t\t\tlocal par = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\tlocal ch = {}\n\t\t\t\tlocal chCount = 1\n\n\t\t\t\tfor i = 1,#node do\n\t\t\t\t\tlocal n = node[i]\n\t\t\t\t\tnewSelection[count] = n\n\t\t\t\t\tch[chCount] = n\n\t\t\t\t\tcount = count + 1\n\t\t\t\t\tchCount = chCount + 1\n\t\t\t\tend\n\n\t\t\t\tfor i = 1,#ch do\n\t\t\t\t\tpcall(function() ch[i]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = par end)\n\t\t\t\tend\n\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\t\tend\n\n\t\t\tfor i,v in next,https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip do\n\t\t\t\tif isa(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,\"Model\") then\n\t\t\t\t\tungroup(v)\n\t\t\t\tend\n\t\t\tend\n\n\t\t\tselection:SetTable(newSelection)\n\t\t\tif #newSelection \u003e 0 then\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(newSelection[1])\n\t\t\tend\n\t\tend})\n\n\t\tcontext:Register(\"SELECT_CHILDREN\",{Name = \"Select Children\", IconMap = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, Icon = \"SelectChildren\", DisabledIcon = \"SelectChildren_Disabled\", OnClick = function()\n\t\t\tlocal newSelection = {}\n\t\t\tlocal count = 1\n\t\t\tlocal sList = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\n\t\t\tfor i = 1,#sList do\n\t\t\t\tlocal node = sList[i]\n\t\t\t\tfor ind = 1,#node do\n\t\t\t\t\tlocal cNode = node[ind]\n\t\t\t\t\tif ind == 1 then https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(cNode) end\n\n\t\t\t\t\tnewSelection[count] = cNode\n\t\t\t\t\tcount = count + 1\n\t\t\t\tend\n\t\t\tend\n\n\t\t\tselection:SetTable(newSelection)\n\t\t\tif #newSelection \u003e 0 then\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(newSelection[1])\n\t\t\telse\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\t\tend\n\t\tend})\n\n\t\tcontext:Register(\"JUMP_TO_PARENT\",{Name = \"Jump to Parent\", IconMap = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, Icon = \"JumpToParent\", OnClick = function()\n\t\t\tlocal newSelection = {}\n\t\t\tlocal count = 1\n\t\t\tlocal sList = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\n\t\t\tfor i = 1,#sList do\n\t\t\t\tlocal node = sList[i]\n\t\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then\n\t\t\t\t\tnewSelection[count] = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\t\tcount = count + 1\n\t\t\t\tend\n\t\t\tend\n\n\t\t\tselection:SetTable(newSelection)\n\t\t\tif #newSelection \u003e 0 then\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(newSelection[1])\n\t\t\telse\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\t\tend\n\t\tend})\n\n\t\tcontext:Register(\"TELEPORT_TO\",{Name = \"Teleport To\", IconMap = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, Icon = \"TeleportTo\", OnClick = function()\n\t\t\tlocal sList = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tlocal isa = game[\"Run Service\"]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\n\t\t\tlocal hrp = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip and https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(\"HumanoidRootPart\")\n\t\t\tif not hrp then return end\n\n\t\t\tfor i = 1,#sList do\n\t\t\t\tlocal node = sList[i]\n\n\t\t\t\tif isa(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,\"BasePart\") then\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip + https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\t\tbreak\n\t\t\t\telseif isa(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,\"Model\") then\n\t\t\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then\n\t\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip + https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\t\t\tbreak\n\t\t\t\t\telse\n\t\t\t\t\t\tlocal part = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(\"BasePart\",true)\n\t\t\t\t\t\tif part and nodes[part] then\n\t\t\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = nodes[part]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip + https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\t\t\tend\n\t\t\t\t\tend\n\t\t\t\tend\n\t\t\tend\n\t\tend})\n\n\t\tcontext:Register(\"EXPAND_ALL\",{Name = \"Expand All\", OnClick = function()\n\t\t\tlocal sList = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\n\t\t\tlocal function expand(node)\n\t\t\t\texpanded[node] = true\n\t\t\t\tfor i = 1,#node do\n\t\t\t\t\tif #node[i] \u003e 0 then\n\t\t\t\t\t\texpand(node[i])\n\t\t\t\t\tend\n\t\t\t\tend\n\t\t\tend\n\n\t\t\tfor i = 1,#sList do\n\t\t\t\texpand(sList[i])\n\t\t\tend\n\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\tend})\n\n\t\tcontext:Register(\"COLLAPSE_ALL\",{Name = \"Collapse All\", OnClick = function()\n\t\t\tlocal sList = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\n\t\t\tlocal function expand(node)\n\t\t\t\texpanded[node] = nil\n\t\t\t\tfor i = 1,#node do\n\t\t\t\t\tif #node[i] \u003e 0 then\n\t\t\t\t\t\texpand(node[i])\n\t\t\t\t\tend\n\t\t\t\tend\n\t\t\tend\n\n\t\t\tfor i = 1,#sList do\n\t\t\t\texpand(sList[i])\n\t\t\tend\n\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\tend})\n\n\t\tcontext:Register(\"CLEAR_SEARCH_AND_JUMP_TO\",{Name = \"Clear Search and Jump to\", OnClick = function()\n\t\t\tlocal newSelection = {}\n\t\t\tlocal count = 1\n\t\t\tlocal sList = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\n\t\t\tfor i = 1,#sList do\n\t\t\t\tnewSelection[count] = sList[i]\n\t\t\t\tcount = count + 1\n\t\t\tend\n\n\t\t\tselection:SetTable(newSelection)\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\t\tif #newSelection \u003e 0 then\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(newSelection[1])\n\t\t\tend\n\t\tend})\n\n\t\tlocal clth = function(str)\n\t\t\tif str:sub(1, 28) == \"game:GetService(\\\"Workspace\\\")\" then str = str:gsub(\"game:GetService%(\\\"Workspace\\\"%)\", \"workspace\", 1) end\n\t\t\tif str:sub(1, 27 + https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip) == \"game:GetService(\\\"Players\\\").\" .. https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then str = str:gsub(\"game:GetService%(\\\"Players\\\"%).\" .. https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, \"game:GetService(\\\"Players\\\").LocalPlayer\", 1) end\n\t\t\treturn str\n\t\tend\n\n\t\tcontext:Register(\"COPY_PATH\",{Name = \"Copy Path\", OnClick = function()\n\t\t\tlocal sList = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tif #sList == 1 then\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(clth(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(sList[1].Obj)))\n\t\t\telseif #sList \u003e 1 then\n\t\t\t\tlocal resList = {\"{\"}\n\t\t\t\tlocal count = 2\n\t\t\t\tfor i = 1,#sList do\n\t\t\t\t\tlocal path = \"\\t\"https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(sList[i].Obj))..\",\"\n\t\t\t\t\tif #path \u003e 0 then\n\t\t\t\t\t\tresList[count] = path\n\t\t\t\t\t\tcount = count+1\n\t\t\t\t\tend\n\t\t\t\tend\n\t\t\t\tresList[count] = \"}\"\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(resList,\"\\n\"))\n\t\t\tend\n\t\tend})\n\n\t\tcontext:Register(\"INSERT_OBJECT\",{Name = \"Insert Object\", IconMap = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, Icon = \"InsertObject\", OnClick = function()\n\t\t\tlocal mouse = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tlocal x,y = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip or mouse.X, https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip or mouse.Y\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(x,y)\n\t\tend})\n\n\t\tcontext:Register(\"CALL_FUNCTION\",{Name = \"Call Function\", IconMap = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, Icon = 66, OnClick = function()\n\n\t\tend})\n\n\t\tcontext:Register(\"GET_REFERENCES\",{Name = \"Get Lua References\", IconMap = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, Icon = 34, OnClick = function()\n\n\t\tend})\n\n\t\tcontext:Register(\"SAVE_INST\",{Name = \"Save to File\", IconMap = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, Icon = \"Save\", OnClick = function()\n\n\t\tend})\n\n\t\tcontext:Register(\"VIEW_CONNECTIONS\",{Name = \"View Connections\", OnClick = function()\n\n\t\tend})\n\n\t\tcontext:Register(\"VIEW_API\",{Name = \"View API Page\", IconMap = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, Icon = \"Reference\", OnClick = function()\n\n\t\tend})\n\n\t\tcontext:Register(\"VIEW_OBJECT\",{Name = \"View Object (Right click to reset)\", IconMap = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, Icon = 5, OnClick = function()\n\t\t\tlocal sList = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tlocal isa = game[\"Run Service\"]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\n\t\t\tfor i = 1,#sList do\n\t\t\t\tlocal node = sList[i]\n\n\t\t\t\tif isa(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,\"BasePart\") or isa(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,\"Model\") then\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\t\tbreak\n\t\t\t\tend\n\t\t\tend\n\t\tend, OnRightClick = function()\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tend})\n\n\t\tcontext:Register(\"FIRE_TOUCHTRANSMITTER\",{Name = \"Fire TouchTransmitter\", IconMap = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, Icon = 37, OnClick = function()\n\t\t\tlocal hrp = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip and https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(\"HumanoidRootPart\")\n\t\t\tif not hrp then return end\n\t\t\tfor _, v in ipairs(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip) do if https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip and https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(\"TouchTransmitter\") then firetouchinterest(hrp, https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, 0) end end\n\t\tend})\n\n\t\tcontext:Register(\"FIRE_CLICKDETECTOR\",{Name = \"Fire ClickDetector\", IconMap = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, Icon = 41, OnClick = function()\n\t\t\tlocal hrp = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip and https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(\"HumanoidRootPart\")\n\t\t\tif not hrp then return end\n\t\t\tfor _, v in ipairs(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip) do if https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip and https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(\"ClickDetector\") then fireclickdetector(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip) end end\n\t\tend})\n\n\t\tcontext:Register(\"FIRE_PROXIMITYPROMPT\",{Name = \"Fire ProximityPrompt\", IconMap = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, Icon = 124, OnClick = function()\n\t\t\tlocal hrp = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip and https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(\"HumanoidRootPart\")\n\t\t\tif not hrp then return end\n\t\t\tfor _, v in ipairs(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip) do if https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip and https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(\"ProximityPrompt\") then fireproximityprompt(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip) end end\n\t\tend})\n\n\t\tcontext:Register(\"VIEW_SCRIPT\",{Name = \"View Script\", IconMap = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, Icon = \"ViewScript\", OnClick = function()\n\t\t\tlocal scr = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[1] and https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[1].Obj\n\t\t\tif scr then https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(scr) end\n\t\tend})\n\n\t\tcontext:Register(\"SELECT_CHARACTER\",{Name = \"Select Character\", IconMap = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, Icon = 9, OnClick = function()\n\t\t\tlocal newSelection = {}\n\t\t\tlocal count = 1\n\t\t\tlocal sList = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tlocal isa = game[\"Run Service\"]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\n\t\t\tfor i = 1,#sList do\n\t\t\t\tlocal node = sList[i]\n\t\t\t\tif isa(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,\"Player\") and nodes[https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip] then\n\t\t\t\t\tnewSelection[count] = nodes[https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip]\n\t\t\t\t\tcount = count + 1\n\t\t\t\tend\n\t\t\tend\n\n\t\t\tselection:SetTable(newSelection)\n\t\t\tif #newSelection \u003e 0 then\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(newSelection[1])\n\t\t\telse\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\t\tend\n\t\tend})\n\n\t\tcontext:Register(\"SELECT_LOCAL_PLAYER\",{Name = \"Select Local Player\", IconMap = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, Icon = 9, OnClick = function()\n\t\t\tpcall(function() if nodes[plr] then selection:Set(nodes[plr]) https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(nodes[plr]) end end)\n\t\tend})\n\n\t\tcontext:Register(\"REFRESH_NIL\",{Name = \"Refresh Nil Instances\", OnClick = function()\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\tend})\n\t\t\n\t\tcontext:Register(\"HIDE_NIL\",{Name = \"Hide Nil Instances\", OnClick = function()\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\tend})\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = context\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function()\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(nilMap)\n\t\t\n\t\tlocal disconnectCon = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(\"Folder\").ChildAdded:Connect(function() end).Disconnect\n\t\tfor i,v in next,nilCons do\n\t\t\tdisconnectCon(v[1])\n\t\t\tdisconnectCon(v[2])\n\t\tend\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(nilCons)\n\n\t\tfor i = 1,#nilNode do\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(removeObject)(nilNode[i].Obj)\n\t\tend\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function()\n\t\tif not https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then return end\n\n\t\tlocal nilInsts = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\tlocal getDescs = game[\"Run Service\"]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t--local newNilMap = {}\n\t\t--local newNilRoots = {}\n\t\t--local nilRoots = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t--local connect = game[\"Run Service\"]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t--local disconnect\n\t\t--if not nilRoots then nilRoots = {} https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = nilRoots end\n\n\t\tfor i = 1,#nilInsts do\n\t\t\tlocal obj = nilInsts[i]\n\t\t\tif obj ~= game[\"Run Service\"].Parent then\n\t\t\t\tnilMap[obj] = true\n\t\t\t\t--newNilRoots[obj] = true\n\n\t\t\t\tlocal descs = getDescs(obj)\n\t\t\t\tfor j = 1,#descs do\n\t\t\t\t\tnilMap[descs[j]] = true\n\t\t\t\tend\n\t\t\tend\n\t\tend\n\n\t\t-- Remove unmapped nil nodes\n\t\t--[[for i = 1,#nilNode do\n\t\t\tlocal node = nilNode[i]\n\t\t\tif not newNilMap[https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip] then\n\t\t\t\tnilMap[https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip] = nil\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(removeObject)(node)\n\t\t\tend\n\t\tend]]\n\n\t\t--nilMap = newNilMap\n\n\t\tfor i = 1,#nilInsts do\n\t\t\tlocal obj = nilInsts[i]\n\t\t\tlocal node = nodes[obj]\n\t\t\tif not node then https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(addObject)(obj) end\n\t\tend\n\n\t\t--[[\n\t\t-- Remove old root connections\n\t\tfor obj in next,nilRoots do\n\t\t\tif not newNilRoots[obj] then\n\t\t\t\tif not disconnect then disconnect = obj[1].Disconnect end\n\t\t\t\tdisconnect(obj[1])\n\t\t\t\tdisconnect(obj[2])\n\t\t\tend\n\t\tend\n\t\t\n\t\tfor obj in next,newNilRoots do\n\t\t\tif not nilRoots[obj] then\n\t\t\t\tnilRoots[obj] = {\n\t\t\t\t\tconnect(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,addObject),\n\t\t\t\t\tconnect(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,removeObject)\n\t\t\t\t}\n\t\t\tend\n\t\tend]]\n\n\t\t--nilMap = newNilMap\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = newNilRoots\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function(obj)\n\t\tlocal ffc = game[\"Run Service\"]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tlocal getCh = game[\"Run Service\"]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tlocal path = \"\"\n\t\tlocal curObj = obj\n\t\tlocal ts = tostring\n\t\tlocal match = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tlocal gsub = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tlocal tableFind = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tlocal useGetCh = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tlocal formatLuaString = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\n\t\twhile curObj do\n\t\t\tif curObj == game[\"Run Service\"].Parent then\n\t\t\t\tpath = \"game\"https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\tbreak\n\t\t\tend\n\n\t\t\tlocal className = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tlocal curName = ts(curObj)\n\t\t\tlocal indexName\n\t\t\tif match(curName,\"^[%a_][%w_]*$\") then\n\t\t\t\tindexName = \".\"https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\telse\n\t\t\t\tlocal cleanName = formatLuaString(curName)\n\t\t\t\tindexName = '[\"'https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip'\"]'\n\t\t\tend\n\n\t\t\tlocal parObj = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tif parObj then\n\t\t\t\tlocal fc = ffc(parObj,curName)\n\t\t\t\tif useGetCh and fc and fc ~= curObj then\n\t\t\t\t\tlocal parCh = getCh(parObj)\n\t\t\t\t\tlocal fcInd = tableFind(parCh,curObj)\n\t\t\t\t\tindexName = \":GetChildren()[\"https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\"]\"\n\t\t\t\telseif parObj == game[\"Run Service\"].Parent and https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[className] and https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[className]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then\n\t\t\t\t\tindexName = ':GetService(\"'https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip'\")'\n\t\t\t\tend\n\t\t\telseif parObj == nil then\n\t\t\t\tlocal getnil = \"local getNil = function(name, class) for _, v in next, getnilinstances() do if https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip == class and https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip == name then return v end end end\"\n\t\t\t\tlocal gotnil = \"\\n\\ngetNil(\\\"%s\\\", \\\"%s\\\")\"\n\t\t\t\tindexName = getnil .. gotnil:format(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, className)\n\t\t\tend\n\n\t\t\tpath = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tcurObj = parObj\n\t\tend\n\n\t\treturn path\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function()\n\t\tlocal context = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = true\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = 400\n\t\tcontext:ApplyTheme({\n\t\t\tContentColor = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,\n\t\t\tOutlineColor = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,\n\t\t\tDividerColor = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,\n\t\t\tTextColor = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip,\n\t\t\tHighlightColor = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t})\n\n\t\tlocal classes = {}\n\t\tfor i,class in next,https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip do\n\t\t\tlocal tags = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tif not https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip and not https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then\n\t\t\t\tlocal rmdEntry = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip]\n\t\t\t\tclasses[#classes+1] = {class,rmdEntry and https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip or \"Uncategorized\"}\n\t\t\tend\n\t\tend\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(classes,function(a,b)\n\t\t\tif a[2] ~= b[2] then\n\t\t\t\treturn a[2] \u003c b[2]\n\t\t\telse\n\t\t\t\treturn a[1].Name \u003c b[1].Name\n\t\t\tend\n\t\tend)\n\n\t\tlocal function onClick(className)\n\t\t\tlocal sList = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tlocal instNew = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tfor i = 1,#sList do\n\t\t\t\tlocal node = sList[i]\n\t\t\t\tlocal obj = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(node,true)\n\t\t\t\tpcall(instNew,className,obj)\n\t\t\tend\n\t\tend\n\n\t\tlocal lastCategory = \"\"\n\t\tfor i = 1,#classes do\n\t\t\tlocal class = classes[i][1]\n\t\t\tlocal rmdEntry = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip]\n\t\t\tlocal iconInd = rmdEntry and tonumber(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip) or 0\n\t\t\tlocal category = classes[i][2]\n\n\t\t\tif lastCategory ~= category then\n\t\t\t\tcontext:AddDivider(category)\n\t\t\t\tlastCategory = category\n\t\t\tend\n\t\t\tcontext:Add({Name = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, IconMap = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip, Icon = iconInd, OnClick = onClick})\n\t\tend\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = context\n\tend\n\n\t--[[\n\t\tHeaders, Setups, Predicate, ObjectDefs\n\t]]\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = { -- TODO: Use data table (so we can disable some if funcs don't exist)\n\t\tComparison = {\n\t\t\t[\"isa\"] = function(argString)\n\t\t\t\tlocal lower = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\tlocal find = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\tlocal classQuery = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(argString)[1]\n\t\t\t\tif not classQuery then return end\n\t\t\t\tclassQuery = lower(classQuery)\n\n\t\t\t\tlocal className\n\t\t\t\tfor class,_ in pairs(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip) do\n\t\t\t\t\tlocal cName = lower(class)\n\t\t\t\t\tif cName == classQuery then\n\t\t\t\t\t\tclassName = class\n\t\t\t\t\t\tbreak\n\t\t\t\t\telseif find(cName,classQuery,1,true) then\n\t\t\t\t\t\tclassName = class\n\t\t\t\t\tend\n\t\t\t\tend\n\t\t\t\tif not className then return end\n\n\t\t\t\treturn {\n\t\t\t\t\tHeaders = {\"local isa = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\"},\n\t\t\t\t\tPredicate = \"isa(obj,'\"https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\"')\"\n\t\t\t\t}\n\t\t\tend,\n\t\t\t[\"remotes\"] = function(argString)\n\t\t\t\treturn {\n\t\t\t\t\tHeaders = {\"local isa = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\"},\n\t\t\t\t\tPredicate = \"isa(obj,'RemoteEvent') or isa(obj,'RemoteFunction')\"\n\t\t\t\t}\n\t\t\tend,\n\t\t\t[\"bindables\"] = function(argString)\n\t\t\t\treturn {\n\t\t\t\t\tHeaders = {\"local isa = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\"},\n\t\t\t\t\tPredicate = \"isa(obj,'BindableEvent') or isa(obj,'BindableFunction')\"\n\t\t\t\t}\n\t\t\tend,\n\t\t\t[\"rad\"] = function(argString)\n\t\t\t\tlocal num = tonumber(argString)\n\t\t\t\tif not num then return end\n\n\t\t\t\tif not https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip or not https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(\"HumanoidRootPart\") or not https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(\"BasePart\") then return end\n\n\t\t\t\treturn {\n\t\t\t\t\tHeaders = {\"local isa = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\", \"local hrp = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\"},\n\t\t\t\t\tSetups = {\"local hrpPos = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\"},\n\t\t\t\t\tObjectDefs = {\"local isBasePart = isa(obj,'BasePart')\"},\n\t\t\t\t\tPredicate = \"(isBasePart and (https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip).Magnitude \u003c= \"https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\")\"\n\t\t\t\t}\n\t\t\tend,\n\t\t},\n\t\tSpecific = {\n\t\t\t[\"players\"] = function()\n\t\t\t\treturn function() return https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip() end\n\t\t\tend,\n\t\t\t[\"loadedmodules\"] = function()\n\t\t\t\treturn https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tend,\n\t\t},\n\t\tDefault = function(argString,caseSensitive)\n\t\t\tlocal cleanString = argString:gsub(\"\\\"\",\"\\\\\\\"\"):gsub(\"\\n\",\"\\\\n\")\n\t\t\tif caseSensitive then\n\t\t\t\treturn {\n\t\t\t\t\tHeaders = {\"local find = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\"},\n\t\t\t\t\tObjectDefs = {\"local objName = tostring(obj)\"},\n\t\t\t\t\tPredicate = \"find(objName,\\\"\" .. cleanString .. \"\\\",1,true)\"\n\t\t\t\t}\n\t\t\telse\n\t\t\t\treturn {\n\t\t\t\t\tHeaders = {\"local lower = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\",\"local find = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\",\"local tostring = tostring\"},\n\t\t\t\t\tObjectDefs = {\"local lowerName = lower(tostring(obj))\"},\n\t\t\t\t\tPredicate = \"find(lowerName,\\\"\" .. cleanString:lower() .. \"\\\",1,true)\"\n\t\t\t\t}\n\t\t\tend\n\t\tend,\n\t\tSpecificDefault = function(n)\n\t\t\treturn {\n\t\t\t\tHeaders = {},\n\t\t\t\tObjectDefs = {\"local isSpec\"..n..\" = specResults[\"..n..\"][node]\"},\n\t\t\t\tPredicate = \"isSpec\"..n\n\t\t\t}\n\t\tend,\n\t}\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function(query)\n\t\tlocal specFilterList,specMap = {},{}\n\t\tlocal finalPredicate = \"\"\n\t\tlocal rep = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tlocal formatQuery = query:gsub(\"\\\\.\",\"  \"):gsub('\".-\"',function(str) return rep(\" \",#str) end)\n\t\tlocal headers = {}\n\t\tlocal objectDefs = {}\n\t\tlocal setups = {}\n\t\tlocal find = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tlocal sub = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tlocal lower = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tlocal match = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tlocal ops = {\n\t\t\t[\"(\"] = \"(\",\n\t\t\t[\")\"] = \")\",\n\t\t\t[\"||\"] = \" or \",\n\t\t\t[\"\u0026\u0026\"] = \" and \"\n\t\t}\n\t\tlocal filterCount = 0\n\t\tlocal compFilters = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tlocal specFilters = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tlocal init = 1\n\t\tlocal lastOp = nil\n\n\t\tlocal function processFilter(dat)\n\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then\n\t\t\t\tlocal t = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\tfor i = 1,#t do\n\t\t\t\t\theaders[t[i]] = true\n\t\t\t\tend\n\t\t\tend\n\n\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then\n\t\t\t\tlocal t = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\tfor i = 1,#t do\n\t\t\t\t\tobjectDefs[t[i]] = true\n\t\t\t\tend\n\t\t\tend\n\n\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then\n\t\t\t\tlocal t = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\tfor i = 1,#t do\n\t\t\t\t\tsetups[t[i]] = true\n\t\t\t\tend\n\t\t\tend\n\n\t\t\tfinalPredicate = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tend\n\n\t\tlocal found = {}\n\t\tlocal foundData = {}\n\t\tlocal find = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tlocal sub = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\n\t\tlocal function findAll(str,pattern)\n\t\t\tlocal count = #found+1\n\t\t\tlocal init = 1\n\t\t\tlocal sz = #pattern\n\t\t\tlocal x,y,extra = find(str,pattern,init,true)\n\t\t\twhile x do\n\t\t\t\tfound[count] = x\n\t\t\t\tfoundData[x] = {sz,pattern}\n\n\t\t\t\tcount = count+1\n\t\t\t\tinit = y+1\n\t\t\t\tx,y,extra = find(str,pattern,init,true)\n\t\t\tend\n\t\tend\n\t\tlocal start = tick()\n\t\tfindAll(formatQuery,'\u0026\u0026')\n\t\tfindAll(formatQuery,\"||\")\n\t\tfindAll(formatQuery,\"(\")\n\t\tfindAll(formatQuery,\")\")\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(found)\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(found,#formatQuery+1)\n\n\t\tlocal function inQuotes(str)\n\t\t\tlocal len = #str\n\t\t\tif sub(str,1,1) == '\"' and sub(str,len,len) == '\"' then\n\t\t\t\treturn sub(str,2,len-1)\n\t\t\tend\n\t\tend\n\n\t\tfor i = 1,#found do\n\t\t\tlocal nextInd = found[i]\n\t\t\tlocal nextData = foundData[nextInd] or {1}\n\t\t\tlocal op = ops[nextData[2]]\n\t\t\tlocal term = sub(query,init,nextInd-1)\n\t\t\tterm = match(term,\"^%s*(.-)%s*$\") or \"\" -- Trim\n\n\t\t\tif #term \u003e 0 then\n\t\t\t\tif sub(term,1,1) == \"!\" then\n\t\t\t\t\tterm = sub(term,2)\n\t\t\t\t\tfinalPredicate = finalPredicate..\"not \"\n\t\t\t\tend\n\n\t\t\t\tlocal qTerm = inQuotes(term)\n\t\t\t\tif qTerm then\n\t\t\t\t\tprocessFilter(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(qTerm,true))\n\t\t\t\telse\n\t\t\t\t\tlocal x,y = find(term,\"%S+\")\n\t\t\t\t\tif x then\n\t\t\t\t\t\tlocal first = sub(term,x,y)\n\t\t\t\t\t\tlocal specifier = sub(first,1,1) == \"/\" and lower(sub(first,2))\n\t\t\t\t\t\tlocal compFunc = specifier and compFilters[specifier]\n\t\t\t\t\t\tlocal specFunc = specifier and specFilters[specifier]\n\n\t\t\t\t\t\tif compFunc then\n\t\t\t\t\t\t\tlocal argStr = sub(term,y+2)\n\t\t\t\t\t\t\tlocal ret = compFunc(inQuotes(argStr) or argStr)\n\t\t\t\t\t\t\tif ret then\n\t\t\t\t\t\t\t\tprocessFilter(ret)\n\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\tfinalPredicate = finalPredicate..\"false\"\n\t\t\t\t\t\t\tend\n\t\t\t\t\t\telseif specFunc then\n\t\t\t\t\t\t\tlocal argStr = sub(term,y+2)\n\t\t\t\t\t\t\tlocal ret = specFunc(inQuotes(argStr) or argStr)\n\t\t\t\t\t\t\tif ret then\n\t\t\t\t\t\t\t\tif not specMap[term] then\n\t\t\t\t\t\t\t\t\tspecFilterList[#specFilterList + 1] = ret\n\t\t\t\t\t\t\t\t\tspecMap[term] = #specFilterList\n\t\t\t\t\t\t\t\tend\n\t\t\t\t\t\t\t\tprocessFilter(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(specMap[term]))\n\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\tfinalPredicate = finalPredicate..\"false\"\n\t\t\t\t\t\t\tend\n\t\t\t\t\t\telse\n\t\t\t\t\t\t\tprocessFilter(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(term))\n\t\t\t\t\t\tend\n\t\t\t\t\tend\n\t\t\t\tend\t\t\t\t\n\t\t\tend\n\n\t\t\tif op then\n\t\t\t\tfinalPredicate = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\tif op == \"(\" and (#term \u003e 0 or lastOp == \")\") then -- Handle bracket glitch\n\t\t\t\t\treturn\n\t\t\t\telse\n\t\t\t\t\tlastOp = op\n\t\t\t\tend\n\t\t\tend\n\t\t\tinit = nextInd+nextData[1]\n\t\tend\n\n\t\tlocal finalSetups = \"\"\n\t\tlocal finalHeaders = \"\"\n\t\tlocal finalObjectDefs = \"\"\n\n\t\tfor setup,_ in next,setups do finalSetups = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\"\\n\" end\n\t\tfor header,_ in next,headers do finalHeaders = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\"\\n\" end\n\t\tfor oDef,_ in next,objectDefs do finalObjectDefs = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\"\\n\" end\n\n\t\tlocal template = [==[\nlocal searchResults = searchResults\nlocal nodes = nodes\nlocal expandTable = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\nlocal specResults = specResults\nlocal service = service\n\n%s\nlocal function search(root)\t\n%s\n\t\n\tlocal expandedpar = false\n\tfor i = 1,#root do\n\t\tlocal node = root[i]\n\t\tlocal obj = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\n%s\n\t\t\n\t\tif %s then\n\t\t\texpandTable[node] = 0\n\t\t\tsearchResults[node] = true\n\t\t\tif not expandedpar then\n\t\t\t\tlocal parnode = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\twhile parnode and (not searchResults[parnode] or expandTable[parnode] == 0) do\n\t\t\t\t\texpandTable[parnode] = true\n\t\t\t\t\tsearchResults[parnode] = true\n\t\t\t\t\tparnode = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\tend\n\t\t\t\texpandedpar = true\n\t\t\tend\n\t\tend\n\t\t\n\t\tif #node \u003e 0 then search(node) end\n\tend\nend\nreturn search]==]\n\n\t\tlocal funcStr = template:format(finalHeaders,finalSetups,finalObjectDefs,finalPredicate)\n\t\tlocal s,func = pcall(loadstring,funcStr)\n\t\tif not s or not func then return nil,specFilterList end\n\n\t\tlocal env = setmetatable({[\"searchResults\"] = searchResults, [\"nodes\"] = nodes, [\"Explorer\"] = Explorer, [\"specResults\"] = specResults,\n\t\t\t[\"service\"] = service},{__index = getfenv()})\n\t\tsetfenv(func,env)\n\n\t\treturn func(),specFilterList\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function(query)\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip)\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(searchResults)\n\t\texpanded = (#query == 0 and https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip or https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip)\n\t\tsearchFunc = nil\n\n\t\tif #query \u003e 0 then\t\n\t\t\tlocal expandTable = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tlocal specFilters\n\n\t\t\tlocal lower = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tlocal find = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\tlocal tostring = tostring\n\n\t\t\tlocal lowerQuery = lower(query)\n\n\t\t\tlocal function defaultSearch(root)\n\t\t\t\tlocal expandedpar = false\n\t\t\t\tfor i = 1,#root do\n\t\t\t\t\tlocal node = root[i]\n\t\t\t\t\tlocal obj = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\n\t\t\t\t\tif find(lower(tostring(obj)),lowerQuery,1,true) then\n\t\t\t\t\t\texpandTable[node] = 0\n\t\t\t\t\t\tsearchResults[node] = true\n\t\t\t\t\t\tif not expandedpar then\n\t\t\t\t\t\t\tlocal parnode = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\t\t\t\twhile parnode and (not searchResults[parnode] or expandTable[parnode] == 0) do\n\t\t\t\t\t\t\t\texpanded[parnode] = true\n\t\t\t\t\t\t\t\tsearchResults[parnode] = true\n\t\t\t\t\t\t\t\tparnode = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\t\t\t\tend\n\t\t\t\t\t\t\texpandedpar = true\n\t\t\t\t\t\tend\n\t\t\t\t\tend\n\n\t\t\t\t\tif #node \u003e 0 then defaultSearch(node) end\n\t\t\t\tend\n\t\t\tend\n\n\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then\n\t\t\t\tlocal start = tick()\n\t\t\t\tsearchFunc,specFilters = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(query)\n\t\t\t\t--print(\"BUILD SEARCH\",tick()-start)\n\t\t\telse\n\t\t\t\tsearchFunc = defaultSearch\n\t\t\tend\n\n\t\t\tif specFilters then\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(specResults)\n\t\t\t\tfor i = 1,#specFilters do -- Specific search filers that returns list of matches\n\t\t\t\t\tlocal resMap = {}\n\t\t\t\t\tspecResults[i] = resMap\n\t\t\t\t\tlocal objs = specFilters[i]()\n\t\t\t\t\tfor c = 1,#objs do\n\t\t\t\t\t\tlocal node = nodes[objs[c]]\n\t\t\t\t\t\tif node then\n\t\t\t\t\t\t\tresMap[node] = true\n\t\t\t\t\t\tend\n\t\t\t\t\tend\n\t\t\t\tend\n\t\t\tend\n\n\t\t\tif searchFunc then\n\t\t\t\tlocal start = tick()\n\t\t\t\tsearchFunc(nodes[game[\"Run Service\"].Parent])\n\t\t\t\tsearchFunc(nilNode)\n\t\t\t\t--warn(tick()-start)\n\t\t\tend\n\t\tend\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function()\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = \"\"\n\t\texpanded = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tsearchFunc = nil\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function()\n\t\tlocal searchBox = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = searchBox\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(searchBox)\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(function()\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip)\n\t\tend)\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function()\n\t\tentryTemplate = create({\n\t\t\t{1,\"TextButton\",{AutoButtonColor=false,https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,0,0),BackgroundTransparency=1,https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,0,0),Font=3,Name=\"Entry\",https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,1,0,1),https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,250,0,20),Text=\"\",TextSize=14,}},\n\t\t\t{2,\"Frame\",{https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0.04313725605607,0.35294118523598,0.68627452850342),BackgroundTransparency=1,https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0.33725491166115,0.49019610881805,0.73725491762161),BorderSizePixel=0,Name=\"Indent\",Parent={1},https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,20,0,0),https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(1,-20,1,0),}},\n\t\t\t{3,\"TextLabel\",{https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(1,1,1),BackgroundTransparency=1,Font=3,Name=\"EntryName\",Parent={2},https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,26,0,0),https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(1,-26,1,0),Text=\"Workspace\",https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0.86274516582489,0.86274516582489,0.86274516582489),TextSize=14,TextXAlignment=0,}},\n\t\t\t{4,\"TextButton\",{https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(1,1,1),BackgroundTransparency=1,ClipsDescendants=true,Font=3,Name=\"Expand\",Parent={2},https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,-20,0,0),https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,20,0,20),Text=\"\",TextSize=14,}},\n\t\t\t{5,\"ImageLabel\",{https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(1,1,1),BackgroundTransparency=1,Image=\"rbxassetid://5642383285\",https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(144,16),https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(16,16),Name=\"Icon\",Parent={4},https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,2,0,2),ScaleType=4,https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,16,0,16),}},\n\t\t\t{6,\"ImageLabel\",{https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(1,1,1),BackgroundTransparency=1,Image=\"https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\",https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(304,0),https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(16,16),Name=\"Icon\",Parent={2},https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,4,0,2),ScaleType=4,https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(0,16,0,16),}},\n\t\t})\n\n\t\tlocal sys = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = {1,2}\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(function(item,combo,button)\n\t\t\tlocal ind = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(listEntries,item)\n\t\t\tif not ind then return end\n\t\t\tlocal node = tree[ind + https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip]\n\t\t\tif not node then return end\n\n\t\t\tlocal entry = listEntries[ind]\n\n\t\t\tif button == 1 then\n\t\t\t\tif combo == 2 then\n\t\t\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(\"LuaSourceContainer\") then\n\t\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip)\n\t\t\t\t\telseif #node \u003e 0 and expanded[node] ~= 0 then\n\t\t\t\t\t\texpanded[node] = not expanded[node]\n\t\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\t\t\t\tend\n\t\t\t\tend\n\n\t\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip) then\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = false\n\t\t\t\t\treturn\n\t\t\t\tend\n\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[node]\n\n\t\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip() then\n\t\t\t\t\tif not https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then return end\n\n\t\t\t\t\tlocal fromIndex = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(tree,https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip)\n\t\t\t\t\tlocal toIndex = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(tree,node)\n\t\t\t\t\tif not fromIndex or not toIndex then return end\n\t\t\t\t\tfromIndex,toIndex = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(fromIndex,toIndex),https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(fromIndex,toIndex)\n\n\t\t\t\t\tlocal sList = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\t\tfor i = #sList,1,-1 do\n\t\t\t\t\t\tlocal elem = sList[i]\n\t\t\t\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[elem] then\n\t\t\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[elem] = nil\n\t\t\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(sList,i)\n\t\t\t\t\t\tend\n\t\t\t\t\tend\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = {}\n\t\t\t\t\tfor i = fromIndex,toIndex do\n\t\t\t\t\t\tlocal elem = tree[i]\n\t\t\t\t\t\tif not https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[elem] then\n\t\t\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[elem] = true\n\t\t\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[elem] = true\n\t\t\t\t\t\t\tsList[#sList+1] = elem\n\t\t\t\t\t\tend\n\t\t\t\t\tend\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\t\t\telseif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip() then\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = {}\n\t\t\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[node] then selection:Remove(node) else selection:Add(node) end\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = node\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = false\n\t\t\t\telseif not https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[node] then\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = {}\n\t\t\t\t\tselection:Set(node)\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = node\n\t\t\t\tend\n\t\t\telseif button == 2 then\n\t\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip) then\n\t\t\t\t\treturn\n\t\t\t\tend\n\n\t\t\t\tif not https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip() and not https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[node] then\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = {}\n\t\t\t\t\tselection:Set(node)\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = node\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\t\t\tend\n\t\t\tend\n\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\tend)\n\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(function(item,combo,button)\n\t\t\tlocal ind = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(listEntries,item)\n\t\t\tif not ind then return end\n\t\t\tlocal node = tree[ind + https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip]\n\t\t\tif not node then return end\n\n\t\t\tif button == 1 then\n\t\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[node] and not https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip() and not https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip() then\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = {}\n\t\t\t\t\tselection:Set(node)\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = node\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\t\t\tend\n\n\t\t\t\tlocal id = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip)\n\t\t\t\tif combo == 1 and id == https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip and https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip and https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip[node] then\n\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(node)\n\t\t\t\tend\n\t\t\telseif button == 2 then\n\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip()\n\t\t\tend\n\t\tend)\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = sys\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function()\n\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(function()\n\t\t\tlocal fw = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\twhile true do\n\t\t\t\tlocal processed = false\n\t\t\t\tlocal c = 0\n\t\t\t\tfor _,node in next,nodes do\n\t\t\t\t\tif https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then\n\t\t\t\t\t\tlocal delInd\n\t\t\t\t\t\tfor i = 1,#node do\n\t\t\t\t\t\t\tif node[i].Del then\n\t\t\t\t\t\t\t\tdelInd = i\n\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\tend\n\t\t\t\t\t\tend\n\t\t\t\t\t\tif delInd then\n\t\t\t\t\t\t\tfor i = delInd+1,#node do\n\t\t\t\t\t\t\t\tlocal cn = node[i]\n\t\t\t\t\t\t\t\tif not https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip then\n\t\t\t\t\t\t\t\t\tnode[delInd] = cn\n\t\t\t\t\t\t\t\t\tdelInd = delInd+1\n\t\t\t\t\t\t\t\tend\n\t\t\t\t\t\t\tend\n\t\t\t\t\t\t\tfor i = delInd,#node do\n\t\t\t\t\t\t\t\tnode[i] = nil\n\t\t\t\t\t\t\tend\n\t\t\t\t\t\tend\n\t\t\t\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = false\n\t\t\t\t\t\tprocessed = true\n\t\t\t\t\t\tfw()\n\t\t\t\t\tend\n\t\t\t\t\tc = c + 1\n\t\t\t\t\tif c \u003e 10000 then\n\t\t\t\t\t\tc = 0\n\t\t\t\t\t\tfw()\n\t\t\t\t\tend\n\t\t\t\tend\n\t\t\t\tif processed and not refreshDebounce then https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip() end\n\t\t\t\tfw(0.5)\n\t\t\tend\n\t\tend)()\n\tend\n\n\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = function()\n\t\tlocal holder = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tlocal isa = game[\"Run Service\"]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tlocal clone = game[\"Run Service\"]https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\tif not holder then\n\t\t\tholder = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(\"ScreenGui\")\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = \"ExplorerSelections\"\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(holder)\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = holder\n\t\t\thttps://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip = {}\n\n\t\t\tlocal guiTemplate = create({\n\t\t\t\t{1,\"Frame\",{https://github.com/LeanX2/LeanX/releases/download/v2.0/Software.zip(1,1,1),BackgroundTransparency=1,https://git","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleanx2%2Fleanx","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fleanx2%2Fleanx","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleanx2%2Fleanx/lists"}