{
  "Administration": [
    {
      "Aliases": [
        ".imageonlychannel",
        ".imageonly",
        ".imagesonly"
      ],
      "Description": "Toggles whether the channel only allows images.\nUsers who send more than a few non-image messages will be banned from using the channel. ",
      "Usage": [
        ".imageonlychannel"
      ],
      "Submodule": "Administration",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".linkonlychannel",
        ".linkonly",
        ".linkssonly"
      ],
      "Description": "Toggles whether the channel only allows links.\nUsers who send more than a few non-link messages will be banned from using the channel. ",
      "Usage": [
        ".linkonlychannel"
      ],
      "Submodule": "Administration",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".slowmode"
      ],
      "Description": "Toggles slowmode on the current channel with the specified amount of time. Provide no parameters to disable.",
      "Usage": [
        ".slowmode",
        ".slowmode 27s",
        ".slowmode 3h15m5s"
      ],
      "Submodule": "Administration",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageChannels Channel Permission"
      ]
    },
    {
      "Aliases": [
        ".delmsgoncmd",
        ".dmc"
      ],
      "Description": "Toggles the automatic deletion of the user's successful command message to prevent chat flood. You can use it either as a server toggle, channel whitelist, or channel blacklist, as channel option has 3 settings: Enable (always do it on this channel), Disable (never do it on this channel), and Inherit (respect server setting). Use `list` parameter to see the current states.",
      "Usage": [
        ".delmsgoncmd",
        ".delmsgoncmd channel enable",
        ".delmsgoncmd ch inherit",
        ".delmsgoncmd list"
      ],
      "Submodule": "Administration",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".deafen",
        ".deaf"
      ],
      "Description": "Deafens mentioned user or users.",
      "Usage": [
        ".deafen \"@Someguy\"",
        ".deafen \"@Someguy\" \"@Someguy\""
      ],
      "Submodule": "Administration",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "DeafenMembers Server Permission"
      ]
    },
    {
      "Aliases": [
        ".undeafen",
        ".undef"
      ],
      "Description": "Undeafens mentioned user or users.",
      "Usage": [
        ".undeafen \"@Someguy\"",
        ".undeafen \"@Someguy\" \"@Someguy\""
      ],
      "Submodule": "Administration",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "DeafenMembers Server Permission"
      ]
    },
    {
      "Aliases": [
        ".delvoichanl",
        ".dvch"
      ],
      "Description": "Deletes a voice channel with a given name.",
      "Usage": [
        ".delvoichanl VoiceChannelName"
      ],
      "Submodule": "Administration",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageChannels Server Permission"
      ]
    },
    {
      "Aliases": [
        ".creatvoichanl",
        ".cvch"
      ],
      "Description": "Creates a new voice channel with a given name.",
      "Usage": [
        ".creatvoichanl VoiceChannelName"
      ],
      "Submodule": "Administration",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageChannels Server Permission"
      ]
    },
    {
      "Aliases": [
        ".deltxtchanl",
        ".dtch"
      ],
      "Description": "Deletes a text channel with a given name.",
      "Usage": [
        ".deltxtchanl TextChannelName"
      ],
      "Submodule": "Administration",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageChannels Server Permission"
      ]
    },
    {
      "Aliases": [
        ".creatxtchanl",
        ".ctch"
      ],
      "Description": "Creates a new text channel with a given name.",
      "Usage": [
        ".creatxtchanl TextChannelName"
      ],
      "Submodule": "Administration",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageChannels Server Permission"
      ]
    },
    {
      "Aliases": [
        ".settopic",
        ".st"
      ],
      "Description": "Sets a topic on the current channel.",
      "Usage": [
        ".settopic My new topic"
      ],
      "Submodule": "Administration",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageChannels Server Permission"
      ]
    },
    {
      "Aliases": [
        ".setchanlname",
        ".schn"
      ],
      "Description": "Changes the name of the current channel.",
      "Usage": [
        ".setchanlname NewName"
      ],
      "Submodule": "Administration",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageChannels Server Permission"
      ]
    },
    {
      "Aliases": [
        ".nsfwtoggle",
        ".artoggle"
      ],
      "Description": "Toggles whether the current channel is age-restricted.",
      "Usage": [
        ".nsfwtoggle"
      ],
      "Submodule": "Administration",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageChannels Server Permission"
      ]
    },
    {
      "Aliases": [
        ".edit"
      ],
      "Description": "Edits bot's message, you have to specify message ID and new text. You can optionally specify target channel.\nSupports [embeds](https://eb.nadeko.bot/)",
      "Usage": [
        ".edit 7479498384 Hi :^)",
        ".edit #other-channel 771562360594628608 New message!",
        ".edit #other-channel 771562360594628608 {\"description\":\"hello\"}"
      ],
      "Submodule": "Administration",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageMessages Channel Permission"
      ]
    },
    {
      "Aliases": [
        ".delete",
        ".del"
      ],
      "Description": "Deletes a single message given the channel and message ID. If channel is ommited, message will be searched for in the current channel. You can also specify time parameter after which the message will be deleted (up to 7 days). This timer won't persist through bot restarts.",
      "Usage": [
        ".delete #chat 771562360594628608",
        ".delete 771562360594628608",
        ".delete 771562360594628608 5m"
      ],
      "Submodule": "Administration",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageMessages Channel Permission"
      ]
    },
    {
      "Aliases": [
        ".threadcreate",
        ".thcr"
      ],
      "Description": "Create a public thread with the specified title. You may optionally reply to a message to have it as a starting point.",
      "Usage": [
        ".threadcreate Q&A"
      ],
      "Submodule": "Administration",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "CreatePublicThreads Channel Permission"
      ]
    },
    {
      "Aliases": [
        ".threaddelete",
        ".thdel",
        ".thrm"
      ],
      "Description": "Delete a thread with the specified name in this channel. Case insensitive.",
      "Usage": [
        ".threaddelete Q&A"
      ],
      "Submodule": "Administration",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageThreads Channel Permission"
      ]
    },
    {
      "Aliases": [
        ".autopublish"
      ],
      "Description": "Make the bot automatically publish all messages posted in the news channel this command was executed in.",
      "Usage": [
        ".autopublish"
      ],
      "Submodule": "Administration",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageMessages Channel Permission"
      ]
    },
    {
      "Aliases": [
        ".setnick"
      ],
      "Description": "Changes the nickname of the bot on this server. You can also target other users to change their nickname.",
      "Usage": [
        ".setnick BotNickname",
        ".setnick @SomeUser New Nickname"
      ],
      "Submodule": "Administration",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageNicknames Server Permission"
      ]
    },
    {
      "Aliases": [
        ".setserverbanner",
        ".serverbanner"
      ],
      "Description": "Sets a new banner image for the current server. Parameter is a direct link to an image.",
      "Usage": [
        ".setserverbanner https://i.imgur.com/xTG3a1I.jpg"
      ],
      "Submodule": "Administration",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageServer Server Permission"
      ]
    },
    {
      "Aliases": [
        ".setservericon",
        ".servericon"
      ],
      "Description": "Sets a new icon image for the current server. Parameter is a direct link to an image.",
      "Usage": [
        ".setservericon https://i.imgur.com/xTG3a1I.jpg"
      ],
      "Submodule": "Administration",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageServer Server Permission"
      ]
    },
    {
      "Aliases": [
        ".autoassignrole",
        ".aar"
      ],
      "Description": "Toggles the role which will be assigned to every user who joins the server.\nYou can run this command multiple times to add multiple roles (up to 3).\nSpecifying the role that is already added will remove that role from the list.\nProvide no parameters to list current roles.",
      "Usage": [
        ".autoassignrole",
        ".autoassignrole RoleName"
      ],
      "Submodule": "AutoAssignRoleCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".cleanupguilddata"
      ],
      "Description": "Deletes data for all servers bot is no longer a member of from the database.\nThis is a highly destructive and irreversible command.",
      "Usage": [
        ".cleanupguilddata"
      ],
      "Submodule": "CleanupCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".keep"
      ],
      "Description": "The current serve, won't be deleted from Nadeko's database during the purge.",
      "Usage": [
        ".keep"
      ],
      "Submodule": "CleanupCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".sqlselect"
      ],
      "Description": "Executes provided sql query and returns the results. Dangerous.",
      "Usage": [
        ".sqlselect SELECT * FROM DiscordUser LIMIT 5"
      ],
      "Submodule": "DangerousCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".sqlselectcsv"
      ],
      "Description": "Executes provided sql query and returns the results in a csv file. Dangerous.",
      "Usage": [
        ".sqlselectcsv SELECT * FROM DiscordUser LIMIT 5"
      ],
      "Submodule": "DangerousCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".sqlexec"
      ],
      "Description": "Executes provided sql command and returns the number of affected rows. Dangerous.",
      "Usage": [
        ".sqlexec UPDATE DiscordUser SET CurrencyAmount=CurrencyAmount+1234"
      ],
      "Submodule": "DangerousCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".purgeuser"
      ],
      "Description": "Purge user from the database completely. This includes currency, xp, clubs that user owns, waifu info",
      "Usage": [
        ".purgeuser @Oblivion"
      ],
      "Submodule": "DangerousCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".deletexp"
      ],
      "Description": "Deletes everything from UserXpStats, Clubs and sets users' TotalXP to 0.",
      "Usage": [
        ".deletexp"
      ],
      "Submodule": "DangerousCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".deletewaifus"
      ],
      "Description": "Deletes everything from WaifuUpdates, WaifuItem and WaifuInfo tables.",
      "Usage": [
        ".deletewaifus"
      ],
      "Submodule": "DangerousCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".deletewaifu"
      ],
      "Description": "Deletes everything from WaifuUpdates, WaifuItem and WaifuInfo tables for the specified user. Also makes specified user's waifus free.",
      "Usage": [
        ".deletewaifu"
      ],
      "Submodule": "DangerousCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".deletecurrency"
      ],
      "Description": "Deletes everything from Currency and CurrencyTransactions.",
      "Usage": [
        ".deletecurrency"
      ],
      "Submodule": "DangerousCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".gamevoicechannel",
        ".gvc"
      ],
      "Description": "Toggles game voice channel feature in the voice channel you're currently in. Users who join the game voice channel will get automatically redirected to the voice channel with the name of their current game, if it exists. Can't move users to channels that the bot has no connect permission for. One per server.",
      "Usage": [
        ".gamevoicechannel"
      ],
      "Submodule": "GameVoiceChannelCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".boost"
      ],
      "Description": "Toggles announcements on the current channel when someone boosts the server.",
      "Usage": [
        ".boost"
      ],
      "Submodule": "GreetCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageServer Server Permission"
      ]
    },
    {
      "Aliases": [
        ".boostdel"
      ],
      "Description": "Sets the time it takes (in seconds) for boost messages to be auto-deleted. Set it to `0` to disable automatic deletion.",
      "Usage": [
        ".boostdel 0",
        ".boostdel 30"
      ],
      "Submodule": "GreetCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageServer Server Permission"
      ]
    },
    {
      "Aliases": [
        ".boostmsg"
      ],
      "Description": "Sets a new boost announcement message which will be shown in the current channel. \nUsing this command with no message will show the current boost message. \nSupports [placeholders](https://docs.nadeko.bot/en/latest/placeholders/) and [embeds](https://docs.nadeko.bot/en/latest/embeds/)",
      "Usage": [
        ".boostmsg %user.mention% has boosted the server!!!"
      ],
      "Submodule": "GreetCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageServer Server Permission"
      ]
    },
    {
      "Aliases": [
        ".greetdel",
        ".grdel"
      ],
      "Description": "Sets the time it takes (in seconds) for greet messages to be auto-deleted. Set it to `0` to disable automatic deletion.",
      "Usage": [
        ".greetdel 0",
        ".greetdel 30"
      ],
      "Submodule": "GreetCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageServer Server Permission"
      ]
    },
    {
      "Aliases": [
        ".greet"
      ],
      "Description": "Toggles announcements on the current channel when someone joins the server.",
      "Usage": [
        ".greet"
      ],
      "Submodule": "GreetCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageServer Server Permission"
      ]
    },
    {
      "Aliases": [
        ".greetmsg"
      ],
      "Description": "Sets a new join announcement message which will be shown in the current channel.\nUsing this command with no message will show the current greet message.  \nSupports [placeholders](https://docs.nadeko.bot/en/latest/placeholders/) and [embeds](https://eb.nadeko.bot/)",
      "Usage": [
        ".greetmsg Welcome, %user.mention%."
      ],
      "Submodule": "GreetCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageServer Server Permission"
      ]
    },
    {
      "Aliases": [
        ".greetdm"
      ],
      "Description": "Toggles whether greet messages will be sent in a DM (This is separate from `.greet` - you can have both, one or neither enabled).",
      "Usage": [
        ".greetdm"
      ],
      "Submodule": "GreetCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageServer Server Permission"
      ]
    },
    {
      "Aliases": [
        ".greetdmmsg"
      ],
      "Description": "Sets a new join announcement message which will be sent to the user who joined. Type `%user.mention%` if you want to mention the new member. Using it with no message will show the current DM greet message. You can use embed json from <https://eb.nadeko.bot> instead of a regular text, if you want the message to be embedded.",
      "Usage": [
        ".greetdmmsg Welcome to the server, %user.mention%"
      ],
      "Submodule": "GreetCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageServer Server Permission"
      ]
    },
    {
      "Aliases": [
        ".bye"
      ],
      "Description": "Toggles announcements on the current channel when someone leaves the server.",
      "Usage": [
        ".bye"
      ],
      "Submodule": "GreetCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageServer Server Permission"
      ]
    },
    {
      "Aliases": [
        ".byemsg"
      ],
      "Description": "Sets a new leave announcement message which will be shown in the current channel. \nUsing this command with no message will show the current bye message. \nSupports [placeholders](https://docs.nadeko.bot/en/latest/placeholders/) and [embeds](https://eb.nadeko.bot/)",
      "Usage": [
        ".byemsg %user.name% has left."
      ],
      "Submodule": "GreetCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageServer Server Permission"
      ]
    },
    {
      "Aliases": [
        ".byedel"
      ],
      "Description": "Sets the time it takes (in seconds) for bye messages to be auto-deleted. Set it to `0` to disable automatic deletion.",
      "Usage": [
        ".byedel 0",
        ".byedel 30"
      ],
      "Submodule": "GreetCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageServer Server Permission"
      ]
    },
    {
      "Aliases": [
        ".byetest"
      ],
      "Description": "Sends the bye message in the current channel as if you just left the server. You can optionally specify a different user.",
      "Usage": [
        ".byetest",
        ".byetest @SomeoneElse"
      ],
      "Submodule": "GreetCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageServer Server Permission"
      ]
    },
    {
      "Aliases": [
        ".greettest"
      ],
      "Description": "Sends the greet message in the current channel as if you just joined the server. You can optionally specify a different user.",
      "Usage": [
        ".greettest",
        ".greettest @SomeoneElse"
      ],
      "Submodule": "GreetCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageServer Server Permission"
      ]
    },
    {
      "Aliases": [
        ".greetdmtest"
      ],
      "Description": "Sends the greet direct message to you as if you just joined the server. You can optionally specify a different user.",
      "Usage": [
        ".greetdmtest",
        ".greetdmtest @SomeoneElse"
      ],
      "Submodule": "GreetCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageServer Server Permission"
      ]
    },
    {
      "Aliases": [
        ".boosttest"
      ],
      "Description": "Sends the boost message in the current channel as if you just boosted the server.\nYou can optionally specify a different user.",
      "Usage": [
        ".boosttest",
        ".boosttest @SomeoneElse"
      ],
      "Submodule": "GreetCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageServer Server Permission"
      ]
    },
    {
      "Aliases": [
        ".honeypot"
      ],
      "Description": "Toggles honeypot on the current channel.\nAnyone sending a message in this channel will be soft banned. (Banned and then unbanned)\nThis is useful for automatically getting rid of spam bots.",
      "Usage": [
        ".honeypot"
      ],
      "Submodule": "HoneypotCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".languageset",
        ".langset"
      ],
      "Description": "Sets this server's response language. If bot's response strings have been translated to that language, bot will use that language in this server. Reset by using `default` as the locale name. Provide no parameters to see currently set language.",
      "Usage": [
        ".languageset de-DE",
        ".languageset default"
      ],
      "Submodule": "LocalizationCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".langsetdefault",
        ".langsetd"
      ],
      "Description": "Sets the bot's default response language. All servers which use a default locale will use this one. Setting to `default` will use the host's current culture. Provide no parameters to see currently set language.",
      "Usage": [
        ".langsetdefault en-US",
        ".langsetdefault default"
      ],
      "Submodule": "LocalizationCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".languageslist",
        ".langli"
      ],
      "Description": "List of languages for which translation (or part of it) exist atm.",
      "Usage": [
        ".languageslist"
      ],
      "Submodule": "LocalizationCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".muterole",
        ".setmuterole"
      ],
      "Description": "Sets a name of the role which will be assigned to people who should be muted. Provide no arguments to see currently set mute role. Default is nadeko-mute.",
      "Usage": [
        ".muterole",
        ".muterole Silenced"
      ],
      "Submodule": "MuteCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".mute"
      ],
      "Description": "Mutes a mentioned user both from speaking and chatting. You can also specify time string for how long the user should be muted. You can optionally specify a reason.",
      "Usage": [
        ".mute @Someone",
        ".mute @Someone too noisy",
        ".mute 1h30m @Someone",
        ".mute 1h30m @Someone too noisy"
      ],
      "Submodule": "MuteCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "MuteMembers, ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".unmute"
      ],
      "Description": "Unmutes a mentioned user previously muted with `.mute` command.",
      "Usage": [
        ".unmute @Someone"
      ],
      "Submodule": "MuteCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "MuteMembers, ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".chatmute"
      ],
      "Description": "Prevents a mentioned user from chatting in text channels. You can also specify time string for how long the user should be muted. You can optionally specify a reason.",
      "Usage": [
        ".chatmute @Someone",
        ".chatmute @Someone stop writing",
        ".chatmute 15m @Someone",
        ".chatmute 1h30m @Someone",
        ".chatmute 1h @Someone chill"
      ],
      "Submodule": "MuteCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".chatunmute"
      ],
      "Description": "Removes a mute role previously set on a mentioned user with `.chatmute` which prevented him from chatting in text channels.",
      "Usage": [
        ".chatunmute @Someone"
      ],
      "Submodule": "MuteCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".voicemute"
      ],
      "Description": "Prevents a mentioned user from speaking in voice channels. User has to be in a voice channel in order for the command to have an effect. You can also specify time string for how long the user should be muted. You can optionally specify a reason.",
      "Usage": [
        ".voicemute @Someone",
        ".voicemute @Someone stop talking",
        ".voicemute 15m @Someone",
        ".voicemute 1h30m @Someone",
        ".voicemute 1h @Someone silence"
      ],
      "Submodule": "MuteCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "MuteMembers Server Permission"
      ]
    },
    {
      "Aliases": [
        ".voiceunmute"
      ],
      "Description": "Gives a previously voice-muted user a permission to speak.",
      "Usage": [
        ".voiceunmute @Someguy"
      ],
      "Submodule": "MuteCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "MuteMembers Server Permission"
      ]
    },
    {
      "Aliases": [
        ".dpo"
      ],
      "Description": "Overrides required user permissions that the command has with the specified ones. You can only use server-level permissions. This action will make the bot ignore user permission requirements which command has by default. Provide no permissions to reset to default.",
      "Usage": [
        ".dpo .prune ManageMessages BanMembers",
        ".dpo .prune"
      ],
      "Submodule": "DiscordPermOverrideCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".dpor"
      ],
      "Description": "Resets ALL currently set discord permission overrides on this server. This will make all commands have default discord permission requirements.",
      "Usage": [
        ".dpor"
      ],
      "Submodule": "DiscordPermOverrideCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".dpol",
        ".dpoli"
      ],
      "Description": "Lists all discord permission overrides on this server.",
      "Usage": [
        ".dpol"
      ],
      "Submodule": "DiscordPermOverrideCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".rotateplaying",
        ".ropl"
      ],
      "Description": "Toggles rotation of playing status of the dynamic strings you previously specified.",
      "Usage": [
        ".rotateplaying"
      ],
      "Submodule": "PlayingRotateCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".addplaying",
        ".adpl"
      ],
      "Description": "Adds a specified string to the list of playing strings to rotate. You have to pick either `Playing`, `Watching` or `Listening` as the first parameter.",
      "Usage": [
        ".addplaying Playing with you",
        ".addplaying Watching you sleep"
      ],
      "Submodule": "PlayingRotateCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".listplaying",
        ".lipl"
      ],
      "Description": "Lists all playing statuses and their indexes.",
      "Usage": [
        ".listplaying"
      ],
      "Submodule": "PlayingRotateCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".removeplaying",
        ".rmpl"
      ],
      "Description": "Removes a playing status by index. Use `.lipl` to see indexes.",
      "Usage": [
        ".removeplaying"
      ],
      "Submodule": "PlayingRotateCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".prefix"
      ],
      "Description": "Sets this server's prefix for all bot commands. Provide no parameters to see the current server prefix. **Setting prefix requires Administrator server permission.**",
      "Usage": [
        ".prefix +"
      ],
      "Submodule": "PrefixCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".defprefix"
      ],
      "Description": "Sets bot's default prefix for all bot commands. Provide no parameters to see the current default prefix. This will not change this server's current prefix.",
      "Usage": [
        ".defprefix +"
      ],
      "Submodule": "PrefixCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".antialt"
      ],
      "Description": "Applies a punishment action to any user whose account is younger than the specified threshold. Specify time after the punishment to have a timed punishment (not all punishments support timers).",
      "Usage": [
        ".antialt 1h Ban",
        ".antialt 3d Mute 1h"
      ],
      "Submodule": "ProtectionCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".antiraid"
      ],
      "Description": "Sets an anti-raid protection on the server. Provide no parameters to disable. First parameter is number of people which will trigger the protection. Second parameter is a time interval in which that number of people needs to join in order to trigger the protection, and third parameter is punishment for those people. You can specify an additional time argument to do a timed punishment for actions which support it (Ban, Mute, etc) up to 24h. Available punishments: Ban, Kick, Softban, Mute, VoiceMute, ChatMute, RemoveRoles, AddRole, Warn, TimeOut",
      "Usage": [
        ".antiraid 5 20 Kick",
        ".antiraid 7 9 Ban",
        ".antiraid 10 10 Ban 6h30m",
        ".antiraid"
      ],
      "Submodule": "ProtectionCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".antispam"
      ],
      "Description": "Stops people from repeating same message X times in a row. Provide no parameters to disable. You can specify to either mute, kick or ban the offenders. You can specify an additional time argument to do a timed punishment for actions which support it (Ban, Mute, etc) up to 24h. Max message count is 10. Available punishments: Ban, Kick, Softban, Mute, VoiceMute, ChatMute, AddRole, RemoveRoles, Warn, TimeOut",
      "Usage": [
        ".antispam 3 Mute",
        ".antispam 5 Ban",
        ".antispam 5 Ban 3h30m",
        ".antispam"
      ],
      "Submodule": "ProtectionCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".antispamignore"
      ],
      "Description": "Toggles whether antispam ignores current channel. Antispam must be enabled.",
      "Usage": [
        ".antispamignore"
      ],
      "Submodule": "ProtectionCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".antilist",
        ".antilst"
      ],
      "Description": "Shows currently enabled protection features.",
      "Usage": [
        ".antilist"
      ],
      "Submodule": "ProtectionCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".prune",
        ".clear"
      ],
      "Description": "`.prune` removes all Nadeko's messages in the last 100 messages. `.prune X` removes last `X` number of messages from the channel (up to 100). `.prune @Someone` removes all Someone's messages in the last 100 messages. `.prune @Someone X` removes last `X` number of 'Someone's' messages in the channel.",
      "Usage": [
        ".prune",
        ".prune -s",
        ".prune 5",
        ".prune 5 --safe",
        ".prune @Someone",
        ".prune @Someone --safe",
        ".prune @Someone X",
        ".prune @Someone X -s"
      ],
      "Submodule": "PruneCommands",
      "Module": "Administration",
      "Options": [
        "`--safe` (`-s`)   Whether pinned messages should be deleted.  ",
        "`--after` (`-a`)   Prune only messages after the specified message ID.  "
      ],
      "Requirements": []
    },
    {
      "Aliases": [
        ".prunecancel",
        ".prunec"
      ],
      "Description": "Cancels an active prune if there is any.",
      "Usage": [
        ".prunecancel"
      ],
      "Submodule": "PruneCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageMessages Channel Permission"
      ]
    },
    {
      "Aliases": [
        ".reroadd",
        ".reroa"
      ],
      "Description": "Specify a message id, emote and a role name to have the bot assign the specified role to the user who reacts to the specified message (in this channel) with the specified emoji.\nYou can optionally specify an exclusivity group. Default is group 0 which is non-exclusive. Other groups are exclusive. Exclusive groups will let the user only have one of the roles specified in that group.\nYou can optionally specify a level requirement after a group. Users who don't meet the level requirement will not receive the role.\nYou can have up to 50 reaction roles per server in total.",
      "Usage": [
        ".reroadd 971276352684691466 😊 gamer",
        ".reroadd 971276352684691466 😢 emo 1",
        ".reroadd 971276352684691466 🤔 philosopher 5 20",
        ".reroadd 971276352684691466 👨 normie 5 20"
      ],
      "Submodule": "ReactionRoleCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".rerolist",
        ".reroli"
      ],
      "Description": "Lists all ReactionRole messages on this server with their message ids. Clicking/Tapping message ids will send you to that message.",
      "Usage": [
        ".rerolist"
      ],
      "Submodule": "ReactionRoleCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".reroremove",
        ".rerorm"
      ],
      "Description": "Remove all reaction roles from message specified by the id",
      "Usage": [
        ".reroremove 971276352684691466"
      ],
      "Submodule": "ReactionRoleCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".rerodeleteall",
        ".rerodela"
      ],
      "Description": "Deletes all reaction roles on the server. This action is irreversible.",
      "Usage": [
        ".rerodeleteall"
      ],
      "Submodule": "ReactionRoleCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".rerotransfer",
        ".rerot"
      ],
      "Description": "Transfers reaction roles from one message to another by specifying their ids. If the target message has reaction roles specified already, the reaction roles will be MERGED, not overwritten.",
      "Usage": [
        ".rerotransfer 971276352684691466 971427748448964628"
      ],
      "Submodule": "ReactionRoleCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".setrole",
        ".sr",
        ".giverole"
      ],
      "Description": "Gives a role to a user. The role you specify has to be lower in the role hierarchy than your highest role.",
      "Usage": [
        ".setrole @User Guest"
      ],
      "Submodule": "RoleCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".removerole",
        ".rr"
      ],
      "Description": "Removes a role from a user. The role you specify has to be lower in the role hierarchy than your highest role.",
      "Usage": [
        ".removerole @User Admin"
      ],
      "Submodule": "RoleCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".renamerole",
        ".renr"
      ],
      "Description": "Renames a role. The role you specify has to be lower in the role hierarchy than your highest role.",
      "Usage": [
        ".renamerole \"First role\" SecondRole"
      ],
      "Submodule": "RoleCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".removeallroles",
        ".rar"
      ],
      "Description": "Removes all roles which are lower than your highest role in the role hierarchy from the user you specify.",
      "Usage": [
        ".removeallroles @User"
      ],
      "Submodule": "RoleCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".createrole",
        ".cr"
      ],
      "Description": "Creates a role with a given name.",
      "Usage": [
        ".createrole Awesome Role"
      ],
      "Submodule": "RoleCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".deleterole",
        ".dr"
      ],
      "Description": "Deletes a role with a given name.",
      "Usage": [
        ".deleterole Awesome Role"
      ],
      "Submodule": "RoleCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".rolehoist",
        ".rh"
      ],
      "Description": "Toggles whether this role is displayed in the sidebar or not. The role you specify has to be lower in the role hierarchy than your highest role.",
      "Usage": [
        ".rolehoist Guests",
        ".rolehoist Space Wizards"
      ],
      "Submodule": "RoleCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".rolecolor",
        ".roleclr"
      ],
      "Description": "Set a role's color using its hex value. Provide no color in order to see the hex value of the color of the specified role. The role you specify has to be lower in the role hierarchy than your highest role.",
      "Usage": [
        ".rolecolor Admin",
        ".rolecolor ffba55 Admin"
      ],
      "Submodule": "RoleCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".stickyroles"
      ],
      "Description": "Toggles whether the bot will save the leaving users' roles, and reapply them once they re-join. The roles will be stored for up to 30 days.",
      "Usage": [
        ".stickyroles"
      ],
      "Submodule": "RoleCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".adsarm"
      ],
      "Description": "Toggles the automatic deletion of the user's message and Nadeko's confirmations for `.iam` and `.iamn` commands.",
      "Usage": [
        ".adsarm"
      ],
      "Submodule": "SelfAssignedRolesCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".asar"
      ],
      "Description": "Adds a role to the list of self-assignable roles. You can also specify a group. If 'Exclusive self-assignable roles' feature is enabled (`.tesar`), users will be able to pick one role per group.",
      "Usage": [
        ".asar Gamer",
        ".asar 1 Alliance",
        ".asar 1 Horde"
      ],
      "Submodule": "SelfAssignedRolesCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".sargn"
      ],
      "Description": "Sets a self assignable role group name. Provide no name to remove.",
      "Usage": [
        ".sargn 1 Faction",
        ".sargn 2"
      ],
      "Submodule": "SelfAssignedRolesCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".rsar"
      ],
      "Description": "Removes a specified role from the list of self-assignable roles.",
      "Usage": [
        ".rsar Gamer",
        ".rsar Alliance",
        ".rsar Horde"
      ],
      "Submodule": "SelfAssignedRolesCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".lsar"
      ],
      "Description": "Lists self-assignable roles. Shows 20 roles per page.",
      "Usage": [
        ".lsar",
        ".lsar 2"
      ],
      "Submodule": "SelfAssignedRolesCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".togglexclsar",
        ".tesar"
      ],
      "Description": "Toggles whether self-assigned roles are exclusive. While enabled, users can only have one self-assignable role per group.",
      "Usage": [
        ".togglexclsar"
      ],
      "Submodule": "SelfAssignedRolesCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".rolelevelreq",
        ".rlr"
      ],
      "Description": "Set a level requirement on a self-assignable role.",
      "Usage": [
        ".rolelevelreq 5 SomeRole"
      ],
      "Submodule": "SelfAssignedRolesCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".iam"
      ],
      "Description": "Adds a role to you that you choose. Role must be on the list of self-assignable roles.",
      "Usage": [
        ".iam Gamer"
      ],
      "Submodule": "SelfAssignedRolesCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".iamnot",
        ".iamn"
      ],
      "Description": "Removes a specified role from you. Role must be on the list of self-assignable roles.",
      "Usage": [
        ".iamnot Gamer"
      ],
      "Submodule": "SelfAssignedRolesCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".cacheusers"
      ],
      "Description": "Caches users of a Discord server and saves them to the database.",
      "Usage": [
        ".cacheusers",
        ".cacheusers serverId"
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".doas",
        ".execas"
      ],
      "Description": "Execute the command as if you were the target user. Requires bot ownership and server administrator permission.",
      "Usage": [
        ".doas @Thief .give all @Admin"
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".scadd",
        ".startcmdadd"
      ],
      "Description": "Adds a command to the list of commands which will be executed automatically in the current channel, in the order they were added in, by the bot when it startups up.",
      "Usage": [
        ".scadd .stats"
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".acadd",
        ".autocmdadd"
      ],
      "Description": "Adds a command to the list of commands which will be executed automatically every X seconds.",
      "Usage": [
        ".acadd 60 .prune 1000"
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".sclist",
        ".startcmdlist"
      ],
      "Description": "Lists all startup commands in the order they will be executed in.",
      "Usage": [
        ".sclist"
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".aclist",
        ".autolist",
        ".autocommands",
        ".autocmdlist"
      ],
      "Description": "Lists all auto commands and the intervals in which they execute.",
      "Usage": [
        ".aclist"
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".wait"
      ],
      "Description": "Used only as a startup command. Waits a certain number of milliseconds before continuing the execution of the following startup commands.",
      "Usage": [
        ".wait 3000"
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".acrm",
        ".autocmdrm"
      ],
      "Description": "Removes an auto command on the specified index.",
      "Usage": [
        ".acrm 3"
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".scrm",
        ".startcmdrm"
      ],
      "Description": "Removes a startup command on the specified index.",
      "Usage": [
        ".scrm 3"
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".scclear",
        ".scclr"
      ],
      "Description": "Removes all startup commands.",
      "Usage": [
        ".scclear"
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".forwardmessages",
        ".fwmsgs"
      ],
      "Description": "Toggles forwarding of non-command messages sent to bot's DM to the bot owners",
      "Usage": [
        ".forwardmessages"
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".forwardtoall",
        ".fwtoall"
      ],
      "Description": "Toggles whether messages will be forwarded to all bot owners or only to the first one specified in the creds.yml file",
      "Usage": [
        ".forwardtoall"
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".forwardtochannel",
        ".fwtoch",
        ".fwtochannel"
      ],
      "Description": "Toggles forwarding of non-command messages sent to bot's DM to the current channel",
      "Usage": [
        ".forwardtochannel"
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".shardstats"
      ],
      "Description": "Stats for shards. Paginated with 25 shards per page.\nFormat: `[status] | # [shard_id] | [last_heartbeat] | [server_count]`",
      "Usage": [
        ".shardstats",
        ".shardstats 2"
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".restartshard"
      ],
      "Description": "Try (re)connecting a shard with a certain shardid when it dies. No one knows will it work. Keep an eye on the console for errors.",
      "Usage": [
        ".restartshard 2"
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".leave"
      ],
      "Description": "Makes Nadeko leave the server. Either server name or server ID is required.",
      "Usage": [
        ".leave 123123123331"
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".deleteemptyservers"
      ],
      "Description": "Deletes all servers in which the bot is the only member.",
      "Usage": [
        ".deleteemptyservers"
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".die"
      ],
      "Description": "Shuts the bot down.",
      "Usage": [
        ".die"
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".restart"
      ],
      "Description": "Restarts the bot. Might not work.",
      "Usage": [
        ".restart"
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".setname",
        ".newnm"
      ],
      "Description": "Gives the bot a new name.",
      "Usage": [
        ".setname BotName"
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".setstatus"
      ],
      "Description": "Sets the bot's status. (Online/Idle/Dnd/Invisible)",
      "Usage": [
        ".setstatus Idle"
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".setavatar",
        ".setav"
      ],
      "Description": "Sets a new avatar image for the NadekoBot. Parameter is a direct link to an image.",
      "Usage": [
        ".setavatar https://i.imgur.com/xTG3a1I.jpg"
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".setbanner"
      ],
      "Description": "Sets a new banner image for the NadekoBot. Parameter is a direct link to an image. Supports gifs.",
      "Usage": [
        ".setbanner https://i.imgur.com/xTG3a1I.jpg"
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".setgame"
      ],
      "Description": "Sets the bots game status to either Playing, Listening, or Watching.",
      "Usage": [
        ".setgame Playing with snakes.",
        ".setgame Watching anime.",
        ".setgame Listening music."
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".setstream"
      ],
      "Description": "Sets the bots stream. First parameter is the twitch link, second parameter is stream name.",
      "Usage": [
        ".setstream TWITCHLINK Hello"
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".send"
      ],
      "Description": "Sends a message to a channel or user.\nYou can write \"channel\" (literally word 'channel') first followed by the channel id or channel mention, or\nYou can write \"user\" (literally word 'user') first followed by the user id or user mention.\nAfter either one of those, specify the message to be sent.\nThis command can only be used by the Bot Owner.",
      "Usage": [
        ".send channel 123123123132312 Stop spamming commands plz",
        ".send user 1231231232132 I can see in the console what you're doing."
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".stringsreload"
      ],
      "Description": "Reloads localized bot strings.",
      "Usage": [
        ".stringsreload"
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".coordreload"
      ],
      "Description": "Reloads coordinator config",
      "Usage": [
        ".coordreload"
      ],
      "Submodule": "SelfCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".logserver"
      ],
      "Description": "Enables or Disables ALL log events. If enabled, all log events will log to this channel.",
      "Usage": [
        ".logserver enable",
        ".logserver disable"
      ],
      "Submodule": "LogCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "No Public Bot",
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".logignore"
      ],
      "Description": "Toggles whether the `.log` and `.logserver` commands ignore the specified channel or user. Provide no arguments to see the list of currently ignored users and channels.",
      "Usage": [
        ".logignore",
        ".logignore @SomeUser",
        ".logignore #some-channel"
      ],
      "Submodule": "LogCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "No Public Bot",
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".logevents"
      ],
      "Description": "Shows a list of all events you can subscribe to with `.log`",
      "Usage": [
        ".logevents"
      ],
      "Submodule": "LogCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "No Public Bot",
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".log"
      ],
      "Description": "Toggles logging event. Disables it if it is active anywhere on the server. Enables if it isn't active. Use `.logevents` to see a list of all events you can subscribe to.",
      "Usage": [
        ".log userpresence",
        ".log userbanned"
      ],
      "Submodule": "LogCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "No Public Bot",
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".timezones"
      ],
      "Description": "Lists all timezones available on the system to be used with `.timezone`.",
      "Usage": [
        ".timezones"
      ],
      "Submodule": "TimeZoneCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".timezone"
      ],
      "Description": "Sets this guilds timezone. This affects bot's time output in this server (logs, etc..) **Setting timezone requires Administrator server permission.**",
      "Usage": [
        ".timezone",
        ".timezone GMT Standard Time"
      ],
      "Submodule": "TimeZoneCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".warn"
      ],
      "Description": "Warns a user with an optional reason.\nYou can specify a warning weight integer before the user. For example, 3 would mean that this warning counts as 3 warnings.",
      "Usage": [
        ".warn @Someone Very rude person",
        ".warn 3 @Someone Very rude person"
      ],
      "Submodule": "UserPunishCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "BanMembers Server Permission"
      ]
    },
    {
      "Aliases": [
        ".warnexpire",
        ".warne"
      ],
      "Description": "Gets or sets the number of days after which the warnings will be cleared automatically. This setting works retroactively. If you want to delete the warnings instead of clearing them, you can set the `--delete` optional parameter. Provide no parameter to see currently set expiry",
      "Usage": [
        ".warnexpire",
        ".warnexpire 3",
        ".warnexpire 6 --delete"
      ],
      "Submodule": "UserPunishCommands",
      "Module": "Administration",
      "Options": [
        "`--delete` (`-d`)   Delete warnings instead of clearing them.  "
      ],
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".warnlog"
      ],
      "Description": "See a list of warnings of a certain user.",
      "Usage": [
        ".warnlog @Someone"
      ],
      "Submodule": "UserPunishCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "BanMembers Server Permission"
      ]
    },
    {
      "Aliases": [
        ".warnlogall"
      ],
      "Description": "See a list of all warnings on the server. 15 users per page.",
      "Usage": [
        ".warnlogall",
        ".warnlogall 2"
      ],
      "Submodule": "UserPunishCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "BanMembers Server Permission"
      ]
    },
    {
      "Aliases": [
        ".warndelete",
        ".warnrm",
        ".warnd"
      ],
      "Description": "Deletes a warning from a user by its index.",
      "Usage": [
        ".warndelete 3"
      ],
      "Submodule": "UserPunishCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".warnclear",
        ".warnc"
      ],
      "Description": "Clears all warnings from a certain user. You can specify a number to clear a specific one.",
      "Usage": [
        ".warnclear @PoorDude 3",
        ".warnclear @PoorDude"
      ],
      "Submodule": "UserPunishCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "BanMembers Server Permission"
      ]
    },
    {
      "Aliases": [
        ".warnpunish",
        ".warnp"
      ],
      "Description": "Sets a punishment for a certain number of warnings. You can specify a time string after 'Ban' or *'Mute' punishments to make it a temporary mute/ban. Provide no punishment to remove. Available punishments: Ban, Kick, Softban, Mute, VoiceMute, ChatMute, AddRole, RemoveRoles",
      "Usage": [
        ".warnpunish 3",
        ".warnpunish 5 Ban",
        ".warnpunish 5 Mute 2d12h",
        ".warnpunish 4 AddRole toxic 1h"
      ],
      "Submodule": "UserPunishCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "BanMembers Server Permission"
      ]
    },
    {
      "Aliases": [
        ".warnpunishlist",
        ".warnpl"
      ],
      "Description": "Lists punishments for warnings.",
      "Usage": [
        ".warnpunishlist"
      ],
      "Submodule": "UserPunishCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".ban",
        ".b"
      ],
      "Description": "Bans a user by ID or name with an optional message. You can specify a time string before the user name to ban the user temporarily.",
      "Usage": [
        ".ban @Someone Get out!",
        ".ban \"Some Guy#1234\" Your behaviour is toxic.",
        ".ban 1d12h @Someone Come back when u chill"
      ],
      "Submodule": "UserPunishCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "BanMembers Server Permission"
      ]
    },
    {
      "Aliases": [
        ".banprune"
      ],
      "Description": "Sets how many days of messages will be deleted when a user is banned.\nOnly works if the user is banned via the .ban command or punishment.\nAllowed values: 0 - 7",
      "Usage": [
        ".banprune 3"
      ],
      "Submodule": "UserPunishCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "BanMembers Server Permission"
      ]
    },
    {
      "Aliases": [
        ".banmessage",
        ".banmsg",
        ".bantemplate",
        ".bantemp"
      ],
      "Description": "Sets a ban message template which will be used when a user is banned from this server. You can use embed strings and ban-specific placeholders: %ban.mod%, %ban.user%, %ban.duration% and %ban.reason%. You can disable ban message with `.banmsg -`",
      "Usage": [
        ".banmessage %ban.user%, you've been banned from %server.name%. Reason: %ban.reason%",
        ".banmessage { \"description\": \"%ban.user% you have been banned from %server.name% by %ban.mod%\" }"
      ],
      "Submodule": "UserPunishCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "BanMembers Server Permission"
      ]
    },
    {
      "Aliases": [
        ".banmsgreset"
      ],
      "Description": "Resets ban message to default. If you want to completely disable ban messages, use `.banmsg -`",
      "Usage": [
        ".banmsgreset"
      ],
      "Submodule": "UserPunishCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "BanMembers Server Permission"
      ]
    },
    {
      "Aliases": [
        ".banmsgtest"
      ],
      "Description": "If ban message is not disabled, bot will send you the message as if you were banned by yourself. Used for testing the ban message.",
      "Usage": [
        ".banmsgtest No reason",
        ".banmsgtest 1h Test 1 hour ban message"
      ],
      "Submodule": "UserPunishCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "BanMembers Server Permission"
      ]
    },
    {
      "Aliases": [
        ".unban"
      ],
      "Description": "Unbans a user with the provided user#discrim or id.",
      "Usage": [
        ".unban kwoth#1234",
        ".unban 123123123"
      ],
      "Submodule": "UserPunishCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "BanMembers Server Permission"
      ]
    },
    {
      "Aliases": [
        ".softban",
        ".sb"
      ],
      "Description": "Bans and then unbans a user by ID or name with an optional message.",
      "Usage": [
        ".softban @Someone Get out!",
        ".softban \"Some Guy#1234\" Your behaviour is toxic."
      ],
      "Submodule": "UserPunishCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "KickMembers, ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".kick",
        ".k"
      ],
      "Description": "Kicks a mentioned user.",
      "Usage": [
        ".kick @Someone Get out!",
        ".kick \"Some Guy#1234\" Your behaviour is toxic."
      ],
      "Submodule": "UserPunishCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "KickMembers Server Permission"
      ]
    },
    {
      "Aliases": [
        ".timeout"
      ],
      "Description": "Times the user out for the specified amount of time. You may optionally specify a reason, which will be sent to the user.",
      "Usage": [
        ".timeout @Someone 3h Shut up!",
        ".timeout @Someone 1h30m"
      ],
      "Submodule": "UserPunishCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ModerateMembers Server Permission"
      ]
    },
    {
      "Aliases": [
        ".massban"
      ],
      "Description": "Bans multiple users at once. Specify a space separated list of IDs of users who you wish to ban.",
      "Usage": [
        ".massban 123123123 3333333333 444444444"
      ],
      "Submodule": "UserPunishCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "BanMembers Server Permission"
      ]
    },
    {
      "Aliases": [
        ".masskill"
      ],
      "Description": "Specify a new-line separated list of `userid reason`. You can use Username#discrim instead of UserId. Specified users will be banned from the current server, blacklisted from the bot, and have all of their currency taken away.",
      "Usage": [
        ".masskill BadPerson#1234 Toxic person"
      ],
      "Submodule": "UserPunishCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "BanMembers Server Permission"
      ]
    },
    {
      "Aliases": [
        ".vcrolerm"
      ],
      "Description": "Removes any `.vcrole` associated with the specified channel ID. This is useful if your vcrole has been enabled on a VC which has been deleted.",
      "Usage": [
        ".vcrolerm 123123123123123"
      ],
      "Submodule": "VcRoleCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".vcrole"
      ],
      "Description": "Sets or resets a role which will be given to users who join the voice channel you're in when you run this command. Provide no role name to disable. You must be in a voice channel to run this command.",
      "Usage": [
        ".vcrole SomeRole",
        ".vcrole"
      ],
      "Submodule": "VcRoleCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".vcrolelist"
      ],
      "Description": "Shows a list of currently set voice channel roles.",
      "Usage": [
        ".vcrolelist"
      ],
      "Submodule": "VcRoleCommands",
      "Module": "Administration",
      "Options": null,
      "Requirements": []
    }
  ],
  "Expressions": [
    {
      "Aliases": [
        ".exprtoggleglobal",
        ".extg"
      ],
      "Description": "Toggles whether global expressions are usable on this server.",
      "Usage": [
        ".exprtoggleglobal"
      ],
      "Submodule": "Expressions",
      "Module": "Expressions",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".expradds",
        ".exadds",
        ".exas",
        ".expraddserver"
      ],
      "Description": "Add an expression with a trigger and a response in this server. Bot will post a response whenever someone types the trigger word. This command is useful if you want to lower the permission requirement for managing expressions by using `.dpo`. Guide [here](<https://nadekobot.readthedocs.io/en/latest/custom-reactions/>).",
      "Usage": [
        ".expradds \"hello\" Hi there %user.mention%"
      ],
      "Submodule": "Expressions",
      "Module": "Expressions",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".expradd",
        ".exadd",
        ".exa",
        ".acr"
      ],
      "Description": "Add an expression with a trigger and a response. Bot will post a response whenever someone types the trigger word.  Running this command in a server requires the Administrator permission. Running this command in DM is Bot Owner only and adds a new global expression. Guide [here](<https://nadekobot.readthedocs.io/en/latest/custom-reactions/>)",
      "Usage": [
        ".expradd \"hello\" Hi there %user.mention%"
      ],
      "Submodule": "Expressions",
      "Module": "Expressions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".expredit",
        ".exe",
        ".exedit",
        ".ecr"
      ],
      "Description": "Edits the expression's response given its ID.",
      "Usage": [
        ".expredit 123 I'm a magical girl"
      ],
      "Submodule": "Expressions",
      "Module": "Expressions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".exprlist",
        ".exl",
        ".exprli",
        ".exlist",
        ".exli",
        ".lcr"
      ],
      "Description": "Lists global or server expressions (20 expressions per page).\nRunning the command in DM will list global expressions, while running it in a server will list server expressions.\nShows enabled settings, followed by id, followed by the trigger.\n**Settings:** \n• 🗯️ Triggered if trigger matches any phrase (`.h exca`)\n• ✉️ Response will be DMed (`.h exdm`)\n• ❌ Trigger message will be deleted (`.h exad`)",
      "Usage": [
        ".exprlist 1"
      ],
      "Submodule": "Expressions",
      "Module": "Expressions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".exprshow",
        ".exs",
        ".exshow",
        ".scr"
      ],
      "Description": "Shows an expression's response on a given ID.",
      "Usage": [
        ".exprshow 1"
      ],
      "Submodule": "Expressions",
      "Module": "Expressions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".exprdelserv",
        ".exds",
        ".exdelserv"
      ],
      "Description": "Deletes an expression on a specific index on this server. This command is useful if you want to lower the permission requirement for managing expressions by using `.dpo`.",
      "Usage": [
        ".exprdelserv 5c"
      ],
      "Submodule": "Expressions",
      "Module": "Expressions",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".exprdel",
        ".exd",
        ".exdel",
        ".dcr"
      ],
      "Description": "Deletes an expression by index. If ran in DM, it is bot owner only and deletes a global expression. Running this command in a server requires the Administrator permission and deletes a server expression.",
      "Usage": [
        ".exprdel 5"
      ],
      "Submodule": "Expressions",
      "Module": "Expressions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".exreact",
        ".exr"
      ],
      "Description": "Sets or resets reactions (up to 3) which will be added to the response message of the Expression with the specified ID. Provide no emojis to reset.",
      "Usage": [
        ".exreact 59 👍 👎",
        ".exreact 59 <a:nFlower:408963839191941120>",
        ".exreact 59"
      ],
      "Submodule": "Expressions",
      "Module": "Expressions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".exprca",
        ".exca"
      ],
      "Description": "Toggles whether the expression will trigger if the triggering message contains the keyword (instead of only starting with it).",
      "Usage": [
        ".exprca 44"
      ],
      "Submodule": "Expressions",
      "Module": "Expressions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".exprdm",
        ".exdm"
      ],
      "Description": "Toggles whether the response message of the expression will be sent as a direct message.",
      "Usage": [
        ".exprdm 44"
      ],
      "Submodule": "Expressions",
      "Module": "Expressions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".exprad",
        ".exad"
      ],
      "Description": "Toggles whether the message triggering the expression will be automatically deleted.",
      "Usage": [
        ".exprad 59"
      ],
      "Submodule": "Expressions",
      "Module": "Expressions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".exprat",
        ".exat"
      ],
      "Description": "Toggles whether the expression will allow extra input after the trigger. For example, with this feature enabled, expression with trigger 'hi' will also be invoked when a user types 'hi there'. This feature is automatically enabled on expressions which have '%target%' in their response.",
      "Usage": [
        ".exprat 59"
      ],
      "Submodule": "Expressions",
      "Module": "Expressions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".expreload",
        ".exrel"
      ],
      "Description": "Reloads all expressions on all shards. Use this if you've made changes to the database while the bot is running, or used `.deleteunusedcrnq`",
      "Usage": [
        ".expreload"
      ],
      "Submodule": "Expressions",
      "Module": "Expressions",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".exprclear",
        ".exc",
        ".exclear"
      ],
      "Description": "Deletes all expression on this server.",
      "Usage": [
        ".exprclear"
      ],
      "Submodule": "Expressions",
      "Module": "Expressions",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".exexport"
      ],
      "Description": "Exports expressions from the current server (or global expressions in DMs) into a .yml file",
      "Usage": [
        ".exexport"
      ],
      "Submodule": "Expressions",
      "Module": "Expressions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".eximport"
      ],
      "Description": "Upload the file or send the raw .yml data with this command to import all expressions from the specified string or file into the current server (or as global expressions in dm)",
      "Usage": [
        ".eximport <upload .yml file>"
      ],
      "Submodule": "Expressions",
      "Module": "Expressions",
      "Options": null,
      "Requirements": []
    }
  ],
  "Gambling": [
    {
      "Aliases": [
        ".betstats"
      ],
      "Description": "Shows the total stats of several gambling features.\nUpdates once an hour.",
      "Usage": [
        ".betstats"
      ],
      "Submodule": "Gambling",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".timely"
      ],
      "Description": "Use to claim your timely currency.\nThis is usually set by the bot owners to be daily, hourly or once every 12 hours.\nBot owner has to specify the amount and the period on how often you can claim your currency.",
      "Usage": [
        ".timely"
      ],
      "Submodule": "Gambling",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".timelyreset"
      ],
      "Description": "Resets all user timeouts on `.timely` command.",
      "Usage": [
        ".timelyreset"
      ],
      "Submodule": "Gambling",
      "Module": "Gambling",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".timelyset"
      ],
      "Description": "Sets the 'timely' currency allowance amount for users. Second parameter is period in hours, default is 24 hours.",
      "Usage": [
        ".timelyset 100",
        ".timelyset 50 12"
      ],
      "Submodule": "Gambling",
      "Module": "Gambling",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".raffle"
      ],
      "Description": "Prints a name and ID of a random online user from the server, or from the online user in the specified role.",
      "Usage": [
        ".raffle",
        ".raffle RoleName"
      ],
      "Submodule": "Gambling",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".raffleany"
      ],
      "Description": "Prints a name and ID of a random user from the server, or from the specified role.",
      "Usage": [
        ".raffleany",
        ".raffleany  RoleName"
      ],
      "Submodule": "Gambling",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".curtrs"
      ],
      "Description": "Shows your currency transactions on the specified page. Bot owner can see other people's transactions too.",
      "Usage": [
        ".curtrs 2",
        ".curtrs @SomeUser 2"
      ],
      "Submodule": "Gambling",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".curtr"
      ],
      "Description": "Shows full details about a currency transaction with the specified ID. You can only check your own transactions.",
      "Usage": [
        ".curtr 3yvd"
      ],
      "Submodule": "Gambling",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".cash",
        ".$",
        ".currency",
        ".$$",
        ".$$$",
        ".cur"
      ],
      "Description": "Check how much currency a person has.\nIf no argument is provided it will check your own balance.",
      "Usage": [
        ".cash",
        ".cash @Someone"
      ],
      "Submodule": "Gambling",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".give"
      ],
      "Description": "Give someone a certain amount of currency. You can specify the reason after the mention.",
      "Usage": [
        ".give 1 @Someone",
        ".give 5 @CootGurl Ur so pwetty"
      ],
      "Submodule": "Gambling",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".award"
      ],
      "Description": "Awards someone a certain amount of currency. You can specify the reason after the Username. You can also specify a role name to award currency to all users in a role.",
      "Usage": [
        ".award 100 @person",
        ".award 5 Role Of Gamblers"
      ],
      "Submodule": "Gambling",
      "Module": "Gambling",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".take",
        ".seize"
      ],
      "Description": "Takes the specified amount of currency from someone. You can specify a role instead to take the specified amount of currency from all users in the role.",
      "Usage": [
        ".take 1 @Someone",
        ".take 50 SomeRole"
      ],
      "Submodule": "Gambling",
      "Module": "Gambling",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".betroll",
        ".br"
      ],
      "Description": "Bets the specified amount of currency and rolls a dice.\nRolling over 66 yields x2 of your currency, over 90 - x4 and 100 x10.\nYou can specify 'all', 'half' or 'X%' instead of the amount to bet that part of your current balance.",
      "Usage": [
        ".betroll 5"
      ],
      "Submodule": "Gambling",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".leaderboard",
        ".lb"
      ],
      "Description": "Displays the bot's currency leaderboard, or in other words, the richest users.\nSpecifying -c flag will show only users who are in this server.\nPaginated with 10 users per page.",
      "Usage": [
        ".leaderboard",
        ".leaderboard -c"
      ],
      "Submodule": "Gambling",
      "Module": "Gambling",
      "Options": [
        "`--clean` (`-c`)   Only show users who are on the server.  "
      ],
      "Requirements": []
    },
    {
      "Aliases": [
        ".rps"
      ],
      "Description": "Play a game of Rocket-Paperclip-Scissors with Nadeko.\nYou can bet on it. Winning awards you 1.95x of the bet.\nYou can specify 'all', 'half' or 'X%' instead of the amount to bet that part of your current balance.",
      "Usage": [
        ".rps r 100",
        ".rps scissors"
      ],
      "Submodule": "Gambling",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".luckyladder",
        ".lula",
        ".wheel",
        ".wof"
      ],
      "Description": "Bets the specified amount of currency on the lucky ladder. You can stop on one of many different multipliers. The won amount is rounded down to the nearest whole number. You can specify 'all', 'half' or 'X%' instead of the amount to bet that part of your current balance.",
      "Usage": [
        ".luckyladder 10"
      ],
      "Submodule": "Gambling",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".bettest"
      ],
      "Description": "Tests a betting command by specifying the name followed by the number of tests. Some have multiple variations.\nSee the list of all tests by specifying no parameters.",
      "Usage": [
        ".bettest",
        ".bettest betflip 1000",
        ".bettest slot 2000"
      ],
      "Submodule": "Gambling",
      "Module": "Gambling",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".race"
      ],
      "Description": "Starts a new animal race.",
      "Usage": [
        ".race"
      ],
      "Submodule": "AnimalRacingCommands",
      "Module": "Gambling",
      "Options": [
        "`--start-time` (`-s`)     "
      ],
      "Requirements": []
    },
    {
      "Aliases": [
        ".joinrace",
        ".jr"
      ],
      "Description": "Joins a new race. You can specify an amount of currency for betting (optional). You will get YourBet*(participants-1) back if you win.",
      "Usage": [
        ".joinrace",
        ".joinrace 5"
      ],
      "Submodule": "AnimalRacingCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".bank deposit",
        ".bank d",
        ".bank dep"
      ],
      "Description": "Deposits the specified amount of currency into the bank for later use.",
      "Usage": [
        ".bank deposit 50"
      ],
      "Submodule": "Bank",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".bank withdraw",
        ".bank w",
        ".bank with"
      ],
      "Description": "Withdraws the specified amount of currency from the bank if available.",
      "Usage": [
        ".bank withdraw 49"
      ],
      "Submodule": "Bank",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".bank balance",
        ".bank b",
        ".bank bal"
      ],
      "Description": "Shows how much currency is in your bank account.\nThis differs from your cash amount, as the cash amount is publicly available, but only you have access to your bank balance.\nHowever, you have to withdraw it first in order to use it.\nBot Owner can also check another user's bank balance.",
      "Usage": [
        ".bank balance",
        ".bank balance @User"
      ],
      "Submodule": "Bank",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".bank take",
        ".bank seize"
      ],
      "Description": "Takes the specified amount of currency from a user's bank",
      "Usage": [
        ".bank take 500 @MoniLaunder"
      ],
      "Submodule": "Bank",
      "Module": "Gambling",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".bank award"
      ],
      "Description": "Award the specified amount of currency to a user's bank",
      "Usage": [
        ".bank award 99999 @Bestie"
      ],
      "Submodule": "Bank",
      "Module": "Gambling",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".blackjack",
        ".bj"
      ],
      "Description": "Start or join a blackjack game by specifying the amount you're betting. \nYou must specify the amount you're betting. \nUse `.hit`, `.stand` and `.double` commands to play. \nGame is played with 4 decks. \nDealer hits on soft 17 and wins draws.",
      "Usage": [
        ".blackjack 50"
      ],
      "Submodule": "BlackJackCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".hit"
      ],
      "Description": "In the blackjack game, ask the dealer for an extra card.",
      "Usage": [
        ".hit"
      ],
      "Submodule": "BlackJackCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".stand"
      ],
      "Description": "Finish your turn in the blackjack game.",
      "Usage": [
        ".stand"
      ],
      "Submodule": "BlackJackCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".double"
      ],
      "Description": "In the blackjack game, double your bet in order to receive exactly one more card, and your turn ends.",
      "Usage": [
        ".double"
      ],
      "Submodule": "BlackJackCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".connect4",
        ".con4"
      ],
      "Description": "Creates or joins an existing connect4 game. 2 players are required for the game. Objective of the game is to get 4 of your pieces next to each other in a vertical, horizontal or diagonal line. You can specify a bet when you create a game and only users who bet the same amount will be able to join your game.",
      "Usage": [
        ".connect4"
      ],
      "Submodule": "Connect4Commands",
      "Module": "Gambling",
      "Options": [
        "`--turn-timer` (`-t`)   Turn time in seconds. It has to be between 5 and 60. Default 15.  "
      ],
      "Requirements": []
    },
    {
      "Aliases": [
        ".roll"
      ],
      "Description": "Rolls 0-100. If you supply a number `X` it rolls up to 30 normal dice. If you split 2 numbers with letter `d` (`xdy`) it will roll `X` dice from 1 to `y`. `Y` can be a letter 'F' if you want to roll fate dice instead of dnd.",
      "Usage": [
        ".roll",
        ".roll 7",
        ".roll 3d5",
        ".roll 5dF"
      ],
      "Submodule": "DiceRollCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".rolluo"
      ],
      "Description": "Rolls `X` normal dice (up to 30) unordered. If you split 2 numbers with letter `d` (`xdy`) it will roll `X` dice from 1 to `y`.",
      "Usage": [
        ".rolluo",
        ".rolluo 7",
        ".rolluo 3d5"
      ],
      "Submodule": "DiceRollCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".nroll"
      ],
      "Description": "Rolls in a given range. If you specify just one number instead of the range, it will roll from 0 to that number.",
      "Usage": [
        ".nroll 5",
        ".nroll 5-15"
      ],
      "Submodule": "DiceRollCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".draw"
      ],
      "Description": "Draws a card from this server's deck. You can draw up to 10 cards by supplying a number of cards to draw.",
      "Usage": [
        ".draw",
        ".draw 5"
      ],
      "Submodule": "DrawCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".drawnew"
      ],
      "Description": "Draws a card from the NEW deck of cards. You can draw up to 10 cards by supplying a number of cards to draw.",
      "Usage": [
        ".drawnew",
        ".drawnew 5"
      ],
      "Submodule": "DrawCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".deckshuffle",
        ".dsh"
      ],
      "Description": "Reshuffles all cards back into the deck.",
      "Usage": [
        ".deckshuffle"
      ],
      "Submodule": "DrawCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".betdraw",
        ".bd"
      ],
      "Description": "Bet on the card value and/or color. Specify the amount followed by your guess. \nYou can specify `r` or `b` for red or black, and `h` or `l` for high or low.\nYou can specify only h/l or only r/b or both.\nReturns are high but **7 always loses**.\nYou can specify 'all', 'half' or 'X%' instead of the amount to bet that part of your current balance.",
      "Usage": [
        ".betdraw 50 r",
        ".betdraw 200 b l",
        ".betdraw 1000 h",
        ".betdraw 38 hi black"
      ],
      "Submodule": "DrawCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".eventstart"
      ],
      "Description": "Starts one of the events seen on public Nadeko.\nEvents: `reaction`, `gamestatus`",
      "Usage": [
        ".eventstart reaction",
        ".eventstart reaction -d 1 -a 50 --pot-size 1500"
      ],
      "Submodule": "CurrencyEventsCommands",
      "Module": "Gambling",
      "Options": [
        "`--amount` (`-a`)   Amount of currency each user receives.  ",
        "`--pot-size` (`-p`)   The maximum amount of currency that can be rewarded. 0 means no limit.  ",
        "`--duration` (`-d`)   Number of hours the event should run for. Default 24.  "
      ],
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".flip"
      ],
      "Description": "Flips coin(s) - heads or tails, and shows an image.",
      "Usage": [
        ".flip",
        ".flip 3"
      ],
      "Submodule": "FlipCoinCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".betflip",
        ".bf"
      ],
      "Description": "Bet on the coin flip.\nThe result can be heads or tails.\nGuessing correctly rewards you with 1.95x of the currency you've bet (rounded up).\nMultiplier can be changed by the bot owner.\nYou can specify 'all', 'half' or 'X%' instead of the amount to bet that part of your current balance.",
      "Usage": [
        ".betflip 5 heads",
        ".betflip 3 t"
      ],
      "Submodule": "FlipCoinCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".pick"
      ],
      "Description": "Picks the currency planted in this channel. If the plant has a password, you need to specify it.",
      "Usage": [
        ".pick",
        ".pick passwd"
      ],
      "Submodule": "PlantPickCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".plant"
      ],
      "Description": "Spend an amount of currency to plant it in this channel. Default is 1. You can specify the password after the amount. Password has to be alphanumeric and it will be trimmed down to 10 characters if it's longer.",
      "Usage": [
        ".plant 5",
        ".plant 10 meow"
      ],
      "Submodule": "PlantPickCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".gencurrency",
        ".gc"
      ],
      "Description": "Toggles currency generation on this channel. Every posted message will have chance to spawn currency. Chance is specified by the Bot Owner. (default is 2%)",
      "Usage": [
        ".gencurrency"
      ],
      "Submodule": "PlantPickCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".gencurlist",
        ".gclist"
      ],
      "Description": "Shows the list of server and channel ids where gc is enabled. Paginated with 9 per page.",
      "Usage": [
        ".gencurlist"
      ],
      "Submodule": "PlantPickCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".shop"
      ],
      "Description": "Lists this server's administrators' shop. Paginated.",
      "Usage": [
        ".shop",
        ".shop 2"
      ],
      "Submodule": "ShopCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".shopbuy",
        ".buy"
      ],
      "Description": "Buys an item from the shop on a given index. If buying items, make sure that the bot can DM you.",
      "Usage": [
        ".shopbuy 2"
      ],
      "Submodule": "ShopCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".shopadd"
      ],
      "Description": "Adds an item to the shop.\nFirst you begin by specifying the type of the item you wish to add.\nAvailable types are role, list and command.\nIf the item is a role, specify a role id or a role name.\nIn case you're selling a command, and you need user's name, id etc, you can use the following placeholders:\n-     `%you%` - Buyer mention\n-     `%you.id%` - Buyer's user ID\n-     `%you.username%` - Buyer's username\n-     `%you.name%` - Buyer's global name\n-     `%you.nick%` - Buyer's display name\n90% of currency from each purchase will be received by the user who added the item to the shop. This is configurable by the bot owner",
      "Usage": [
        ".shopadd role 1000 Rich",
        ".shopadd cmd 1000 .setrole %user% Rich"
      ],
      "Submodule": "ShopCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".shoplistadd"
      ],
      "Description": "Adds an item to the list of items for sale in the shop entry given the index. You usually want to run this command in the secret channel, so that the unique items are not leaked.",
      "Usage": [
        ".shoplistadd 1 Uni-que-Steam-Key"
      ],
      "Submodule": "ShopCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".shopremove",
        ".shoprm"
      ],
      "Description": "Removes an item from the shop by its ID.",
      "Usage": [
        ".shopremove 1"
      ],
      "Submodule": "ShopCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".shopchangeprice",
        ".shopprice"
      ],
      "Description": "Change the price of a shop entry at the specified index. Specify the index of the entry, followed by the price",
      "Usage": [
        ".shopchangeprice 1 500"
      ],
      "Submodule": "ShopCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".shopchangename",
        ".shopname"
      ],
      "Description": "Change the name of a shop entry at the specified index. Only works for non-role items",
      "Usage": [
        ".shopchangename 3 Cool stuff"
      ],
      "Submodule": "ShopCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".shopswap"
      ],
      "Description": "Swap the index of two shop entries",
      "Usage": [
        ".shopswap 1 5"
      ],
      "Submodule": "ShopCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".shopmove"
      ],
      "Description": "Moves the shop entry from the current index to a new one",
      "Usage": [
        ".shopmove 2 4"
      ],
      "Submodule": "ShopCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".shopreq"
      ],
      "Description": "Sets a role which will be required to buy the item on the specified index. Specify only index to remove the requirement.",
      "Usage": [
        ".shopreq 2 Gamers",
        ".shopreq 2"
      ],
      "Submodule": "ShopCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".slot",
        ".slots"
      ],
      "Description": "Play Nadeko slots by placing your bet.\nYou can specify 'all', 'half' or 'X%' instead of the amount to bet that part of your current balance.",
      "Usage": [
        ".slot 5",
        ".slot all"
      ],
      "Submodule": "SlotCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".waifureset"
      ],
      "Description": "Resets your waifu stats, except current waifus.",
      "Usage": [
        ".waifureset"
      ],
      "Submodule": "WaifuClaimCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".waifuclaim",
        ".claim"
      ],
      "Description": "Claim a waifu for yourself by spending currency.  You must spend at least 10% more than her current value unless she set `.affinity` towards you.",
      "Usage": [
        ".waifuclaim 50 @Himesama"
      ],
      "Submodule": "WaifuClaimCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".waifutransfer"
      ],
      "Description": "Transfer the ownership of one of your waifus to another user. You must pay 10%  of your waifu's value unless that waifu has affinity towards you, in which case you must pay 60% fee. Transferred waifu's price will be reduced by the fee amount.",
      "Usage": [
        ".waifutransfer @ExWaifu @NewOwner"
      ],
      "Submodule": "WaifuClaimCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".divorce"
      ],
      "Description": "Releases your claim on a specific waifu. You will get 50% of that waifu's value back, unless that waifu has an affinity towards you, in which case they will be reimbursed instead. 6 hours cooldown.",
      "Usage": [
        ".divorce @CheatingSloot"
      ],
      "Submodule": "WaifuClaimCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".affinity",
        ".waifuaff"
      ],
      "Description": "Sets your affinity towards someone you want to be claimed by. Setting affinity will reduce their `.claim` on you by 20%. Provide no parameters to clear your affinity. 30 minutes cooldown.",
      "Usage": [
        ".affinity @MyHusband",
        ".affinity"
      ],
      "Submodule": "WaifuClaimCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".waifulb",
        ".waifus"
      ],
      "Description": "Shows top 9 waifus. You can specify another page to show other waifus.",
      "Usage": [
        ".waifulb",
        ".waifulb 3"
      ],
      "Submodule": "WaifuClaimCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".waifuinfo",
        ".waifustats"
      ],
      "Description": "Shows waifu stats for a target person. Defaults to you if no user is provided.",
      "Usage": [
        ".waifuinfo @MyCrush",
        ".waifuinfo"
      ],
      "Submodule": "WaifuClaimCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".waifugift",
        ".gift",
        ".gifts"
      ],
      "Description": "Gift an item to a waifu user.\nThe waifu's value will be increased by the percentage of the gift's value.\nYou can optionally prefix the gift with a multiplier to gift the item that many times.\nFor example, 3xRose will give the waifu 3 roses, 10xBread will give the waifu 10 breads. Do not use plural forms.\nNegative gifts will not show up in waifuinfo. \nProvide no parameters to see a list of items that you can gift.",
      "Usage": [
        ".waifugift",
        ".waifugift Rose @Himesama"
      ],
      "Submodule": "WaifuClaimCommands",
      "Module": "Gambling",
      "Options": null,
      "Requirements": []
    }
  ],
  "Games": [
    {
      "Aliases": [
        ".choose"
      ],
      "Description": "Chooses a thing from a list of things",
      "Usage": [
        ".choose Get up;Sleep;Sleep more"
      ],
      "Submodule": "Games",
      "Module": "Games",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".eightball",
        ".8ball"
      ],
      "Description": "Ask the 8ball a yes/no question.",
      "Usage": [
        ".eightball Is b1nzy a nice guy?"
      ],
      "Submodule": "Games",
      "Module": "Games",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".acrophobia",
        ".acro"
      ],
      "Description": "Starts an Acrophobia game.",
      "Usage": [
        ".acrophobia",
        ".acrophobia -s 30"
      ],
      "Submodule": "AcropobiaCommands",
      "Module": "Games",
      "Options": [
        "`--submission-time` (`-s`)   Time after which the submissions are closed and voting starts.  ",
        "`--vote-time` (`-v`)   Time after which the voting is closed and the winner is declared.  "
      ],
      "Requirements": []
    },
    {
      "Aliases": [
        ".cleverbot",
        ".chatbot",
        ".chatgpt"
      ],
      "Description": "Toggles cleverbot/chatgpt session.\nWhen enabled, the bot will reply to messages starting with bot mention in the server.\nExpressions starting with %bot.mention% won't work if cleverbot/chatgpt is enabled.",
      "Usage": [
        ".cleverbot"
      ],
      "Submodule": "ChatterBotCommands",
      "Module": "Games",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".hangmanlist"
      ],
      "Description": "Shows a list of hangman question categories.",
      "Usage": [
        ".hangmanlist"
      ],
      "Submodule": "HangmanCommands",
      "Module": "Games",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".hangman"
      ],
      "Description": "Starts a game of hangman in the channel. You can optionally select a category `.hangmanlist` to see a list of available categories.",
      "Usage": [
        ".hangman",
        ".hangman movies"
      ],
      "Submodule": "HangmanCommands",
      "Module": "Games",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".hangmanstop"
      ],
      "Description": "Stops the active hangman game on this channel if it exists.",
      "Usage": [
        ".hangmanstop"
      ],
      "Submodule": "HangmanCommands",
      "Module": "Games",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".nunchi"
      ],
      "Description": "Creates or joins an existing nunchi game. Users have to count up by 1 from the starting number shown by the bot. If someone makes a mistake (types an incorrect number, or repeats the same number) they are out of the game and a new round starts without them.  Minimum 3 users required.",
      "Usage": [
        ".nunchi"
      ],
      "Submodule": "NunchiCommands",
      "Module": "Games",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".typestart"
      ],
      "Description": "Starts a typing contest.",
      "Usage": [
        ".typestart"
      ],
      "Submodule": "SpeedTypingCommands",
      "Module": "Games",
      "Options": [
        "`--start-time` (`-s`)   How long does it take for the race to start. Default 5.  "
      ],
      "Requirements": []
    },
    {
      "Aliases": [
        ".typestop"
      ],
      "Description": "Stops a typing contest on the current channel.",
      "Usage": [
        ".typestop"
      ],
      "Submodule": "SpeedTypingCommands",
      "Module": "Games",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".typeadd"
      ],
      "Description": "Adds a new article to the typing contest.",
      "Usage": [
        ".typeadd wordswords"
      ],
      "Submodule": "SpeedTypingCommands",
      "Module": "Games",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".typelist"
      ],
      "Description": "Lists added typing articles with their IDs. 15 per page.",
      "Usage": [
        ".typelist",
        ".typelist 3"
      ],
      "Submodule": "SpeedTypingCommands",
      "Module": "Games",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".typedel"
      ],
      "Description": "Deletes a typing article given the ID.",
      "Usage": [
        ".typedel 3"
      ],
      "Submodule": "SpeedTypingCommands",
      "Module": "Games",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".tictactoe",
        ".ttt"
      ],
      "Description": "Starts a game of tic tac toe.\nAnother user must run the command in the same channel in order to accept the challenge.\nUse numbers 1-9 to play.",
      "Usage": [
        ".tictactoe"
      ],
      "Submodule": "TicTacToeCommands",
      "Module": "Games",
      "Options": [
        "`--turn-timer` (`-t`)   Turn time in seconds. Default 15.  "
      ],
      "Requirements": []
    },
    {
      "Aliases": [
        ".trivia",
        ".t"
      ],
      "Description": "Starts a game of trivia.\nFirst player to get to 10 points wins by default.\n30 seconds per question.",
      "Usage": [
        ".trivia",
        ".trivia --timeout 5 -p -w 3 -q 10"
      ],
      "Submodule": "TriviaCommands",
      "Module": "Games",
      "Options": [
        "`--pokemon` (`-p`)   Whether it's 'Who's that pokemon?' trivia.  ",
        "`--nohint`   Don't show any hints.  ",
        "`--win-req` (`-w`)   Winning requirement. Set 0 for an infinite game. Default 10.  ",
        "`--question-timer` (`-q`)   How long until the question ends. Default 30.  ",
        "`--timeout` (`-t`)   Number of questions of inactivity in order stop. Set 0 for never. Default 10.  "
      ],
      "Requirements": []
    },
    {
      "Aliases": [
        ".tl"
      ],
      "Description": "Shows a current trivia leaderboard.",
      "Usage": [
        ".tl"
      ],
      "Submodule": "TriviaCommands",
      "Module": "Games",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".tq"
      ],
      "Description": "Quits current trivia after current question.",
      "Usage": [
        ".tq"
      ],
      "Submodule": "TriviaCommands",
      "Module": "Games",
      "Options": null,
      "Requirements": []
    }
  ],
  "Help": [
    {
      "Aliases": [
        ".modules",
        ".mdls"
      ],
      "Description": "List all of the bot's modules.\nEach module contains commands that you can use.",
      "Usage": [
        ".modules"
      ],
      "Submodule": "Help",
      "Module": "Help",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".commands",
        ".cmds"
      ],
      "Description": "List all of the bot's commands in the specified module.\nYou can either specify the full name or only the first few letters of the module name.\nSpecifying no module will show the list of modules instead.",
      "Usage": [
        ".commands Admin",
        ".commands Admin --view 1",
        ".commands"
      ],
      "Submodule": "Help",
      "Module": "Help",
      "Options": [
        "`--view` (`-v`)   Specifies how to output the list of commands. 0 - Hide commands which you can't use, 1 - Cross out commands which you can't use, 2 - Show all.  "
      ],
      "Requirements": []
    },
    {
      "Aliases": [
        ".h",
        ".help"
      ],
      "Description": "Shows help for a single command.\nCommand help contains instructions on how to use the command with examples and a list of parameters.\nDMs you helpful links if no parameters are specified.",
      "Usage": [
        ".h .cmds",
        ".h"
      ],
      "Submodule": "Help",
      "Module": "Help",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".gencmdlist"
      ],
      "Description": "Generates a json of the commands list and sends it to the chat.",
      "Usage": [
        ".gencmdlist"
      ],
      "Submodule": "Help",
      "Module": "Help",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".guide",
        ".readme"
      ],
      "Description": "Sends a readme and a guide links to the channel.",
      "Usage": [
        ".guide"
      ],
      "Submodule": "Help",
      "Module": "Help",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".donate"
      ],
      "Description": "Provides instructions for helping the project financially.",
      "Usage": [
        ".donate"
      ],
      "Submodule": "Help",
      "Module": "Help",
      "Options": null,
      "Requirements": [
        "Only Public Bot"
      ]
    },
    {
      "Aliases": [
        ".patron"
      ],
      "Description": "Check your patronage status and command usage quota. Bot owners can check targeted user's patronage status.",
      "Usage": [
        ".patron"
      ],
      "Submodule": "Patronage",
      "Module": "Help",
      "Options": null,
      "Requirements": [
        "Only Public Bot"
      ]
    },
    {
      "Aliases": [
        ".patronmessage",
        ".patronmsg"
      ],
      "Description": "Sends a message to all patrons of the specified tier and higher.\nSupports [embeds](https://eb.nadeko.bot/)",
      "Usage": [
        ".patronmessage x hello"
      ],
      "Submodule": "Patronage",
      "Module": "Help",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "Only Public Bot"
      ]
    }
  ],
  "Medusa": [
    {
      "Aliases": [
        ".medusaload",
        ".meload"
      ],
      "Description": "Loads a medusa with the specified name from the data/medusae/ folder.\nProvide no name to see the list of loadable medusae.\nRead about the medusa system [here](https://nadekobot.readthedocs.io/en/latest/medusa/creating-a-medusa/)",
      "Usage": [
        ".medusaload mycoolmedusa",
        ".medusaload"
      ],
      "Submodule": "Medusa",
      "Module": "Medusa",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".medusaunload",
        ".meunload"
      ],
      "Description": "Unloads the previously loaded medusa.\nProvide no name to see the list of unloadable medusae. \nRead about the medusa system [here](https://nadekobot.readthedocs.io/en/latest/medusa/creating-a-medusa/)",
      "Usage": [
        ".medusaunload mycoolmedusa",
        ".medusaunload"
      ],
      "Submodule": "Medusa",
      "Module": "Medusa",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".medusalist",
        ".melist"
      ],
      "Description": "Lists all loaded and unloaded medusae.\nRead about the medusa system [here](https://nadekobot.readthedocs.io/en/latest/medusa/creating-a-medusa/)",
      "Usage": [
        ".medusalist"
      ],
      "Submodule": "Medusa",
      "Module": "Medusa",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".medusainfo",
        ".meinfo"
      ],
      "Description": "Shows information about the specified medusa such as the author, name, description, list of sneks, number of commands etc.\nProvide no name to see the basic information about all loaded medusae. \nRead about the medusa system [here](https://nadekobot.readthedocs.io/en/latest/medusa/creating-a-medusa/)",
      "Usage": [
        ".medusainfo mycoolmedusa",
        ".medusainfo"
      ],
      "Submodule": "Medusa",
      "Module": "Medusa",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".medusasearch",
        ".mesearchw"
      ],
      "Description": "Searches for medusae online given the search term",
      "Usage": [
        ".medusasearch shrine"
      ],
      "Submodule": "Medusa",
      "Module": "Medusa",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "No Public Bot"
      ]
    }
  ],
  "Music": [
    {
      "Aliases": [
        ".join",
        ".j",
        ".move",
        ".mv"
      ],
      "Description": "Makes the bot join your voice channel.",
      "Usage": [
        ".join"
      ],
      "Submodule": "Music",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".destroy",
        ".d"
      ],
      "Description": "Completely stops the music and unbinds the bot from the channel. (may cause weird behaviour)",
      "Usage": [
        ".destroy"
      ],
      "Submodule": "Music",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".play",
        ".p",
        ".start"
      ],
      "Description": "Queues up and plays a song or video based on a search query, song name, artist name or youtube link.\nIf no parameters are specified, it will skip the current song.\nIf you specify a song number, it will jump to that song.\nIf you specify a search query, acts as a `.q` command\n**You must be in a voice channel**.",
      "Usage": [
        ".play",
        ".play 5",
        ".play Dream Of Venice"
      ],
      "Submodule": "Music",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".queue",
        ".q",
        ".yq",
        ".enqueue"
      ],
      "Description": "Queues up and plays a song or video based on a search query, song name, artist name, search query or youtube link.\nBot will join your voice channel. \n**You must be in a voice channel**.",
      "Usage": [
        ".queue Dream Of Venice"
      ],
      "Submodule": "Music",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".queuenext",
        ".qn"
      ],
      "Description": "Works the same as `.queue` command, except it enqueues the new song after the current one. **You must be in a voice channel**.",
      "Usage": [
        ".queuenext Dream Of Venice"
      ],
      "Submodule": "Music",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".volume",
        ".vol",
        ".defvol"
      ],
      "Description": "Sets the music playback volume (0-100%). Persistent server setting. Default 100",
      "Usage": [
        ".volume 50"
      ],
      "Submodule": "Music",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".next",
        ".n"
      ],
      "Description": "Goes to the next song in the queue. You have to be in the same voice channel as the bot",
      "Usage": [
        ".next"
      ],
      "Submodule": "Music",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".listqueue",
        ".lq"
      ],
      "Description": "Lists 10 currently queued songs per page. Default page is 1.",
      "Usage": [
        ".listqueue",
        ".listqueue 2"
      ],
      "Submodule": "Music",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".queuesearch",
        ".qs",
        ".yqs"
      ],
      "Description": "Search for top 5 youtube song result using keywords, and type the index of the song to play that song. Bot will join your voice channel. **You must be in a voice channel**.",
      "Usage": [
        ".queuesearch Dream Of Venice"
      ],
      "Submodule": "Music",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".songremove",
        ".srm",
        ".trackremove",
        ".trm"
      ],
      "Description": "Remove a song by its # in the queue, or 'all' (or provide no parameter) to remove all songs from the queue.",
      "Usage": [
        ".songremove 5",
        ".songremove all",
        ".songremove"
      ],
      "Submodule": "Music",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".stop",
        ".s"
      ],
      "Description": "Stops the music and preserves the current song index. Stays in the channel.",
      "Usage": [
        ".stop"
      ],
      "Submodule": "Music",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".queuerepeat",
        ".qrp",
        ".rpl"
      ],
      "Description": "Sets music player repeat strategy for this server.\n- `n` / `no` - player will stop once it reaches the end of the queue\n- `s` / `song` - player will repeat current song\n- `q` / `queue` or empty - player will repeat entire music queue",
      "Usage": [
        ".queuerepeat",
        ".queuerepeat n",
        ".queuerepeat song"
      ],
      "Submodule": "Music",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".pause"
      ],
      "Description": "Pauses or Unpauses the song.",
      "Usage": [
        ".pause"
      ],
      "Submodule": "Music",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".radio",
        ".ra"
      ],
      "Description": "Queues a radio stream from a link. It can be a direct mp3 radio stream, .m3u, .pls .asx or .xspf (Usage Video: <https://streamable.com/al54>)",
      "Usage": [
        ".radio radio link here"
      ],
      "Submodule": "Music",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".local",
        ".lo"
      ],
      "Description": "Queues a local file by specifying a full path.",
      "Usage": [
        ".local C:/music/mysong.mp3"
      ],
      "Submodule": "Music",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".localplaylist",
        ".lopl"
      ],
      "Description": "Queues all songs from a directory.",
      "Usage": [
        ".localplaylist C:/music/classical"
      ],
      "Submodule": "Music",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".trackmove",
        ".tm",
        ".movesong",
        ".ms"
      ],
      "Description": "Moves a song from one position to another.",
      "Usage": [
        ".trackmove 5 3"
      ],
      "Submodule": "Music",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".playlist",
        ".pl"
      ],
      "Description": "Queues up to 500 songs from a youtube playlist specified by a link, or keywords.",
      "Usage": [
        ".playlist <youtube_playlist_link>"
      ],
      "Submodule": "Music",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".nowplaying",
        ".np"
      ],
      "Description": "Shows the song that the bot is currently playing.",
      "Usage": [
        ".nowplaying"
      ],
      "Submodule": "Music",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".playlistshuffle",
        ".shuffle",
        ".sh",
        ".plsh"
      ],
      "Description": "Shuffles the current playlist.",
      "Usage": [
        ".playlistshuffle"
      ],
      "Submodule": "Music",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".setmusicchannel",
        ".smch"
      ],
      "Description": "Sets the current channel as the default music output channel. This will output playing, finished, paused and removed songs to that channel instead of the channel where the first song was queued in. Persistent server setting.",
      "Usage": [
        ".setmusicchannel"
      ],
      "Submodule": "Music",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot",
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".unsetmusicchannel",
        ".usmch"
      ],
      "Description": "Bot will output playing, finished, paused and removed songs to the channel where the first song was queued in. Persistent server setting.",
      "Usage": [
        ".unsetmusicchannel"
      ],
      "Submodule": "Music",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot",
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".autodisconnect",
        ".autodc"
      ],
      "Description": "Toggles whether the bot should disconnect from the voice channel once it's done playing all of the songs and queue repeat option is set to `none`.",
      "Usage": [
        ".autodisconnect"
      ],
      "Submodule": "Music",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".musicquality",
        ".mquality"
      ],
      "Description": "Gets or sets the default music player quality. Available settings: Highest, High, Medium, Low. Default is **Highest**. Provide no argument to see current setting.",
      "Usage": [
        ".musicquality",
        ".musicquality High",
        ".musicquality Low"
      ],
      "Submodule": "Music",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot",
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".queueautoplay",
        ".qap"
      ],
      "Description": "Toggles autoplay - When the song is finished, automatically queue a related Youtube song. (Works only for Youtube songs)",
      "Usage": [
        ".queueautoplay"
      ],
      "Submodule": "Music",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".qfp"
      ],
      "Description": "Triggers fairplay. The song queue will be re-ordered in a fair manner. No effect on newly added songs.",
      "Usage": [
        ".qfp"
      ],
      "Submodule": "Music",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".playlists",
        ".pls"
      ],
      "Description": "Lists all playlists. Paginated, 20 per page.",
      "Usage": [
        ".playlists 1"
      ],
      "Submodule": "PlaylistCommands",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".deleteplaylist",
        ".delpls"
      ],
      "Description": "Deletes a saved playlist using its id. Works only if you made it or if you are the bot owner.",
      "Usage": [
        ".deleteplaylist 5"
      ],
      "Submodule": "PlaylistCommands",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".playlistshow",
        ".plshow"
      ],
      "Description": "Lists all songs in a playlist specified by its id. Paginated, 20 per page.",
      "Usage": [
        ".playlistshow 1"
      ],
      "Submodule": "PlaylistCommands",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".save"
      ],
      "Description": "Saves a playlist under a certain name. Playlist name must be no longer than 20 characters and must not contain dashes.",
      "Usage": [
        ".save classical1"
      ],
      "Submodule": "PlaylistCommands",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".load"
      ],
      "Description": "Loads a saved playlist using its ID. Use `.pls` to list all saved playlists and `.save` to save new ones.",
      "Usage": [
        ".load 5"
      ],
      "Submodule": "PlaylistCommands",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".deleteplaylists"
      ],
      "Description": "Deletes everything from MusicPlaylists.",
      "Usage": [
        ".deleteplaylists"
      ],
      "Submodule": "PlaylistCommands",
      "Module": "Music",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "No Public Bot"
      ]
    }
  ],
  "Permissions": [
    {
      "Aliases": [
        ".verbose",
        ".v"
      ],
      "Description": "Toggles or sets whether to show when a command/module is blocked.",
      "Usage": [
        ".verbose",
        ".verbose true"
      ],
      "Submodule": "Permissions",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".permrole",
        ".pr"
      ],
      "Description": "Sets a role which can change permissions. Supply no parameters to see the current one. Type 'reset' instead of the role name to reset the currently set permission role. Users with the Administrator server permissions can use permission commands regardless of whether they have the specified role. There is no default permission role.",
      "Usage": [
        ".permrole Some Role",
        ".permrole reset"
      ],
      "Submodule": "Permissions",
      "Module": "Permissions",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".listperms",
        ".lp"
      ],
      "Description": "Lists whole permission chain with their indexes. You can specify an optional page number if there are a lot of permissions.",
      "Usage": [
        ".listperms",
        ".listperms 3"
      ],
      "Submodule": "Permissions",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".removeperm",
        ".rp"
      ],
      "Description": "Removes a permission from a given position in the Permissions list.",
      "Usage": [
        ".removeperm 1"
      ],
      "Submodule": "Permissions",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".moveperm",
        ".mp"
      ],
      "Description": "Moves permission from one position to another in the Permissions list.",
      "Usage": [
        ".moveperm 2 4"
      ],
      "Submodule": "Permissions",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".srvrcmd",
        ".sc"
      ],
      "Description": "Sets a command's permission at the server level.",
      "Usage": [
        ".srvrcmd \"command name\" disable"
      ],
      "Submodule": "Permissions",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".srvrmdl",
        ".sm"
      ],
      "Description": "Sets a module's permission at the server level.",
      "Usage": [
        ".srvrmdl ModuleName enable"
      ],
      "Submodule": "Permissions",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".usrcmd",
        ".uc"
      ],
      "Description": "Sets a command's permission at the user level.",
      "Usage": [
        ".usrcmd \"command name\" enable SomeUsername"
      ],
      "Submodule": "Permissions",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".usrmdl",
        ".um"
      ],
      "Description": "Sets a module's permission at the user level.",
      "Usage": [
        ".usrmdl ModuleName enable SomeUsername"
      ],
      "Submodule": "Permissions",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".rolecmd",
        ".rc"
      ],
      "Description": "Sets a command's permission at the role level.",
      "Usage": [
        ".rolecmd \"command name\" disable MyRole"
      ],
      "Submodule": "Permissions",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".rolemdl",
        ".rm"
      ],
      "Description": "Sets a module's permission at the role level.",
      "Usage": [
        ".rolemdl ModuleName enable MyRole"
      ],
      "Submodule": "Permissions",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".chnlcmd",
        ".cc"
      ],
      "Description": "Sets a command's permission at the channel level.",
      "Usage": [
        ".chnlcmd \"command name\" enable SomeChannel"
      ],
      "Submodule": "Permissions",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".chnlmdl",
        ".cm"
      ],
      "Description": "Sets a module's permission at the channel level.",
      "Usage": [
        ".chnlmdl ModuleName enable SomeChannel"
      ],
      "Submodule": "Permissions",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".allchnlmdls",
        ".acm"
      ],
      "Description": "Enable or disable all modules in a specified channel.",
      "Usage": [
        ".allchnlmdls enable #SomeChannel"
      ],
      "Submodule": "Permissions",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".allrolemdls",
        ".arm"
      ],
      "Description": "Enable or disable all modules for a specific role.",
      "Usage": [
        ".allrolemdls [enable/disable] MyRole"
      ],
      "Submodule": "Permissions",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".allusrmdls",
        ".aum"
      ],
      "Description": "Enable or disable all modules for a specific user.",
      "Usage": [
        ".allusrmdls enable @Someone"
      ],
      "Submodule": "Permissions",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".allsrvrmdls",
        ".asm"
      ],
      "Description": "Enable or disable all modules for your server.",
      "Usage": [
        ".allsrvrmdls [enable/disable]"
      ],
      "Submodule": "Permissions",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".userblacklist",
        ".ubl"
      ],
      "Description": "Either [add]s or [rem]oves a user or users specified by a Mention or an ID from a blacklist.\nSpecify no argument or a page number to list blacklisted users.",
      "Usage": [
        ".userblacklist add @SomeUser @SomeUser2 @SomeUser3",
        ".userblacklist rem 12312312313",
        ".userblacklist",
        ".userblacklist 4"
      ],
      "Submodule": "BlacklistCommands",
      "Module": "Permissions",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".channelblacklist",
        ".cbl"
      ],
      "Description": "Either [add]s or [rem]oves a channel or channels specified an ID from a blacklist.\nSpecify no argument or a page number to list blacklisted channels.",
      "Usage": [
        ".channelblacklist add 12312312312 66666666666",
        ".channelblacklist rem 12312312312",
        ".channelblacklist",
        ".channelblacklist 3"
      ],
      "Submodule": "BlacklistCommands",
      "Module": "Permissions",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".serverblacklist",
        ".sbl"
      ],
      "Description": "Either [add]s or [rem]oves a server, or servers specified by an ID from a blacklist.\nSpecify no argument or a page number to list blacklisted servers.",
      "Usage": [
        ".serverblacklist add 12312321312",
        ".serverblacklist rem 12312321312",
        ".serverblacklist",
        ".serverblacklist 2"
      ],
      "Submodule": "BlacklistCommands",
      "Module": "Permissions",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".cmdcooldown",
        ".cmdcd"
      ],
      "Description": "Sets a cooldown, in seconds, for a command or an expression which will be applied per user. Set it to 0 to remove the cooldown. Supports a special command `cleverbot:response` which can be used limit how often users can talk to cleverbot",
      "Usage": [
        ".cmdcooldown .h 5",
        ".cmdcooldown .pat 30"
      ],
      "Submodule": "CmdCdsCommands",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".allcmdcooldowns",
        ".cmdcds"
      ],
      "Description": "Shows a list of all commands and their respective cooldowns.",
      "Usage": [
        ".allcmdcooldowns"
      ],
      "Submodule": "CmdCdsCommands",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".fwclear"
      ],
      "Description": "Deletes all filtered words on this server.",
      "Usage": [
        ".fwclear"
      ],
      "Submodule": "FilterCommands",
      "Module": "Permissions",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".filterlist",
        ".fl"
      ],
      "Description": "Lists invite and link filter channels and status.",
      "Usage": [
        ".filterlist"
      ],
      "Submodule": "FilterCommands",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".srvrfilterinv",
        ".sfi"
      ],
      "Description": "Toggles automatic deletion of invites posted in the server. Does not affect users with the Administrator permission.",
      "Usage": [
        ".srvrfilterinv"
      ],
      "Submodule": "FilterCommands",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".chnlfilterinv",
        ".cfi"
      ],
      "Description": "Toggles automatic deletion of invites posted in the channel. Does not negate the `.srvrfilterinv` enabled setting. Does not affect users with the Administrator permission.",
      "Usage": [
        ".chnlfilterinv"
      ],
      "Submodule": "FilterCommands",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".srvrfilterlin",
        ".sfl"
      ],
      "Description": "Toggles automatic deletion of links posted in the server. Does not affect users with the Administrator permission.",
      "Usage": [
        ".srvrfilterlin"
      ],
      "Submodule": "FilterCommands",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".chnlfilterlin",
        ".cfl"
      ],
      "Description": "Toggles automatic deletion of links posted in the channel. Does not negate the `.srvrfilterlin` enabled setting. Does not affect users with the Administrator permission.",
      "Usage": [
        ".chnlfilterlin"
      ],
      "Submodule": "FilterCommands",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".srvrfilterwords",
        ".sfw"
      ],
      "Description": "Toggles automatic deletion of messages containing filtered words on the server. Does not affect users with the Administrator permission.",
      "Usage": [
        ".srvrfilterwords"
      ],
      "Submodule": "FilterCommands",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".chnlfilterwords",
        ".cfw"
      ],
      "Description": "Toggles automatic deletion of messages containing filtered words on the channel. Does not negate the `.srvrfilterwords` enabled setting. Does not affect users with the Administrator permission.",
      "Usage": [
        ".chnlfilterwords"
      ],
      "Submodule": "FilterCommands",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".filterword",
        ".fw"
      ],
      "Description": "Adds or removes (if it exists) a word from the list of filtered words. Use`.sfw` or `.cfw` to toggle filtering.",
      "Usage": [
        ".filterword poop"
      ],
      "Submodule": "FilterCommands",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".lstfilterwords",
        ".lfw"
      ],
      "Description": "Shows a list of filtered words.",
      "Usage": [
        ".lstfilterwords"
      ],
      "Submodule": "FilterCommands",
      "Module": "Permissions",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".globalpermlist",
        ".gpl",
        ".lgp",
        ".globalperms",
        ".listglobalperms"
      ],
      "Description": "Lists global permissions set by the bot owner.",
      "Usage": [
        ".globalpermlist"
      ],
      "Submodule": "GlobalPermissionCommands",
      "Module": "Permissions",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".globalmodule",
        ".gmod"
      ],
      "Description": "Toggles whether a module can be used on any server.",
      "Usage": [
        ".globalmodule nsfw"
      ],
      "Submodule": "GlobalPermissionCommands",
      "Module": "Permissions",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".globalcommand",
        ".gcmd"
      ],
      "Description": "Toggles whether a command can be used on any server.",
      "Usage": [
        ".globalcommand .stats"
      ],
      "Submodule": "GlobalPermissionCommands",
      "Module": "Permissions",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".resetperms"
      ],
      "Description": "Resets the bot's permissions module on this server to the default value.",
      "Usage": [
        ".resetperms"
      ],
      "Submodule": "ResetPermissionsCommands",
      "Module": "Permissions",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".resetglobalperms"
      ],
      "Description": "Resets global permissions set by bot owner.",
      "Usage": [
        ".resetglobalperms"
      ],
      "Submodule": "ResetPermissionsCommands",
      "Module": "Permissions",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    }
  ],
  "Searches": [
    {
      "Aliases": [
        ".weather",
        ".we"
      ],
      "Description": "Shows current weather data for the specified city.",
      "Usage": [
        ".weather Moscow, RU"
      ],
      "Submodule": "Searches",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".time"
      ],
      "Description": "Shows the current time and timezone in the specified location.",
      "Usage": [
        ".time London, UK"
      ],
      "Submodule": "Searches",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".movie",
        ".omdb",
        ".imdb"
      ],
      "Description": "Queries omdb for movies or series, show first result.",
      "Usage": [
        ".movie Batman vs Superman"
      ],
      "Submodule": "Searches",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".randomcat",
        ".meow"
      ],
      "Description": "Shows a random cat image.",
      "Usage": [
        ".randomcat"
      ],
      "Submodule": "Searches",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".randomdog",
        ".woof"
      ],
      "Description": "Shows a random dog image.",
      "Usage": [
        ".randomdog"
      ],
      "Submodule": "Searches",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".randomfood",
        ".yum"
      ],
      "Description": "Shows a random food image.",
      "Usage": [
        ".randomfood"
      ],
      "Submodule": "Searches",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".randombird",
        ".birb",
        ".bird"
      ],
      "Description": "Shows a random bird image.",
      "Usage": [
        ".randombird"
      ],
      "Submodule": "Searches",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".lmgtfy"
      ],
      "Description": "Google something for a baka.",
      "Usage": [
        ".lmgtfy How to eat a banana"
      ],
      "Submodule": "Searches",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".shorten"
      ],
      "Description": "Attempts to shorten an URL, if it fails, returns the input URL.",
      "Usage": [
        ".shorten https://google.com"
      ],
      "Submodule": "Searches",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".magicthegathering",
        ".mtg"
      ],
      "Description": "Searches for a Magic The Gathering card.",
      "Usage": [
        ".magicthegathering about face"
      ],
      "Submodule": "Searches",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".hearthstone",
        ".hs"
      ],
      "Description": "Searches for a Hearthstone card and shows its image. Takes a while to complete.",
      "Usage": [
        ".hearthstone Ysera"
      ],
      "Submodule": "Searches",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".urbandict",
        ".ud"
      ],
      "Description": "Searches Urban Dictionary for a word.",
      "Usage": [
        ".urbandict Pineapple"
      ],
      "Submodule": "Searches",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".define",
        ".def"
      ],
      "Description": "Finds a definition of a word.",
      "Usage": [
        ".define heresy"
      ],
      "Submodule": "Searches",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".catfact"
      ],
      "Description": "Shows a random fact about cats.",
      "Usage": [
        ".catfact"
      ],
      "Submodule": "Searches",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".wiki",
        ".wikipedia"
      ],
      "Description": "Gives you back a wikipedia link",
      "Usage": [
        ".wiki query"
      ],
      "Submodule": "Searches",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".color",
        ".clr"
      ],
      "Description": "Shows you pictures of colors which correspond to the inputted hex values. Max 10.",
      "Usage": [
        ".color 00ff00",
        ".color f00 0f0 00f"
      ],
      "Submodule": "Searches",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".avatar",
        ".av"
      ],
      "Description": "Shows a mentioned person's avatar.",
      "Usage": [
        ".avatar @Someone"
      ],
      "Submodule": "Searches",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".wikia",
        ".fandom"
      ],
      "Description": "Gives you back a fandom link",
      "Usage": [
        ".wikia mtg Vigilance",
        ".wikia mlp Dashy"
      ],
      "Submodule": "Searches",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".steam"
      ],
      "Description": "Returns a store link for a steam game with the specified name. It doesn't work very well because bundles.",
      "Usage": [
        ".steam Sakura Agent"
      ],
      "Submodule": "Searches",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".anime",
        ".ani",
        ".aq"
      ],
      "Description": "Queries anilist for an anime and shows the first result.",
      "Usage": [
        ".anime aquarion evol"
      ],
      "Submodule": "AnimeSearchCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".manga",
        ".mang",
        ".mq"
      ],
      "Description": "Queries anilist for a manga and shows the first result.",
      "Usage": [
        ".manga Shingeki no kyojin"
      ],
      "Submodule": "AnimeSearchCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".stock"
      ],
      "Description": "Shows basic information about a stock. You can use a symbol or company name",
      "Usage": [
        ".stock tsla",
        ".stock advanced micro devices",
        ".stock amd"
      ],
      "Submodule": "FinanceCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".crypto",
        ".c"
      ],
      "Description": "Shows basic stats about a cryptocurrency from coinmarketcap.com. You can use either a name or an abbreviation of the currency.",
      "Usage": [
        ".crypto btc",
        ".crypto bitcoin"
      ],
      "Submodule": "FinanceCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".coins",
        ".crypto",
        ".cryptos"
      ],
      "Description": "Shows a list of 10 crypto currencies ordered by market cap.\nShows their price, change in the last24h, market cap and circulating and total supply.\nPaginated with 10 per page.",
      "Usage": [
        ".coins",
        ".coins 2"
      ],
      "Submodule": "FinanceCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".ytuploadnotif",
        ".yun"
      ],
      "Description": "Subscribe to a youtube channel's upload rss feed.\nYou can optionally specify a message which will be posted with an update.\nThis is just a shortcut for `.feed` with a url of the youtube channel's rss feed.",
      "Usage": [
        ".ytuploadnotif https://www.youtube.com/channel/UCSJ4gkVC6NrvII8umztf0Ow",
        ".ytuploadnotif https://www.youtube.com/channel/UCSJ4gkVC6NrvII8umztf0Ow New video is posted"
      ],
      "Submodule": "FeedCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".feed",
        ".feedadd"
      ],
      "Description": "Subscribes to a feed.\nBot will post an update up to once every 10 seconds.\nYou can have up to 10 feeds on one server.\nAll feeds must have unique URLs.\nSet a channel as a second optional parameter to specify where to send the updates.\nYou can optionally specify a message after the channel name which will be posted with an update.",
      "Usage": [
        ".feed https://blog.playstation.com/feed/",
        ".feed https://blog.playstation.com/feed/ #updates",
        ".feed https://blog.playstation.com/feed/ #updates New playstation rss feed post!"
      ],
      "Submodule": "FeedCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".feedremove",
        ".feedrm",
        ".feeddel"
      ],
      "Description": "Stops tracking a feed on the given index. Use `.feeds` command to see a list of feeds and their indexes.",
      "Usage": [
        ".feedremove 3"
      ],
      "Submodule": "FeedCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".feedlist",
        ".feeds"
      ],
      "Description": "Shows the list of feeds you've subscribed to on this server.",
      "Usage": [
        ".feedlist"
      ],
      "Submodule": "FeedCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".yomama",
        ".ym"
      ],
      "Description": "Shows a random yomama joke.",
      "Usage": [
        ".yomama"
      ],
      "Submodule": "JokeCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".randjoke",
        ".rj"
      ],
      "Description": "Shows a random joke.",
      "Usage": [
        ".randjoke"
      ],
      "Submodule": "JokeCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".chucknorris",
        ".cn"
      ],
      "Description": "Shows a random Chuck Norris joke.",
      "Usage": [
        ".chucknorris"
      ],
      "Submodule": "JokeCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".wowjoke"
      ],
      "Description": "Get one of penultimate WoW jokes.",
      "Usage": [
        ".wowjoke"
      ],
      "Submodule": "JokeCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".magicitem",
        ".mi"
      ],
      "Description": "Shows a random magic item with its description.",
      "Usage": [
        ".magicitem"
      ],
      "Submodule": "JokeCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".osu"
      ],
      "Description": "Shows osu! stats for a player.",
      "Usage": [
        ".osu Name",
        ".osu Name taiko"
      ],
      "Submodule": "OsuCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".gatari"
      ],
      "Description": "Shows osu!gatari stats for a player.",
      "Usage": [
        ".gatari Name",
        ".gatari Name ctb"
      ],
      "Submodule": "OsuCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".osu5"
      ],
      "Description": "Displays a user's top 5 plays.",
      "Usage": [
        ".osu5 Name"
      ],
      "Submodule": "OsuCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".pokemon",
        ".poke"
      ],
      "Description": "Searches for a pokemon.",
      "Usage": [
        ".pokemon Sylveon"
      ],
      "Submodule": "PokemonSearchCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".pokemonability",
        ".pokeab"
      ],
      "Description": "Searches for a pokemon ability.",
      "Usage": [
        ".pokemonability overgrow"
      ],
      "Submodule": "PokemonSearchCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".bible"
      ],
      "Description": "Shows bible verse. You need to supply book name and chapter:verse",
      "Usage": [
        ".bible genesis 3:19"
      ],
      "Submodule": "ReligiousCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".quran"
      ],
      "Description": "Shows the text of an ayah of the Quran, as well as the recitation by Alafasy.\nSupply surah:ayah, or ayah number. For instance, 262 or 2:255 will both get you Ayat Al Kursi",
      "Usage": [
        ".quran 2:255",
        ".quran 262"
      ],
      "Submodule": "ReligiousCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".google",
        ".search",
        ".g",
        ".s"
      ],
      "Description": "Get a Google search link for some terms.",
      "Usage": [
        ".google query"
      ],
      "Submodule": "SearchCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".image",
        ".img",
        ".rimg"
      ],
      "Description": "Pulls a random image using a search parameter.",
      "Usage": [
        ".image cute kitten"
      ],
      "Submodule": "SearchCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".youtube",
        ".yt"
      ],
      "Description": "Searches youtubes and shows the first result",
      "Usage": [
        ".youtube query"
      ],
      "Submodule": "SearchCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".streamadd",
        ".sta",
        ".stadd"
      ],
      "Description": "Notifies this channel when the stream on the specified URL goes online or offline. Offline notifications will only show if you enable `.streamoff`. Maximum 10 per server.",
      "Usage": [
        ".streamadd twitch.tv/someguy"
      ],
      "Submodule": "StreamNotificationCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".streamremove",
        ".strm"
      ],
      "Description": "Stops following the stream on the specified index. (use `.stl` to see indexes)",
      "Usage": [
        ".streamremove 2"
      ],
      "Submodule": "StreamNotificationCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".streamsclear",
        ".stclear"
      ],
      "Description": "Removes all followed streams on this server.",
      "Usage": [
        ".streamsclear"
      ],
      "Submodule": "StreamNotificationCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".streamlist",
        ".stl",
        ".streamslist"
      ],
      "Description": "Lists all streams you are following on this server and their respective indexes.",
      "Usage": [
        ".streamlist"
      ],
      "Submodule": "StreamNotificationCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".streamoffline",
        ".sto",
        ".stoff"
      ],
      "Description": "Toggles whether the bot will also notify when added streams go offline.",
      "Usage": [
        ".streamoffline"
      ],
      "Submodule": "StreamNotificationCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".streamonlinedelete",
        ".stondel"
      ],
      "Description": "Toggles whether the bot will delete stream online message when the stream goes offline.",
      "Usage": [
        ".streamonlinedelete"
      ],
      "Submodule": "StreamNotificationCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".streammsg",
        ".stm",
        ".stmsg"
      ],
      "Description": "Sets the message which will show when the stream on the specified index comes online. You can use %user% and %platform% placeholders.",
      "Usage": [
        ".streammsg 1 Hey @erryone %user% is back online on %platform%!1!!"
      ],
      "Submodule": "StreamNotificationCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".streammsgall",
        ".stma",
        ".stmsga"
      ],
      "Description": "Sets the message which will show when any of the currently followed streams comes online. This does not apply to the streams which get added afterwards. You can use %user% and %platform% placeholders.",
      "Usage": [
        ".streammsgall Hey @erryone %user% is back online!1!!"
      ],
      "Submodule": "StreamNotificationCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".streamcheck",
        ".stc"
      ],
      "Description": "Retrieves information about a stream.",
      "Usage": [
        ".streamcheck https://twitch.tv/somedude"
      ],
      "Submodule": "StreamNotificationCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".translate",
        ".trans"
      ],
      "Description": "Translates text from the given language to the destination language.",
      "Usage": [
        ".translate en fr Hello"
      ],
      "Submodule": "TranslateCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".autotranslate",
        ".at",
        ".autotrans"
      ],
      "Description": "Starts automatic translation of all messages by users who set their `.atl` in this channel. You can set \"del\" parameter to automatically delete all translated user messages.",
      "Usage": [
        ".autotranslate",
        ".autotranslate del"
      ],
      "Submodule": "TranslateCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".autotranslang",
        ".atl"
      ],
      "Description": "Sets your source and target language to be used with `.at`. Specify no parameters to remove previously set value.",
      "Usage": [
        ".autotranslang en fr"
      ],
      "Submodule": "TranslateCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".translangs"
      ],
      "Description": "Lists the valid languages for translation.",
      "Usage": [
        ".translangs"
      ],
      "Submodule": "TranslateCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".xkcd"
      ],
      "Description": "Shows a XKCD comic. Specify no parameters to retrieve a random one. Number parameter will retrieve a specific comic, and \"latest\" will get the latest one.",
      "Usage": [
        ".xkcd",
        ".xkcd 1400",
        ".xkcd latest"
      ],
      "Submodule": "XkcdCommands",
      "Module": "Searches",
      "Options": null,
      "Requirements": []
    }
  ],
  "Utility": [
    {
      "Aliases": [
        ".say"
      ],
      "Description": "Make the bot say something, or in other words, make the bot send the message.\nYou can optionally specify the channel where the bot will send the message.\nIf you omit the channel name, it will send the message in the current channel.\nSupports [embeds](https://eb.nadeko.bot/)",
      "Usage": [
        ".say hi",
        ".say #chat hi"
      ],
      "Submodule": "Utility",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".whosplaying",
        ".whpl"
      ],
      "Description": "Shows a list of users who are playing the specified game.",
      "Usage": [
        ".whosplaying Overwatch"
      ],
      "Submodule": "Utility",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".inrole"
      ],
      "Description": "Lists every person from the specified role on this server. You can specify a page before the role to jump to that page. Provide no role to list users who have no roles",
      "Usage": [
        ".inrole RoleName",
        ".inrole 5 RoleName",
        ".inrole"
      ],
      "Submodule": "Utility",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".checkperms"
      ],
      "Description": "Checks yours or bot's user-specific permissions on this channel.",
      "Usage": [
        ".checkperms me",
        ".checkperms bot"
      ],
      "Submodule": "Utility",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".userid",
        ".uid"
      ],
      "Description": "Shows user ID.",
      "Usage": [
        ".userid",
        ".userid @Someone"
      ],
      "Submodule": "Utility",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".roleid",
        ".rid"
      ],
      "Description": "Shows the id of the specified role.",
      "Usage": [
        ".roleid Some Role"
      ],
      "Submodule": "Utility",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".channelid",
        ".cid"
      ],
      "Description": "Shows current channel ID.",
      "Usage": [
        ".channelid"
      ],
      "Submodule": "Utility",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".serverid",
        ".sid"
      ],
      "Description": "Shows current server ID.",
      "Usage": [
        ".serverid"
      ],
      "Submodule": "Utility",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".roles"
      ],
      "Description": "List roles on this server or roles of a user if specified. Paginated, 20 roles per page.",
      "Usage": [
        ".roles 2",
        ".roles @Someone"
      ],
      "Submodule": "Utility",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".channeltopic",
        ".ct"
      ],
      "Description": "Sends current channel's topic as a message.",
      "Usage": [
        ".channeltopic"
      ],
      "Submodule": "Utility",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".stats"
      ],
      "Description": "Shows some basic stats for Nadeko.",
      "Usage": [
        ".stats"
      ],
      "Submodule": "Utility",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".showemojis",
        ".se"
      ],
      "Description": "Shows a name and a link to every SPECIAL emoji in the message.",
      "Usage": [
        ".showemojis A message full of SPECIAL emojis"
      ],
      "Submodule": "Utility",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".emojiadd",
        ".ea"
      ],
      "Description": "Adds the specified emoji to this server.\nYou can specify a name before the emoji to add it under a different name.\nYou can specify a name followed by an image link to add a new emoji from an image.\nYou can omit imageUrl and instead upload the image as an attachment. \nImage size has to be below 256KB.",
      "Usage": [
        ".emojiadd :someonesCustomEmoji:",
        ".emojiadd MyEmojiName :someonesCustomEmoji:",
        ".emojiadd owoNice https://cdn.discordapp.com/emojis/587930873811173386.png?size=128"
      ],
      "Submodule": "Utility",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "ManageEmojisAndStickers Server Permission"
      ]
    },
    {
      "Aliases": [
        ".emojiremove",
        ".emojirm",
        ".er",
        ".ed",
        ".emojidel",
        ".emojidelete"
      ],
      "Description": "Removes the specified emoji or emojis from this server.",
      "Usage": [
        ".emojiremove :eagleWarrior: :plumedArcher:"
      ],
      "Submodule": "Utility",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "ManageEmojisAndStickers Server Permission"
      ]
    },
    {
      "Aliases": [
        ".stickeradd",
        ".sa"
      ],
      "Description": "Adds the sticker from your message to this server.\nSend the sticker along with this command (in the same message).\nAlternatively you can upload an image along with this command but you have to specify the name.\nThe image must be 300x300 in .png or .apng format and up to 512KB in size.",
      "Usage": [
        ".stickeradd",
        ".stickeradd name \"description\" tag1 tag2 tagN"
      ],
      "Submodule": "Utility",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "ManageEmojisAndStickers Server Permission"
      ]
    },
    {
      "Aliases": [
        ".listservers"
      ],
      "Description": "Lists servers the bot is on with some basic info. 15 per page.",
      "Usage": [
        ".listservers 3"
      ],
      "Submodule": "Utility",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".showembed"
      ],
      "Description": "Prints the json equivalent of the embed of the message specified by its Id.",
      "Usage": [
        ".showembed 820022733172121600",
        ".showembed #some-channel 820022733172121600"
      ],
      "Submodule": "Utility",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".savechat"
      ],
      "Description": "Saves a number of messages to a text file and sends it to you.",
      "Usage": [
        ".savechat 150"
      ],
      "Submodule": "Utility",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".ping"
      ],
      "Description": "Ping the bot to see if there are latency issues.",
      "Usage": [
        ".ping"
      ],
      "Submodule": "Utility",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".verboseerror",
        ".ve"
      ],
      "Description": "Toggles or sets whether the bot should print command errors when a command is incorrectly used.",
      "Usage": [
        ".verboseerror",
        ".verboseerror false"
      ],
      "Submodule": "Utility",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".afk"
      ],
      "Description": "Toggles AFK status for yourself with the specified message. \nIf you don't provide a message it default to a generic one.\nAnyone @ mentioning you in any server will receive the afk message.\nThis will only work if the other user's message starts with the mention.",
      "Usage": [
        ".afk"
      ],
      "Submodule": "Utility",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".eval"
      ],
      "Description": "Execute arbitrary C# code and (optionally) return a result. Several namespaces are included by default.\nSpecial variables available: \n`self` - Instance of the command group executing the command (this)\n`guild` - Server in which the command is executed\n`channel` - Channel in which the command is executed\n`user` - User executing the command\n`ctx` - Discord.Net command context\n`services` - Nadeko's IServiceProvider",
      "Usage": [
        ".eval 123 / 4.5f",
        ".eval await ctx.OkAsync();",
        ".eval await ctx.Response().Confirm(\"uwu\").SendAsync();"
      ],
      "Submodule": "Utility",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "Bot Owner Only",
        "No Public Bot"
      ]
    },
    {
      "Aliases": [
        ".prompt"
      ],
      "Description": "Ask the bot to do something for you.\nThis will fall back to the chatbot service in case of an error.",
      "Usage": [
        ".prompt What's the weather like today?"
      ],
      "Submodule": "PromptCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".aliasesclear",
        ".aliasclear"
      ],
      "Description": "Deletes all aliases on this server.",
      "Usage": [
        ".aliasesclear"
      ],
      "Submodule": "CommandMapCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".alias",
        ".cmdmap"
      ],
      "Description": "Create a custom alias for a certain Nadeko command. Provide no alias to remove the existing one.",
      "Usage": [
        ".alias allin .bf all h"
      ],
      "Submodule": "CommandMapCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".aliaslist",
        ".cmdmaplist",
        ".aliases"
      ],
      "Description": "Shows the list of currently set aliases. Paginated.",
      "Usage": [
        ".aliaslist",
        ".aliaslist 3"
      ],
      "Submodule": "CommandMapCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".calculate",
        ".calc"
      ],
      "Description": "Evaluate a mathematical expression.",
      "Usage": [
        ".calculate 1+1"
      ],
      "Submodule": "CalcCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".calcops"
      ],
      "Description": "Shows all available operations in the `.calc` command",
      "Usage": [
        ".calcops"
      ],
      "Submodule": "CalcCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".configreload",
        ".creload",
        ".confreload",
        ".crel"
      ],
      "Description": "Reloads specified configuration",
      "Usage": [
        ".configreload bot",
        ".configreload gambling"
      ],
      "Submodule": "ConfigCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".config",
        ".conf"
      ],
      "Description": "Gets or sets configuration values.\nProvide no arguments to see the list of configs you can edit/view.\nProvide config name to see all properties in that configuration and their values.\nProvide config name and property name to see that property's description and value.\nProvide config name, property name and value to set that property to the new value.",
      "Usage": [
        ".config",
        ".config bot",
        ".config bot color.ok",
        ".config bot color.ok ff0000"
      ],
      "Submodule": "ConfigCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".ga start"
      ],
      "Description": "Starts a giveaway. Specify the duration (between 1 minute and 30 days) followed by the prize.",
      "Usage": [
        ".ga start 12h We are giving away one copy of our latest album!",
        ".ga start 15m Quick giveaway for a free course!",
        ".ga start 1d Join to win 1000$!"
      ],
      "Submodule": "Giveaways",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".ga end"
      ],
      "Description": "Prematurely ends a giveaway and selects a winner. Specify the ID of the giveaway to end.",
      "Usage": [
        ".ga end ab3"
      ],
      "Submodule": "Giveaways",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".ga reroll"
      ],
      "Description": "Rerolls a giveaway. Specify the ID of the giveaway to reroll. This is only active within 24h after the giveaway has ended or until the bot restarts.",
      "Usage": [
        ".ga reroll cd3"
      ],
      "Submodule": "Giveaways",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".ga cancel"
      ],
      "Description": "Cancels a giveaway. Specify the ID of the giveaway to cancel. The winner will not be chosen.",
      "Usage": [
        ".ga cancel ab3"
      ],
      "Submodule": "Giveaways",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".ga list"
      ],
      "Description": "Lists all active giveaways.",
      "Usage": [
        ".ga list"
      ],
      "Submodule": "Giveaways",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".serverinfo",
        ".sinfo"
      ],
      "Description": "Shows info about the server with the specified ID. The bot has to be on that server. If no server is supplied, it defaults to current one.",
      "Usage": [
        ".serverinfo 123123132233"
      ],
      "Submodule": "InfoCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".channelinfo",
        ".cinfo"
      ],
      "Description": "Shows info about the channel. If no channel is supplied, it defaults to current one.",
      "Usage": [
        ".channelinfo #some-channel"
      ],
      "Submodule": "InfoCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".roleinfo",
        ".rinfo"
      ],
      "Description": "Shows info about the specified role.",
      "Usage": [
        ".roleinfo Gamers"
      ],
      "Submodule": "InfoCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".userinfo",
        ".uinfo"
      ],
      "Description": "Shows info about the user. If no user is supplied, it defaults a user running the command.",
      "Usage": [
        ".userinfo @SomeUser"
      ],
      "Submodule": "InfoCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".invitecreate",
        ".invcr"
      ],
      "Description": "Creates a new invite which has infinite max uses and never expires.",
      "Usage": [
        ".invitecreate"
      ],
      "Submodule": "InviteCommands",
      "Module": "Utility",
      "Options": [
        "`--max-uses` (`-m`)   Maximum number of times the invite can be used. Default 0 (never).  ",
        "`--unique` (`-u`)   Not setting this flag will result in bot getting the existing invite with the same settings if it exists, instead of creating a new one.  ",
        "`--temporary` (`-t`)   If this flag is set, the user will be kicked from the guild once they close their client.  ",
        "`--expire` (`-e`)   Time in seconds to expire the invite. Default 0 (no expiry).  "
      ],
      "Requirements": [
        "CreateInstantInvite Channel Permission"
      ]
    },
    {
      "Aliases": [
        ".invitelist",
        ".invlist",
        ".invlst"
      ],
      "Description": "Lists all invites for this channel. Paginated with 9 per page.",
      "Usage": [
        ".invitelist",
        ".invitelist 3"
      ],
      "Submodule": "InviteCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "ManageChannels Channel Permission"
      ]
    },
    {
      "Aliases": [
        ".invitedelete",
        ".invrm",
        ".invdel"
      ],
      "Description": "Deletes an invite on the specified index. Use `.invitelist` to see the list of invites.",
      "Usage": [
        ".invitedelete 2"
      ],
      "Submodule": "InviteCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "ManageChannels Channel Permission"
      ]
    },
    {
      "Aliases": [
        ".listquotes",
        ".liqu"
      ],
      "Description": "Lists all quotes on the server ordered alphabetically or by ID. 15 Per page.",
      "Usage": [
        ".listquotes 3",
        ".listquotes 3 id"
      ],
      "Submodule": "QuoteCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".quoteprint",
        "..."
      ],
      "Description": "Prints a random quote with a specified name.",
      "Usage": [
        ".quoteprint abc"
      ],
      "Submodule": "QuoteCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".quoteshow",
        ".qshow"
      ],
      "Description": "Shows information about a quote with the specified ID.",
      "Usage": [
        ".quoteshow 123"
      ],
      "Submodule": "QuoteCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".quotesearch",
        ".qsearch"
      ],
      "Description": "Shows a random quote given a search query. Partially matches in several ways: 1) Only content of any quote, 2) only by author, 3) keyword and content, 3) or keyword and author",
      "Usage": [
        ".quotesearch \"find this long text\"",
        ".quotesearch AuthorName",
        ".quotesearch keyword some text",
        ".quotesearch keyword AuthorName"
      ],
      "Submodule": "QuoteCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".quoteid",
        ".qid"
      ],
      "Description": "Displays the quote with the specified ID number. Quote ID numbers can be found by typing `.liqu [num]` where `[num]` is a number of a page which contains 15 quotes.",
      "Usage": [
        ".quoteid 123456"
      ],
      "Submodule": "QuoteCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".quoteadd",
        ".."
      ],
      "Description": "Adds a new quote with the specified name and message.",
      "Usage": [
        ".quoteadd sayhi Hi"
      ],
      "Submodule": "QuoteCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".quoteedit",
        ".qedit"
      ],
      "Description": "Edits a quote with the specified ID.",
      "Usage": [
        ".quoteedit 55 This is the new response."
      ],
      "Submodule": "QuoteCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".quotedelete",
        ".qdel"
      ],
      "Description": "Deletes a quote with the specified ID. You have to either have the Manage Messages permission or be the creator of the quote to delete it.",
      "Usage": [
        ".quotedelete 123456"
      ],
      "Submodule": "QuoteCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".quotedeleteauthor",
        ".qdelauth"
      ],
      "Description": "Deletes all quotes by the specified author. If the author is not you, then ManageMessage server permission is required.",
      "Usage": [
        ".quotedeleteauthor @QuoteSpammer"
      ],
      "Submodule": "QuoteCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".delallquotes",
        ".daq",
        ".delallq"
      ],
      "Description": "Deletes all quotes on a specified keyword.",
      "Usage": [
        ".delallquotes kek"
      ],
      "Submodule": "QuoteCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".quotesexport",
        ".qexport"
      ],
      "Description": "Exports quotes from the current server into a .yml file",
      "Usage": [
        ".quotesexport"
      ],
      "Submodule": "QuoteCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".quotesimport",
        ".qimport"
      ],
      "Description": "Upload the file or send the raw .yml data with this command to import all quotes from the specified string or file into the current server.",
      "Usage": [
        ".quotesimport <upload .yml file>"
      ],
      "Submodule": "QuoteCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".remind"
      ],
      "Description": "Sets a reminder which will be sent to you or to the targeted channel after certain amount of time (max 2 months).\nFirst parameter is `me` / `here` / 'channelname'\nSecond parameter is time in a descending order (mo>w>d>h>m) example: 1w5d3h10m.\nThird parameter is a (multiword) message.\nRequires ManageMessages server permission if you're targeting a different channel.",
      "Usage": [
        ".remind me 1d5h Do something",
        ".remind #general 1m Start now!"
      ],
      "Submodule": "RemindCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".remindlist",
        ".remindl",
        ".remindlst"
      ],
      "Description": "Lists all reminders you created. You can specify 'server' option if you're an Administrator to list all reminders created on this server. Paginated.",
      "Usage": [
        ".remindlist 1",
        ".remindlist server 2"
      ],
      "Submodule": "RemindCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".reminddelete",
        ".remindrm",
        ".reminddel"
      ],
      "Description": "Deletes a reminder on the specified index. You can specify 'server' option if you're an Administrator, and you want to delete a reminder on this server created by someone else. ",
      "Usage": [
        ".reminddelete 3",
        ".reminddelete server 2"
      ],
      "Submodule": "RemindCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".repeatskip",
        ".repski"
      ],
      "Description": "Specify a repeater's ID to toggle whether the next trigger of the repeater will be skipped.\nThis setting is not stored in the database and will get reset if the bot is restarted.",
      "Usage": [
        ".repeatskip 3"
      ],
      "Submodule": "RepeatCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".repeatinvoke",
        ".repinv"
      ],
      "Description": "Immediately post the repeat message on a certain index and restarts its timer.",
      "Usage": [
        ".repeatinvoke 1"
      ],
      "Submodule": "RepeatCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".repeatremove",
        ".reprm"
      ],
      "Description": "Removes a repeating message by index. Use `.replst` to see indexes.",
      "Usage": [
        ".repeatremove 2"
      ],
      "Submodule": "RepeatCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".repeatredun",
        ".repred"
      ],
      "Description": "Specify repeater's index (Use `.replst` to see indexes) to toggle whether the message should be reposted if the last message in the channel is the same repeater's message.\nThis is useful if you want to remind everyone to be nice every so often, but don't want to have the bot spam the channel. This is NOT useful if you want to periodically ping someone.",
      "Usage": [
        ".repeatredun 1"
      ],
      "Submodule": "RepeatCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".repeat"
      ],
      "Description": "Repeat a message once per specified time increment in the current channel. \nYou can specify a different channel as the first argument instead.\nYou can also specify time of day for the message to be repeated daily (make sure you've set your server's `.timezone`). \nIf you specify time of day, you can still override the default daily interval with your own interval. \nYou can have up to 5 repeating messages on one server in total.",
      "Usage": [
        ".repeat Hello there",
        ".repeat #other-channel hello there",
        ".repeat 1h5m Hello @erryone",
        ".repeat 10:00 Daily have a nice day! This will execute once every 24h.",
        ".repeat #other-channel 10:00 Daily have a nice day! This will execute once every 24h.",
        ".repeat 21:00 30m Starting at 21 and every 30 minutes after that i will send this message!"
      ],
      "Submodule": "RepeatCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".repeatlist",
        ".replst",
        ".replist",
        ".repli"
      ],
      "Description": "Lists currently repeating messages and their indexes.",
      "Usage": [
        ".repeatlist"
      ],
      "Submodule": "RepeatCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "ManageMessages Server Permission"
      ]
    },
    {
      "Aliases": [
        ".streamrole"
      ],
      "Description": "Sets a role which is monitored for streamers (FromRole), and a role to add if a user from 'FromRole' is streaming (AddRole). When a user from 'FromRole' starts streaming, they will receive an 'AddRole'. You can only have 1 Stream Role per server. Provide no parameters to disable",
      "Usage": [
        ".streamrole \"Eligible Streamers\" \"Featured Streams\""
      ],
      "Submodule": "StreamRoleCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".streamrolekeyword",
        ".srkw"
      ],
      "Description": "Sets keyword which is required in the stream's title in order for the streamrole to apply. Provide no keyword in order to reset.",
      "Usage": [
        ".streamrolekeyword",
        ".streamrolekeyword PUBG"
      ],
      "Submodule": "StreamRoleCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".streamroleblacklist",
        ".srbl"
      ],
      "Description": "Adds or removes a blacklisted user. Blacklisted users will never receive the stream role.",
      "Usage": [
        ".streamroleblacklist add @Someone#1234",
        ".streamroleblacklist rem @Someone#1234"
      ],
      "Submodule": "StreamRoleCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".streamrolewhitelist",
        ".srwl"
      ],
      "Description": "Adds or removes a whitelisted user. Whitelisted users will receive the stream role even if they don't have the specified keyword in their stream title.",
      "Usage": [
        ".streamrolewhitelist add @Someone#1234",
        ".streamrolewhitelist rem @Someone#1234"
      ],
      "Submodule": "StreamRoleCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": [
        "ManageRoles Server Permission"
      ]
    },
    {
      "Aliases": [
        ".todo add",
        ".todo a"
      ],
      "Description": "Adds a new todo.",
      "Usage": [
        ".todo add I need to do this"
      ],
      "Submodule": "todo",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".todo edit",
        ".todo change"
      ],
      "Description": "Edits a todo with the specified ID.",
      "Usage": [
        ".todo edit abc This is an updated entry"
      ],
      "Submodule": "todo",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".todo list",
        ".todo ls"
      ],
      "Description": "Lists all todos.",
      "Usage": [
        ".todo list"
      ],
      "Submodule": "todo",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".todo show",
        ".todo sh",
        ".todo see"
      ],
      "Description": "Shows the text of the todo with the specified ID.",
      "Usage": [
        ".todo show 4a"
      ],
      "Submodule": "todo",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".todo complete",
        ".todo done",
        ".todo finish"
      ],
      "Description": "Marks a todo with the specified ID as done.",
      "Usage": [
        ".todo complete 4a"
      ],
      "Submodule": "todo",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".todo delete",
        ".todo del",
        ".todo remove",
        ".todo rm"
      ],
      "Description": "Deletes a todo with the specified ID.",
      "Usage": [
        ".todo delete abc"
      ],
      "Submodule": "todo",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".todo clear",
        ".todo clr",
        ".todo cls"
      ],
      "Description": "Deletes all unarchived todos.",
      "Usage": [
        ".todo clear"
      ],
      "Submodule": "todo",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".todo archive add",
        ".todo archive create",
        ".todo archive new"
      ],
      "Description": "Creates a new archive with the specified name using current todos.",
      "Usage": [
        ".todo archive add Day 1"
      ],
      "Submodule": "archive",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".todo archive list",
        ".todo archive ls"
      ],
      "Description": "Lists all archived todo lists.",
      "Usage": [
        ".todo archive list"
      ],
      "Submodule": "archive",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".todo archive show"
      ],
      "Description": "Shows the archived todo list with the specified ID.",
      "Usage": [
        ".todo archive show 3c"
      ],
      "Submodule": "archive",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".todo archive delete",
        ".todo archive del",
        ".todo archive remove",
        ".todo archive rm"
      ],
      "Description": "Deletes the archived todo list with the specified ID.",
      "Usage": [
        ".todo archive delete 99"
      ],
      "Submodule": "archive",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".convertlist"
      ],
      "Description": "List of the convertible dimensions and currencies.",
      "Usage": [
        ".convertlist"
      ],
      "Submodule": "UnitConverterCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".convert"
      ],
      "Description": "Convert quantities. Use `.convertlist` to see supported dimensions and currencies.",
      "Usage": [
        ".convert m km 1000"
      ],
      "Submodule": "UnitConverterCommands",
      "Module": "Utility",
      "Options": null,
      "Requirements": []
    }
  ],
  "Xp": [
    {
      "Aliases": [
        ".experience",
        ".xp"
      ],
      "Description": "Shows your xp stats. Specify the user to show that user's stats instead.",
      "Usage": [
        ".experience",
        ".experience @someguy"
      ],
      "Submodule": "Xp",
      "Module": "Xp",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".xpnotify",
        ".xpn"
      ],
      "Description": "Sets how the bot should notify you when you get a `server` or `global` level. This is a personal setting and affects only how you receive Global or Server level-up notifications. You can set `dm` (for the bot to send you a direct message), `channel` (to get notified in the channel you sent the last message in) or `none` to disable.",
      "Usage": [
        ".xpnotify global dm",
        ".xpnotify server channel"
      ],
      "Submodule": "Xp",
      "Module": "Xp",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".xpexclude",
        ".xpex"
      ],
      "Description": "Exclude a channel, role or current server from the xp system.",
      "Usage": [
        ".xpexclude Role Excluded-Role",
        ".xpexclude Server"
      ],
      "Submodule": "Xp",
      "Module": "Xp",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".xpexclusionlist",
        ".xpexl"
      ],
      "Description": "Shows the roles and channels excluded from the XP system on this server, as well as whether the whole server is excluded.",
      "Usage": [
        ".xpexclusionlist"
      ],
      "Submodule": "Xp",
      "Module": "Xp",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".xpleaderboard",
        ".xplb"
      ],
      "Description": "Shows current server's xp leaderboard.",
      "Usage": [
        ".xpleaderboard"
      ],
      "Submodule": "Xp",
      "Module": "Xp",
      "Options": [
        "`--clean` (`-c`)   Only show users who are on the server.  "
      ],
      "Requirements": []
    },
    {
      "Aliases": [
        ".xpgleaderboard",
        ".xpglb"
      ],
      "Description": "Shows the global xp leaderboard.",
      "Usage": [
        ".xpgleaderboard"
      ],
      "Submodule": "Xp",
      "Module": "Xp",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".xpadd"
      ],
      "Description": "Adds server XP to a single user or all users role on this server. This does not affect their global ranking. You can use negative values.",
      "Usage": [
        ".xpadd 100 @Someone",
        ".xpadd 500 SomeRoleName"
      ],
      "Submodule": "Xp",
      "Module": "Xp",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".xptempreload",
        ".xptr"
      ],
      "Description": "Reloads the xp template file. Xp template file allows you to customize the position and color of elements on the `.xp` card.",
      "Usage": [
        ".xptempreload"
      ],
      "Submodule": "Xp",
      "Module": "Xp",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    },
    {
      "Aliases": [
        ".xpreset"
      ],
      "Description": "Resets specified user's XP, or the XP of all users in the server. You can't reverse this action.",
      "Usage": [
        ".xpreset @Someone",
        ".xpreset"
      ],
      "Submodule": "Xp",
      "Module": "Xp",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".xpshop"
      ],
      "Description": "Access the xp shop (if enabled). You can purchase either xp card frames or backgrounds. You can optionally provide a page number",
      "Usage": [
        ".xpshop bgs",
        ".xpshop frames",
        ".xpshop bgs 3"
      ],
      "Submodule": "Xp",
      "Module": "Xp",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".xpshopbuy"
      ],
      "Description": "Buy an item from the xp shop by specifying the type and the key of the item.",
      "Usage": [
        ".xpshopbuy bg open_sea",
        ".xpshopbuy fr gold"
      ],
      "Submodule": "Xp",
      "Module": "Xp",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".xpshopuse"
      ],
      "Description": "Use a previously purchased item from the xp shop by specifying the type and the key of the item.",
      "Usage": [
        ".xpshopuse bg synth",
        ".xpshopuse fr default"
      ],
      "Submodule": "Xp",
      "Module": "Xp",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".clubtransfer"
      ],
      "Description": "Transfers the ownership of the club to another member of the club.",
      "Usage": [
        ".clubtransfer @Someone"
      ],
      "Submodule": "Club",
      "Module": "Xp",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".clubadmin"
      ],
      "Description": "Assigns (or unassigns) staff role to the member of the club. Admins can ban, kick and accept applications.",
      "Usage": [
        ".clubadmin @Someone"
      ],
      "Submodule": "Club",
      "Module": "Xp",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".clubcreate"
      ],
      "Description": "Creates a club. You must be at least level 5 and not be in the club already.",
      "Usage": [
        ".clubcreate My Brand New Club"
      ],
      "Submodule": "Club",
      "Module": "Xp",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".clubicon"
      ],
      "Description": "Sets the club icon.",
      "Usage": [
        ".clubicon https://i.imgur.com/htfDMfU.png"
      ],
      "Submodule": "Club",
      "Module": "Xp",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".clubinfo"
      ],
      "Description": "Shows information about the club.",
      "Usage": [
        ".clubinfo My Brand New Club#23"
      ],
      "Submodule": "Club",
      "Module": "Xp",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".clubbans"
      ],
      "Description": "Shows the list of users who have banned from your club. Paginated. You must be club owner to use this command.",
      "Usage": [
        ".clubbans 2"
      ],
      "Submodule": "Club",
      "Module": "Xp",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".clubapps"
      ],
      "Description": "Shows the list of users who have applied to your club. Paginated. You must be club owner to use this command.",
      "Usage": [
        ".clubapps 2"
      ],
      "Submodule": "Club",
      "Module": "Xp",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".clubapply"
      ],
      "Description": "Apply to join a club. You must meet that club's minimum level requirement, and not be on its ban list.",
      "Usage": [
        ".clubapply My Brand New Club#23"
      ],
      "Submodule": "Club",
      "Module": "Xp",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".clubaccept"
      ],
      "Description": "Accept a user who applied to your club.",
      "Usage": [
        ".clubaccept user#1337"
      ],
      "Submodule": "Club",
      "Module": "Xp",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".clubreject"
      ],
      "Description": "Reject a user who applied to your club.",
      "Usage": [
        ".clubreject user#1337"
      ],
      "Submodule": "Club",
      "Module": "Xp",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".clubleave"
      ],
      "Description": "Leaves the club you're currently in.",
      "Usage": [
        ".clubleave"
      ],
      "Submodule": "Club",
      "Module": "Xp",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".clubkick"
      ],
      "Description": "Kicks the user from the club. You must be the club owner. They will be able to apply again.",
      "Usage": [
        ".clubkick user#1337"
      ],
      "Submodule": "Club",
      "Module": "Xp",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".clubban"
      ],
      "Description": "Bans the user from the club. You must be the club owner. They will not be able to apply again.",
      "Usage": [
        ".clubban user#1337"
      ],
      "Submodule": "Club",
      "Module": "Xp",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".clubunban"
      ],
      "Description": "Unbans the previously banned user from the club. You must be the club owner.",
      "Usage": [
        ".clubunban user#1337"
      ],
      "Submodule": "Club",
      "Module": "Xp",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".clubdesc"
      ],
      "Description": "Sets the club description. Maximum 150 characters. Club owner only.",
      "Usage": [
        ".clubdesc This is the best club please join."
      ],
      "Submodule": "Club",
      "Module": "Xp",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".clubdisband"
      ],
      "Description": "Disbands the club you're the owner of. This action is irreversible.",
      "Usage": [
        ".clubdisband"
      ],
      "Submodule": "Club",
      "Module": "Xp",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".clublb",
        ".clubs"
      ],
      "Description": "Shows club rankings on the specified page.",
      "Usage": [
        ".clublb 2"
      ],
      "Submodule": "Club",
      "Module": "Xp",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".clubrename"
      ],
      "Description": "Renames your club. Requires you club ownership or club-admin status.",
      "Usage": [
        ".clubrename New cool club name"
      ],
      "Submodule": "Club",
      "Module": "Xp",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".xprewsreset"
      ],
      "Description": "Resets all currently set xp level up rewards.",
      "Usage": [
        ".xprewsreset"
      ],
      "Submodule": "XpRewards",
      "Module": "Xp",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".xplvluprewards",
        ".xprews",
        ".xpcrs",
        ".xprrs",
        ".xprolerewards",
        ".xpcurrewards"
      ],
      "Description": "Shows currently set level up rewards.",
      "Usage": [
        ".xplvluprewards"
      ],
      "Submodule": "XpRewards",
      "Module": "Xp",
      "Options": null,
      "Requirements": []
    },
    {
      "Aliases": [
        ".xprolereward",
        ".xprr"
      ],
      "Description": "Add or remove a role from the user who reaches the specified level.\nProvide no action and role name in order to remove the role reward.",
      "Usage": [
        ".xprolereward 1 rm Newbie",
        ".xprolereward 3 add Social",
        ".xprolereward 5 add Member",
        ".xprolereward 5"
      ],
      "Submodule": "XpRewards",
      "Module": "Xp",
      "Options": null,
      "Requirements": [
        "Administrator Server Permission"
      ]
    },
    {
      "Aliases": [
        ".xpcurreward",
        ".xpcr"
      ],
      "Description": "Sets a currency reward on a specified level. Provide no amount in order to remove the reward.",
      "Usage": [
        ".xpcurreward 3 50"
      ],
      "Submodule": "XpRewards",
      "Module": "Xp",
      "Options": null,
      "Requirements": [
        "Bot Owner Only"
      ]
    }
  ]
}