"abusefilter-desc":"Applies automatic heuristics to edits",
"abusefilter":"Abuse filter configuration",
"abuselog":"Abuse log",
"abusefilter-intro":"Welcome to the Abuse Filter management interface.\nThe Abuse Filter is an automated software mechanism of applying automatic heuristics to all actions.\nThis interface shows a list of defined filters, and allows them to be modified.",
"abusefilter-mustbeeditor":"For security reasons, only users with the right to modify abuse filters may use this interface.",
"abusefilter-warning":"'''Warning:''' This action has been automatically identified as harmful.\nUnconstructive edits will be quickly reverted,\nand egregious or repeated unconstructive editing will result in your account or IP address being blocked.\nIf you believe this action to be constructive, you may submit it again to confirm it.\nA brief description of the abuse rule which your action matched is: $1",
"abusefilter-disallowed":"This action has been automatically identified as harmful, and therefore disallowed.\nIf you believe your action was constructive, please inform an administrator of what you were trying to do.\nA brief description of the abuse rule which your action matched is: $1",
"abusefilter-blocked-display":"This action has been automatically identified as harmful,\nand you have been prevented from executing it.\nIn addition, to protect {{SITENAME}}, your user account and all associated IP addresses have been blocked from editing.\nIf this has occurred in error, please contact an administrator.\nA brief description of the abuse rule which your action matched is: $1",
"abusefilter-degrouped":"This action has been automatically identified as harmful.\nConsequently, it has been disallowed, and, since your account is suspected of being compromised, all rights have been revoked.\nIf you believe this to have been in error, please contact a bureaucrat with an explanation of this action, and your rights may be restored.\nA brief description of the abuse rule which your action matched is: $1",
"abusefilter-autopromote-blocked":"This action has been automatically identified as harmful, and it has been disallowed.\nIn addition, as a security measure, some privileges routinely granted to established accounts have been temporarily revoked from your account.\nA brief description of the abuse rule which your action matched is: $1",
"abusefilter-blocker":"Abuse filter",
"abusefilter-blockreason":"Automatically blocked by abuse filter.\nDescription of matched rule: $1",
"abusefilter-degroupreason":"Rights automatically stripped by abuse filter.\nRule description: $1",
"abusefilter-accountreserved":"This account name is reserved for use by the abuse filter.",
"abusefilter-log-details-ip":"Originating IP address",
"abusefilter-log-noactions":"none",
"abusefilter-log-details-diff":"Changes made in edit",
"abusefilter-log-linkoncontribs":"abuse log",
"abusefilter-log-linkoncontribs-text":"Abuse log for this user",
"abusefilter-log-hidden":"(entry hidden)",
"abusefilter-log-hidden-implicit":"(hidden because revision has been deleted)",
"abusefilter-log-cannot-see-details":"You do not have permission to see details of this entry.",
"abusefilter-log-details-hidden":"You cannot view the details for this entry because it is hidden from public view.",
"abusefilter-log-private-not-included":"One or more of the filter IDs you specified are private. Because you are not allowed to view details of private filters, these filters have not been searched for.",
"abusefilter-log-hide-legend":"Hide log entry",
"abusefilter-log-hide-id":"Log entry ID:",
"abusefilter-log-hide-hidden":"Hide this entry from public view",
"abusefilter-log-hide-reason":"Reason:",
"abusefilter-log-hide-forbidden":"You do not have permission to hide abuse log entries.",
"abusefilter-reautoconfirm-none":"That user has not had {{GENDER:$1|his|her|their}} autoconfirmed status suspended.",
"abusefilter-reautoconfirm-notallowed":"You are not allowed to restore autoconfirmed status.",
"abusefilter-reautoconfirm-done":"Account's autoconfirmed status has been restored",
"abusefilter-status":"Of the last $1 {{PLURAL:$1|action|actions}}, $2 ($3%) {{PLURAL:$2|has|have}} reached the condition limit of $4, and $5 ($6%) {{PLURAL:$5|has|have}} matched one of the filters currently enabled.",
"abusefilter-edit-oldwarning":"<strong>You are editing an old version of this filter.\nThe statistics quoted are for the most recent version of the filter.\nIf you save your changes, you will overwrite all changes since the revision you are editing.</strong> •\n[[Special:AbuseFilter/history/$2|Return to this filter's history]].",
"abusefilter-edit-throttled":"'''Warning:''' This filter was automatically disabled as a safety measure.\nIt reached the limit of matching more than $1% of actions.",
"abusefilter-edit-denied":"You may not view details of this filter, because it is hidden from public view.",
"abusefilter-edit-main":"Filter parameters",
"abusefilter-edit-done-subtitle":"Filter edited",
"abusefilter-edit-done":"[[Special:AbuseFilter/history/$1/diff/prev/$2|Your changes]] to [[Special:AbuseFilter/$1|filter $3]] have been saved.",
"abusefilter-edit-badsyntax":"There is a syntax error in the filter you specified.\nThe output from the parser was: <pre>$1</pre>",
"abusefilter-edit-restricted":"You cannot edit this filter, because it contains one or more restricted actions.\nPlease ask a user with permission to add restricted actions to make the change for you.",
"abusefilter-edit-viewhistory":"View this filter's history",
"abusefilter-edit-history":"History:",
"abusefilter-edit-check":"Check syntax",
"abusefilter-edit-badfilter":"The filter you specified does not exist",
"abusefilter-edit-revert":"Revert actions taken by this filter",
"abusefilter-edit-tools":"Tools:",
"abusefilter-edit-test-link":"Test this filter against recent edits",
"abusefilter-edit-export":"Export this filter to another wiki",
"abusefilter-edit-bad-tags":"One or more of the tags you specified is not valid.\nTags should be short, and they should not contain special characters.",
"abusefilter-edit-notallowed":"You are not permitted to create or edit abuse filters",
"abusefilter-edit-notallowed-global":"You are not permitted to create or edit global abuse filters",
"abusefilter-edit-notallowed-global-custom-msg":"Custom warning messages are not supported for global filters",
"abusefilter-edit-builder-select":"Select an option to add it at the cursor",
"abusefilter-history-error-hidden":"The filter you requested is hidden, and you cannot view its history.",
"abusefilter-exception-unexpectedatend":"Unexpected \"$2\" at character $1.",
"abusefilter-exception-expectednotfound":"Expected a $2 at character $1, not found (found $3 $4 instead).",
"abusefilter-exception-unrecognisedkeyword":"Unrecognized keyword $2 at character $1.",
"abusefilter-exception-unexpectedtoken":"Unexpected token \"$3\" (of type $2) at character $1.",
"abusefilter-exception-unclosedstring":"Unclosed string starting at character $1.",
"abusefilter-exception-invalidoperator":"Invalid operator \"$2\" at character $1.",
"abusefilter-exception-unrecognisedtoken":"Unrecognized token \"$2\" at character $1.",
"abusefilter-exception-noparams":"No parameters given to function \"$2\" at character $1.",
"abusefilter-exception-dividebyzero":"Illegal attempt to divide $2 by zero at character $1.",
"abusefilter-exception-unrecognisedvar":"Unrecognized variable $2 at character $1.",
"abusefilter-exception-notenoughargs":"Not enough arguments to function $2 called at character $1.\n\tExpected $3 {{PLURAL:$3|argument|arguments}}, got $4",
"abusefilter-exception-regexfailure":"Error in regular expression \"$3\" at character $1: \"$2\"",
"abusefilter-exception-overridebuiltin":"Illegal overriding of built-in variable \"$2\" at character $1.",
"abusefilter-exception-outofbounds":"Requesting non-existent list item $2 (list size = $3) at character $1.",
"abusefilter-exception-notlist":"Requesting array item of non-array at character $1.",
"abusefilter-action-degroup":"Remove from groups",
"abusefilter-action-rangeblock":"Range-block",
"abusefilter-action-disallow":"Disallow",
"abusefilter-revert-title":"Revert all changes by filter $1",
"abusefilter-revert-intro":"This form allows you to revert all changes made by the abuse filter due to filter $1.\nPlease exercise care in using this tool.",
"abusefilter-revert-preview-item":"$1: $2 made a $3 on $4.\nActions to be reverted: $5 ($6)",
"abusefilter-revert-search-legend":"Select abuse filter actions to be reverted",
"abusefilter-revert-periodstart":"Period start:",
"abusefilter-revert-periodend":"Period end:",
"abusefilter-revert-search":"Select actions",
"abusefilter-revert-filter":"Filter:",
"abusefilter-revert-preview-intro":"Below are the actions taken by the abuse filter that will be reverted by this action.\nPlease check them carefully, and click \"{{int:abusefilter-revert-confirm}}\" to confirm your selection.",
"abusefilter-revert-confirm":"Confirm",
"abusefilter-revert-success":"You have reverted all actions taken by the abuse filter due to [[Special:AbuseFilter/$1|filter $2]].",
"abusefilter-revert-reason":"Automatic revert of all actions taken by the abuse filter due to filter $1.\nReason given: $2",
"abusefilter-revert-reasonfield":"Reason:",
"abusefilter-test":"Test a filter against previous edits",
"abusefilter-test-intro":"This page allows you to check a filter entered in the box below against the last $1 {{PLURAL:$1|change|changes}}.\nTo load an existing filter, type its filter ID into the box below the edit textbox, and click the \"{{int:abusefilter-test-load}}\" button.",
"abusefilter-test-legend":"Filter testing",
"abusefilter-test-load-filter":"Load filter ID:",
"abusefilter-test-submit":"Test",
"abusefilter-test-load":"Load",
"abusefilter-test-user":"Changes by user:",
"abusefilter-test-period-start":"Changes made after:",
"abusefilter-test-period-end":"Changes made before:",
"abusefilter-test-page":"Changes made to page:",
"abusefilter-test-shownegative":"Show changes that do not match the filter",
"abusefilter-test-syntaxerr":"The filter you entered contained a syntax error.\nYou can receive a full explanation by clicking the \"{{int:abusefilter-edit-check}}\" button.",
"abusefilter-test-badtitle":"The page title you entered was invalid. It may contain one or more characters that cannot be used in titles.",
"abusefilter-examine-intro":"This page allows you to examine the variables generated by the Abuse Filter for an individual change, and test it against filters.",
"abusefilter-examine-legend":"Select changes",
"abusefilter-examine-diff":"Diff URL:",
"abusefilter-examine-user":"User:",
"abusefilter-examine-title":"Page title:",
"abusefilter-examine-submit":"Search",
"abusefilter-examine-vars":"Variables generated for this change",
"abusefilter-examine-test":"Test this change against a filter",
"abusefilter-examine-test-button":"Test filter",
"abusefilter-examine-match":"The filter matched this change.",
"abusefilter-examine-nomatch":"The filter did not match this change.",
"abusefilter-examine-syntaxerror":"The filter has invalid syntax",
"abusefilter-examine-notfound":"The change you requested could not be found.",
"abusefilter-examine-incompatible":"The change you requested is not supported by the Abuse Filter",
"abusefilter-examine-noresults":"No results were found for the search parameters you provided.",
"abusefilter-log-header":"This log shows a summary of changes made to filters.\nFor full details, see [[Special:AbuseFilter/history|the list]] of recent filter changes.",
"abusefilter-diff-title":"Differences between versions",
"abusefilter-diff-item":"Item",
"abusefilter-diff-version":"Version from $1 {{GENDER:$3|by}} $2",
"abusefilter-diff-info":"Basic information",
"abusefilter-diff-pattern":"Filter conditions",
"abusefilter-diff-invalid":"Unable to fetch the requested versions",
"abusefilter-diff-backhistory":"Back to filter history",
"abusefilter-diff-prev":"Older change",
"abusefilter-diff-next":"Newer change",
"abusefilter-import-intro":"You can use this interface to import filters from other wikis.\nOn the source wiki, click \"{{int:abusefilter-edit-export}}\" under \"{{int:abusefilter-edit-tools}}\" on the editing interface.\nCopy from the textbox that appears, and paste it into this textbox, then click \"{{int:abusefilter-import-submit}}\".",
"apihelp-abusefiltercheckmatch-description":"Check to see if an AbuseFilter matches a set of variables, editor logged AbuseFilter event.\n\nvars, rcid or logid is required however only one may be used.",
"apihelp-abusefiltercheckmatch-param-filter":"The full filter text to check for a match.",
"apihelp-abusefiltercheckmatch-param-vars":"JSON encoded array of variables to test against.",
"apihelp-abusefiltercheckmatch-param-rcid":"Recent change ID to check against.",
"apihelp-abusefiltercheckmatch-param-logid":"Abuse filter log ID to check against.",
"apihelp-abusefiltercheckmatch-example-1":"Test if recent change ID 15 matches a simple filter",
"apihelp-abusefilterchecksyntax-description":"Check syntax of an AbuseFilter filter.",
"apihelp-abusefilterchecksyntax-param-filter":"The full filter text to check syntax on.",
"apihelp-abusefilterchecksyntax-example-1":"Check syntax of a valid filter",
"apihelp-abusefilterchecksyntax-example-2":"Check syntax of an invalid filter",
"apihelp-abusefilterevalexpression-description":"Evaluates an AbuseFilter expression.",
"apihelp-abusefilterevalexpression-param-expression":"The expression to evaluate.",
"apihelp-abusefilterevalexpression-example-1":"Evaluate a simple expression",
"apihelp-abusefilterunblockautopromote-description":"Unblocks a user from receiving autopromotions due to an abusefilter consequence.",
"apihelp-abusefilterunblockautopromote-param-user":"Username of the user you want to unblock.",
"apihelp-abusefilterunblockautopromote-example-1":"Remove the block on [[User:Example]]'s autopromotion",
"apihelp-query+abusefilters-description":"Show details of the abuse filters.",
"apihelp-query+abusefilters-param-startid":"The filter ID to start enumerating from.",
"apihelp-query+abusefilters-param-endid":"The filter ID to stop enumerating at.",
"apihelp-query+abusefilters-param-show":"Show only filters which meet these criteria.",
"apihelp-query+abusefilters-param-limit":"The maximum number of filters to list.",
"apihelp-query+abusefilters-param-prop":"Which properties to get.",
"apihelp-query+abusefilters-example-1":"List enabled public filters",
"apihelp-query+abusefilters-example-2":"Show some details about filters",
"apihelp-query+abuselog-description":"Show events that were caught by one of the abuse filters.",
"apihelp-query+abuselog-param-start":"The timestamp to start enumerating from.",
"apihelp-query+abuselog-param-end":"The timestamp to stop enumerating at.",
"apihelp-query+abuselog-param-user":"Show only entries done by a given user or IP address.",
"apihelp-query+abuselog-param-title":"Show only entries occurring on a given page.",
"apihelp-query+abuselog-param-filter":"Show only entries that were caught by a given filter ID.",
"apihelp-query+abuselog-param-limit":"The maximum amount of entries to list.",
"apihelp-query+abuselog-param-prop":"Which properties to get.",