Find this useful? Enter your email to receive occasional updates for securing PHP code.

Signing you up...

Thank you for signing up!

PHP Decode

<?php goto v3XxM; fn2l_: echo '"> <div class="input-container"> <input class="home-in fi..

Decoded Output download

<?php 
 goto v3XxM; fn2l_: echo '"> <div class="input-container"> <input class="home-in fileedit" autocomplete="off" placeholder="Edit file name and select folder..." type="text" name="file_name" id="file_name" value="'; goto VCkcO; DCQCo: require $root_dir . "/assets/js/script.php"; goto O1VbU; QJlpF: echo $_POST["download_link"]; goto fn2l_; Cku6p: echo "<option value="local">Local</option>"; goto FXG7D; v3XxM: require "header.php"; goto Bj_3p; eskF0: function getAccessToken() { goto b8AiK; ymcHJ: pDHT4: goto cIdpp; b8AiK: if (!file_exists("token.json")) { goto pDHT4; } goto gB9Nz; cIdpp: return null; goto G4rPy; BaLcH: return $tokenData; goto ymcHJ; gB9Nz: $tokenData = json_decode(file_get_contents("token.json"), true); goto BaLcH; G4rPy: } goto lXfVd; dS2aC: I1UMz: goto G3b3u; lXfVd: function getFoldersList($service) { try { goto K7cnn; K7cnn: $results = $service->files->listFiles(array("q" => 'mimeType="application/vnd.google-apps.folder"')); goto kwpPc; EJyWA: foreach ($results->getFiles() as $file) { goto Dz2Aw; Dz2Aw: $folder = array("id" => $file->getId(), "name" => $file->getName()); goto qUPcp; bcbaW: eWlWb: goto Tsy64; qUPcp: $folders[] = $folder; goto bcbaW; Tsy64: } goto VJW71; XwV_U: if (!(count($results->getFiles()) > 0)) { goto ntyXj; } goto EJyWA; kwpPc: $folders = array(); goto XwV_U; VJW71: DROa_: goto AN3n3; AN3n3: ntyXj: goto Qbidr; Qbidr: return $folders; goto iW_wg; iW_wg: } catch (Google_Service_Exception $e) { error_log("Error retrieving folders from Google Drive: " . $e->getMessage()); return []; } } goto YqcHq; BadLg: echo '</select> </span> </div> <center> <button class="tool-button download" style="display:none;" type="button" id="uploadButton">Upload to Google Drive</button>  <input class="tool-button download" id="downloadButton" type="submit" name="download" value="Download"> <button class="tool-button reset" type="button" onClick="window.location.reload();">Reset</button> </center> <center><div id="downloadMessage"></div></center> <center><span class="stats"><p id="downloadSpeed"></p> <p id="timeTaken"></p></span></center> </form> <div id="uploadResult"></div> <div id="copydl"></div> <div id="overlay" class="overlay"> <div id="loader" class="loader"> <img src="/assets/img/loading.gif" alt="Loading..."> </div> </div> </div> </div> </div> </div> </div>'; goto DCQCo; jBDmc: EU27Z: goto ESU47; TXD0T: X2NDC: goto ID8sh; qLAZA: if (!($drive === "checked")) { goto X2NDC; } goto LZbhF; VLoh0: foreach ($folders as $folder) { echo '<option value="' . $folder["id"] . "">" . $folder["name"] . "</option>"; IuF4i: } goto IJ9p8; UPO5k: if (!isset($_POST["grab_info"])) { goto fsSPa; } goto eB900; eywEd: $tokenData = getAccessToken(); goto dR1mc; dR1mc: if (!isset($tokenData["refresh_token"])) { goto ZfVGd; } goto m8hz7; i20U6: goto RfQcO; goto UoXVL; o2QQ2: $folders = getFoldersList($driveService); goto ySZns; yw0oq: $directories = array_filter(glob("*", GLOB_ONLYDIR), function ($directory) { return !in_array($directory, ["assets", "vendor"]); }); goto PQ2ru; PQ2ru: foreach ($directories as $key => $directory) { goto YBbGn; YBbGn: $selected = $key === 0 ? "selected" : ''; goto QLWGa; QLWGa: echo "<option value="" . $directory . "" " . $selected . ">" . $directory . "</option>"; goto k6Mfb; k6Mfb: gAEpF: goto ZEVE2; ZEVE2: } goto s4BoK; NWqRl: fsSPa: goto w5m85; E56Bq: echo "            </div>
            \xa            <div class="column tool">
                <center>"; goto qLAZA; CQrX8: $file_size = $file_info["Content-Length"]; goto DkVzk; TEOQZ: include "db.php"; goto lGkA7; lGkA7: $client = new Google_Client(); goto GENt8; hGOQw: echo "<select class="dest-slct" id="dest-slct" name="drive">"; goto Cku6p; RCBIR: echo "        </select>\xa    </span>\xa    <span class="selector select-drive" style="display: none;">\xa        <select name="file_location" id="file_location">
    "; goto B6jUv; DkVzk: echo "<script>document.getElementById('file_name').value='{$file_name}';</script>"; goto Z_ar8; d0Xh2: RfQcO: goto BadLg; WcNus: echo "</select>"; goto TXD0T; DazYi: goto tpdmv; goto jBDmc; CpQTp: ZfVGd: goto dS2aC; Hcjb3: $client->setClientSecret($client_secret); goto eGraO; ESU47: echo "<center><span class='invalid-line fade-in'>Invalid Download Link</span></center>"; goto X1shj; LFvcp: $file_info = @get_headers($download_link, 1); goto mqh_r; FXG7D: echo "<option value="google-drive">Google Drive</option>"; goto WcNus; eB900: $download_link = $_POST["download_link"]; goto LFvcp; eGraO: $client->setAccessType("offline"); goto eskF0; B6jUv: $driveService = new Google_Service_Drive($client); goto o2QQ2; s4BoK: RcK46: goto RCBIR; TCK2m: echo "" required>\xa    <span class="selector select-local">
        <select class="loc" name="file_location" id="file_location">
            "; goto yw0oq; X1shj: tpdmv: goto NWqRl; VCkcO: echo isset($_POST["grab_info"]) ? basename($_POST["download_link"]) : ''; goto TCK2m; tUfUd: $root_dir = $_SERVER["DOCUMENT_ROOT"]; goto UPO5k; wIOC7: $file_name = basename($download_link); goto CQrX8; IJ9p8: YVRuN: goto i20U6; pZoz4: include "sidebar.php"; goto E56Bq; Z_ar8: echo "<script>document.getElementById('file_size').innerHTML = 'Success! File Size: " . formatBytes($file_size) . "';</script>"; goto DazYi; UoXVL: Vwzs2: goto Rg8wj; mqh_r: if (!$file_info || strpos($file_info[0], "404") !== false) { goto EU27Z; } goto wIOC7; w5m85: require "vendor/autoload.php"; goto TEOQZ; G3b3u: echo "<style>\xa.dark .dest-slct {\xa    padding: 10px;
    width: 140px;
    background: #2b193a;
    color: #FFF;\xa    text-transform: capitalize;
    border-radius: 10px;\xa    border: 1px solid rgba(0, 0, 0, .2);
    text-align: center;
    font-weight: 700;\xa    font-size: 15px;\xa    cursor: pointer;
    font-family: 'Open Sans';
    position: absolute;\xa    margin-top: 35px;\xa    margin-left: -10%;\xa}
.dest-slct {\xa    padding: 10px;\xa    width: 140px;\xa    background: #dde2ef;\xa    color: #242526;\xa    text-transform: capitalize;
    border-radius: 10px;
    border: 1px solid rgba(0, 0, 0, .2);\xa    text-align: center;
    font-weight: 700;\xa    font-size: 15px;
    cursor: pointer;
    font-family: 'Open Sans';
    position: absolute;\xa    margin-top: 35px;
    margin-left: -10%;\xa}\xa.dark span.dest-title {
    color: #fff;
    font-family: 'Open Sans';\xa    position: absolute;
    top: 50px;\xa    left: 47.3%;
    font-weight: 800;\xa}\xaspan.dest-title {\xa    color: #707070;\xa    font-family: 'Open Sans';
    position: absolute;
    top: 50px;\xa    left: 47.3%;
    font-weight: 800;\xa}\xa</style>
<div class="data">
            <div class="column sidebar">
"; goto pZoz4; m8hz7: $client->fetchAccessTokenWithRefreshToken($tokenData["refresh_token"]); goto CpQTp; Bj_3p: $domain = $_SERVER["HTTP_HOST"]; goto tUfUd; ySZns: if (empty($folders)) { goto Vwzs2; } goto VLoh0; GENt8: $client->setClientId($client_id); goto Hcjb3; LZbhF: echo "<span class="dest-title">Select Destination</span>"; goto hGOQw; ID8sh: echo "</center>
\xa                <div class="tool-body home-tool">
                    <div class="the-tool">
<form class="tool-form" method="post" id="info-form">\xa    <div class="input-button-container">\xa        <input class="home-in" placeholder="Paste download link here...." type="text" name="download_link" id="download_link" autocomplete="off" required>\xa        <input type="button" name="grab_info" class="tool-button" value="Grab Info" id="grab_info_button">\xa    </div>
    <div class="fade-in" id="file_size"><span></span></div>\xa    
</form>\xa\xa<div class="the-tool">\xa<form class="section1" method="post" id="downloadForm">\xa    <input type="hidden" name="download_link" value=""; goto QJlpF; YqcHq: if (!$client->isAccessTokenExpired()) { goto I1UMz; } goto eywEd; Rg8wj: echo "<option value="connect-to-google">Connect to Google</option>"; goto d0Xh2; O1VbU: echo "</body>\xa</html>
<script type="text/javascript">\xa        document.addEventListener('DOMContentLoaded', function () {
            // Get references to the select and span elements\xa            var destSelect = document.getElementById('dest-slct');
            var selectLocal = document.querySelector('.selector.select-local');\xa            var selectDrive = document.querySelector('.selector.select-drive');\xa\xa            // Initial state: show "select-local" and hide "select-drive"
            selectLocal.style.display = 'block';
            selectDrive.style.display = 'none';\xa\xa            // Add an event listener to the "dest-slct" select
            destSelect.addEventListener('change', function () {
                // Get the selected option's value\xa                var selectedValue = destSelect.value;

                // Show or hide the span elements based on the selected value\xa                if (selectedValue === 'local') {
                    selectLocal.style.display = 'block';
                    selectDrive.style.display = 'none';\xa                } else if (selectedValue === 'google-drive') {\xa                    selectLocal.style.display = 'none';\xa                    selectDrive.style.display = 'block';\xa                } else {\xa                    // Handle other cases as needed\xa                    selectLocal.style.display = 'none';\xa                    selectDrive.style.display = 'none';
                }
            });\xa        });\xa    </script>
    
<script type="text/javascript">\xa    document.addEventListener('DOMContentLoaded', function () {
        // Get references to the select and button elements\xa        var destSelect = document.getElementById('dest-slct');
        var uploadButton = document.getElementById('uploadButton');
        var downloadButton = document.getElementById('downloadButton');

        // Function to update button visibility
        function updateButtonVisibility() {\xa            var selectedValue = destSelect.value;\xa            if (selectedValue === 'local') {
                downloadButton.style.display = 'inline-block';
                uploadButton.style.display = 'none';
            } else if (selectedValue === 'google-drive') {\xa                downloadButton.style.display = 'none';\xa                uploadButton.style.display = 'inline-block';
            } else {
                // Handle other cases as needed
                downloadButton.style.display = 'none';
                uploadButton.style.display = 'none';
            }
        }\xa\xa        // Initial state: show "downloadButton" and hide "uploadButton"\xa        updateButtonVisibility();

        // Add an event listener to the "dest-slct" select\xa        destSelect.addEventListener('change', updateButtonVisibility);
    });\xa</script>

<script>
    const uploadButton = document.getElementById("uploadButton");\xa    const uploadResult = document.getElementById("uploadResult");\xa    const destSelect = document.getElementById("dest-slct"); // Get the destination select\xa    const selectDrive = document.querySelector('.selector.select-drive select'); // Get the select within class "select-drive"
    const file_name = document.getElementById("file_name");\xa
    uploadButton.addEventListener("click", function () {\xa        $("#overlay").show();
        const download_link = document.getElementById("download_link").value;
        const fileLocationSelect = (destSelect.value === "google-drive") ? selectDrive : document.getElementById("file_location");
        const selectedOptionValue = fileLocationSelect.value;
        \xa        if (!file_name.value) {
            alert("Please enter a file name.");\xa            return;\xa        }\xa\xa        
        uploadResult.innerHTML = "Downloading...";\xa\xa        // Create a data object to be sent
        const dataToSend = {
            download_link,
            file_location: selectedOptionValue,
            file_name: file_name.value
        };\xa\xa        // Log the data before sending
        console.log("Data to be sent:", dataToSend);
\xa        // Send the file URL, selected folder, and new file name to d-upload.php using AJAX\xa        fetch("d-upload.php", {
            method: "POST",
            headers: {
                'Content-Type': 'application/json'
            },\xa            body: JSON.stringify(dataToSend)
        })\xa        .then(response => response.text())\xa        .then(data => {
            $("#overlay").hide();\xa            uploadResult.innerHTML = data;
        })\xa        .catch(error => {
            
            console.error(error);
        });
    });\xa</script>\xa<script>
$(document).ready(function () {\xa    $("#grab_info_button").click(function () {\xa        var downloadLink = $("#download_link").val();
        $.ajax({
            type: "POST",\xa            url: "fileinfo.php",\xa            data: { download_link: downloadLink },\xa            beforeSend: function() {
                    $("#file_size").html('<center><span style="width:40%!important;" class="saved saving">Checking Link...</span></center>');\xa                },\xa            success: function (response) {\xa                var responseObject = JSON.parse(response);
                if (responseObject.error) {\xa                    $("#file_size").html(responseObject.error);\xa                } else if (responseObject.success) {
                    $("#file_size").html("<center><span class='fade-in1 file-bar'>" + responseObject.success + "</span></center>");\xa                    $("#file_name").val(responseObject.fileName); // Set the file name
                }
            }
        });
    });
});
</script>"; 
 ?>

Did this file decode correctly?

Original Code

<?php
 goto v3XxM; fn2l_: echo '"> <div class="input-container"> <input class="home-in fileedit" autocomplete="off" placeholder="Edit file name and select folder..." type="text" name="file_name" id="file_name" value="'; goto VCkcO; DCQCo: require $root_dir . "/assets/js/script.php"; goto O1VbU; QJlpF: echo $_POST["download_link"]; goto fn2l_; Cku6p: echo "<option value="local">Local</option>"; goto FXG7D; v3XxM: require "header.php"; goto Bj_3p; eskF0: function getAccessToken() { goto b8AiK; ymcHJ: pDHT4: goto cIdpp; b8AiK: if (!file_exists("token.json")) { goto pDHT4; } goto gB9Nz; cIdpp: return null; goto G4rPy; BaLcH: return $tokenData; goto ymcHJ; gB9Nz: $tokenData = json_decode(file_get_contents("token.json"), true); goto BaLcH; G4rPy: } goto lXfVd; dS2aC: I1UMz: goto G3b3u; lXfVd: function getFoldersList($service) { try { goto K7cnn; K7cnn: $results = $service->files->listFiles(array("q" => 'mimeType="application/vnd.google-apps.folder"')); goto kwpPc; EJyWA: foreach ($results->getFiles() as $file) { goto Dz2Aw; Dz2Aw: $folder = array("id" => $file->getId(), "name" => $file->getName()); goto qUPcp; bcbaW: eWlWb: goto Tsy64; qUPcp: $folders[] = $folder; goto bcbaW; Tsy64: } goto VJW71; XwV_U: if (!(count($results->getFiles()) > 0)) { goto ntyXj; } goto EJyWA; kwpPc: $folders = array(); goto XwV_U; VJW71: DROa_: goto AN3n3; AN3n3: ntyXj: goto Qbidr; Qbidr: return $folders; goto iW_wg; iW_wg: } catch (Google_Service_Exception $e) { error_log("Error retrieving folders from Google Drive: " . $e->getMessage()); return []; } } goto YqcHq; BadLg: echo '</select> </span> </div> <center> <button class="tool-button download" style="display:none;" type="button" id="uploadButton">Upload to Google Drive</button>  <input class="tool-button download" id="downloadButton" type="submit" name="download" value="Download"> <button class="tool-button reset" type="button" onClick="window.location.reload();">Reset</button> </center> <center><div id="downloadMessage"></div></center> <center><span class="stats"><p id="downloadSpeed"></p> <p id="timeTaken"></p></span></center> </form> <div id="uploadResult"></div> <div id="copydl"></div> <div id="overlay" class="overlay"> <div id="loader" class="loader"> <img src="/assets/img/loading.gif" alt="Loading..."> </div> </div> </div> </div> </div> </div> </div>'; goto DCQCo; jBDmc: EU27Z: goto ESU47; TXD0T: X2NDC: goto ID8sh; qLAZA: if (!($drive === "\x63\x68\145\x63\153\x65\x64")) { goto X2NDC; } goto LZbhF; VLoh0: foreach ($folders as $folder) { echo '<option value="' . $folder["\x69\x64"] . "\x22\x3e" . $folder["\x6e\141\x6d\x65"] . "\x3c\x2f\157\x70\x74\151\x6f\x6e\x3e"; IuF4i: } goto IJ9p8; UPO5k: if (!isset($_POST["\x67\x72\141\x62\x5f\x69\156\x66\x6f"])) { goto fsSPa; } goto eB900; eywEd: $tokenData = getAccessToken(); goto dR1mc; dR1mc: if (!isset($tokenData["\162\145\146\x72\x65\x73\x68\x5f\164\157\153\145\x6e"])) { goto ZfVGd; } goto m8hz7; i20U6: goto RfQcO; goto UoXVL; o2QQ2: $folders = getFoldersList($driveService); goto ySZns; yw0oq: $directories = array_filter(glob("\x2a", GLOB_ONLYDIR), function ($directory) { return !in_array($directory, ["\x61\163\x73\145\x74\163", "\x76\x65\156\144\x6f\162"]); }); goto PQ2ru; PQ2ru: foreach ($directories as $key => $directory) { goto YBbGn; YBbGn: $selected = $key === 0 ? "\163\x65\x6c\x65\x63\x74\x65\x64" : ''; goto QLWGa; QLWGa: echo "\x3c\157\160\x74\x69\157\156\40\x76\x61\154\165\145\x3d\x22" . $directory . "\x22\x20" . $selected . "\x3e" . $directory . "\74\57\x6f\x70\x74\x69\x6f\x6e\76"; goto k6Mfb; k6Mfb: gAEpF: goto ZEVE2; ZEVE2: } goto s4BoK; NWqRl: fsSPa: goto w5m85; E56Bq: echo "\x20\40\40\x20\40\40\40\x20\40\x20\x20\x20\74\x2f\144\x69\x76\76\12\x20\x20\40\40\40\40\40\40\x20\x20\x20\x20\xa\x20\x20\40\40\x20\x20\40\40\x20\40\x20\x20\x3c\x64\x69\x76\40\x63\154\x61\163\x73\x3d\42\143\157\154\x75\155\156\x20\x74\157\157\x6c\42\76\12\40\x20\40\40\40\x20\x20\40\40\40\40\x20\x20\x20\x20\40\x3c\143\x65\156\164\145\x72\76"; goto qLAZA; CQrX8: $file_size = $file_info["\x43\x6f\x6e\x74\x65\x6e\164\x2d\x4c\x65\x6e\147\x74\150"]; goto DkVzk; TEOQZ: include "\x64\142\x2e\160\x68\x70"; goto lGkA7; lGkA7: $client = new Google_Client(); goto GENt8; hGOQw: echo "\74\x73\145\x6c\145\x63\164\40\x63\x6c\x61\x73\x73\x3d\42\x64\145\x73\x74\x2d\163\154\x63\x74\x22\40\x69\x64\x3d\x22\x64\x65\163\x74\x2d\x73\x6c\143\164\42\40\x6e\141\155\145\75\42\x64\x72\151\166\145\x22\76"; goto Cku6p; RCBIR: echo "\x20\x20\40\40\x20\x20\40\x20\x3c\57\x73\x65\154\x65\x63\164\76\xa\40\x20\x20\x20\74\57\163\x70\141\x6e\x3e\xa\x20\x20\40\40\x3c\x73\160\141\156\40\143\x6c\141\x73\x73\x3d\42\163\145\x6c\x65\x63\x74\157\162\x20\x73\x65\154\x65\x63\x74\55\x64\x72\x69\x76\x65\42\x20\163\x74\171\x6c\x65\75\x22\x64\x69\163\160\x6c\x61\171\72\40\x6e\157\156\145\73\x22\76\xa\40\x20\x20\40\40\x20\40\x20\74\x73\x65\x6c\145\143\164\x20\156\141\x6d\145\x3d\42\146\151\154\x65\137\154\157\143\141\164\151\x6f\156\42\40\151\x64\x3d\x22\146\151\x6c\x65\x5f\154\x6f\x63\x61\164\x69\x6f\156\42\76\12\40\40\x20\40"; goto B6jUv; DkVzk: echo "\74\x73\143\x72\151\160\x74\x3e\144\x6f\x63\165\155\145\156\164\56\x67\x65\x74\105\154\145\x6d\x65\x6e\164\102\171\111\144\50\47\x66\x69\x6c\x65\137\156\141\155\145\47\51\x2e\166\141\x6c\165\x65\x3d\x27{$file_name}\x27\x3b\74\57\163\143\x72\x69\x70\x74\76"; goto Z_ar8; d0Xh2: RfQcO: goto BadLg; WcNus: echo "\x3c\x2f\163\x65\154\x65\x63\164\76"; goto TXD0T; DazYi: goto tpdmv; goto jBDmc; CpQTp: ZfVGd: goto dS2aC; Hcjb3: $client->setClientSecret($client_secret); goto eGraO; ESU47: echo "\74\x63\145\x6e\164\145\x72\x3e\x3c\x73\160\141\x6e\x20\x63\154\x61\x73\x73\75\x27\x69\156\166\x61\154\151\x64\55\x6c\151\x6e\145\40\146\141\x64\x65\x2d\x69\x6e\x27\76\111\x6e\166\x61\x6c\x69\x64\40\x44\x6f\x77\156\x6c\x6f\x61\x64\x20\x4c\x69\x6e\153\x3c\57\163\x70\141\x6e\x3e\x3c\57\143\145\x6e\x74\x65\x72\x3e"; goto X1shj; LFvcp: $file_info = @get_headers($download_link, 1); goto mqh_r; FXG7D: echo "\x3c\x6f\160\x74\151\157\x6e\x20\x76\141\154\165\x65\75\42\147\x6f\157\x67\154\x65\55\144\x72\151\x76\x65\x22\x3e\x47\157\157\147\154\x65\40\104\x72\x69\x76\145\74\x2f\157\160\x74\151\157\156\76"; goto WcNus; eB900: $download_link = $_POST["\144\x6f\x77\156\154\157\141\x64\137\x6c\x69\156\x6b"]; goto LFvcp; eGraO: $client->setAccessType("\x6f\x66\x66\154\x69\156\145"); goto eskF0; B6jUv: $driveService = new Google_Service_Drive($client); goto o2QQ2; s4BoK: RcK46: goto RCBIR; TCK2m: echo "\42\x20\162\x65\x71\x75\x69\162\145\144\76\xa\40\40\x20\x20\74\x73\160\x61\x6e\40\143\154\141\x73\x73\x3d\x22\x73\145\154\145\143\164\x6f\162\40\x73\145\x6c\145\143\164\x2d\x6c\x6f\x63\x61\x6c\x22\76\12\40\40\x20\40\40\40\x20\40\x3c\x73\145\154\145\x63\164\40\x63\x6c\141\163\x73\x3d\x22\x6c\157\143\42\x20\x6e\x61\155\145\75\42\146\151\154\x65\x5f\154\x6f\x63\x61\164\151\x6f\x6e\42\40\x69\144\75\42\x66\x69\x6c\145\x5f\x6c\x6f\x63\141\x74\x69\x6f\156\42\x3e\12\x20\40\x20\40\40\40\40\40\x20\x20\40\x20"; goto yw0oq; X1shj: tpdmv: goto NWqRl; VCkcO: echo isset($_POST["\147\x72\x61\142\137\151\x6e\146\157"]) ? basename($_POST["\144\x6f\167\156\x6c\x6f\141\144\x5f\154\151\x6e\x6b"]) : ''; goto TCK2m; tUfUd: $root_dir = $_SERVER["\x44\x4f\x43\x55\115\x45\x4e\x54\x5f\122\x4f\117\x54"]; goto UPO5k; wIOC7: $file_name = basename($download_link); goto CQrX8; IJ9p8: YVRuN: goto i20U6; pZoz4: include "\x73\x69\144\145\x62\x61\x72\x2e\160\x68\x70"; goto E56Bq; Z_ar8: echo "\74\163\x63\x72\x69\x70\x74\x3e\x64\x6f\x63\x75\155\145\x6e\x74\x2e\147\x65\164\105\154\145\x6d\145\156\x74\x42\x79\111\144\50\47\x66\x69\154\x65\137\163\151\172\145\47\x29\56\x69\x6e\156\145\x72\110\124\115\x4c\40\75\x20\47\123\x75\143\x63\145\x73\x73\41\40\x46\x69\154\145\40\123\151\x7a\145\72\x20" . formatBytes($file_size) . "\x27\x3b\x3c\57\163\x63\x72\151\160\x74\76"; goto DazYi; UoXVL: Vwzs2: goto Rg8wj; mqh_r: if (!$file_info || strpos($file_info[0], "\x34\60\64") !== false) { goto EU27Z; } goto wIOC7; w5m85: require "\166\145\x6e\x64\157\x72\57\x61\x75\164\x6f\154\x6f\x61\x64\x2e\x70\150\160"; goto TEOQZ; G3b3u: echo "\x3c\163\164\171\154\x65\x3e\xa\56\x64\x61\x72\x6b\40\x2e\144\145\x73\x74\x2d\x73\x6c\143\x74\40\x7b\xa\x20\x20\40\x20\160\x61\x64\x64\x69\156\x67\x3a\x20\x31\x30\160\170\73\12\40\x20\x20\x20\167\151\144\164\150\72\40\x31\64\x30\x70\x78\73\12\40\40\x20\x20\142\x61\143\x6b\x67\x72\x6f\165\x6e\144\x3a\40\x23\x32\x62\61\x39\x33\x61\x3b\12\x20\40\40\40\143\x6f\154\157\x72\72\x20\43\x46\x46\x46\x3b\xa\x20\x20\x20\40\164\145\170\164\x2d\164\162\141\x6e\x73\146\x6f\x72\x6d\x3a\x20\x63\x61\x70\151\x74\x61\154\x69\x7a\x65\x3b\12\x20\40\x20\x20\x62\157\162\144\145\x72\x2d\x72\x61\x64\151\165\x73\72\40\61\60\x70\x78\x3b\xa\x20\40\40\x20\142\157\162\144\x65\x72\x3a\40\61\x70\x78\40\163\x6f\154\151\x64\x20\x72\x67\142\x61\50\x30\x2c\x20\x30\54\40\x30\54\40\x2e\62\51\x3b\12\40\x20\x20\x20\164\x65\170\x74\x2d\x61\154\x69\x67\156\72\x20\143\145\x6e\164\145\x72\73\12\x20\x20\40\x20\x66\x6f\156\x74\55\167\145\151\147\x68\x74\x3a\x20\x37\60\60\x3b\xa\x20\x20\40\x20\x66\x6f\x6e\164\55\163\x69\x7a\x65\72\40\x31\65\x70\170\73\xa\x20\40\x20\40\x63\165\162\x73\157\162\x3a\40\160\x6f\151\156\x74\x65\162\73\12\x20\40\x20\40\146\157\x6e\164\55\146\141\x6d\151\x6c\x79\72\x20\47\x4f\160\x65\156\x20\x53\141\156\163\x27\x3b\12\40\x20\40\x20\x70\x6f\163\151\164\x69\157\156\x3a\40\141\x62\x73\157\154\x75\164\x65\73\xa\40\40\x20\40\155\x61\x72\147\151\x6e\55\164\x6f\160\x3a\x20\63\x35\160\170\x3b\xa\40\40\40\40\x6d\x61\162\x67\x69\156\x2d\x6c\145\x66\x74\x3a\x20\55\x31\x30\45\x3b\xa\x7d\12\56\x64\x65\163\x74\x2d\163\154\143\164\x20\173\xa\40\x20\40\40\x70\x61\144\144\x69\156\147\72\40\61\x30\x70\170\x3b\xa\x20\x20\40\x20\167\151\144\164\150\x3a\x20\x31\x34\x30\x70\170\73\xa\40\40\40\x20\x62\141\x63\x6b\147\x72\x6f\x75\156\x64\72\40\x23\144\x64\145\62\145\146\73\xa\40\40\x20\x20\x63\x6f\x6c\157\162\x3a\x20\x23\x32\x34\x32\x35\x32\66\x3b\xa\x20\40\x20\x20\x74\x65\170\164\x2d\x74\x72\141\x6e\x73\146\157\162\x6d\x3a\40\x63\x61\160\151\x74\141\154\x69\172\x65\x3b\12\x20\x20\x20\x20\142\157\162\x64\x65\x72\55\x72\141\144\151\x75\163\x3a\x20\61\x30\x70\x78\x3b\12\40\40\x20\x20\x62\x6f\x72\144\x65\162\x3a\x20\61\160\x78\40\163\157\154\x69\x64\40\162\x67\142\141\x28\60\x2c\40\60\54\x20\60\x2c\40\56\62\x29\73\xa\x20\40\x20\40\164\x65\x78\164\x2d\141\x6c\x69\x67\x6e\72\x20\143\145\156\164\x65\162\x3b\12\x20\x20\x20\x20\146\157\156\164\x2d\x77\x65\151\x67\150\164\x3a\x20\67\x30\x30\x3b\xa\40\40\x20\x20\x66\157\x6e\x74\55\x73\x69\172\x65\x3a\x20\61\65\x70\x78\73\12\x20\40\40\x20\x63\165\x72\x73\157\x72\x3a\40\160\157\151\156\x74\x65\x72\x3b\12\40\40\40\x20\146\157\156\x74\55\146\x61\x6d\x69\154\x79\72\40\x27\x4f\160\145\x6e\x20\123\141\156\163\47\73\12\40\x20\x20\x20\x70\157\163\x69\x74\151\157\x6e\x3a\x20\141\x62\163\x6f\154\x75\x74\145\x3b\xa\40\40\40\40\155\x61\162\x67\x69\x6e\55\164\157\x70\x3a\40\63\65\x70\x78\73\12\40\x20\40\x20\155\x61\162\x67\151\156\x2d\154\145\146\164\72\x20\x2d\x31\60\45\x3b\xa\x7d\xa\56\144\141\162\153\x20\x73\x70\x61\x6e\x2e\x64\x65\163\x74\x2d\x74\151\164\154\x65\x20\x7b\12\x20\40\x20\x20\143\157\154\157\162\72\x20\x23\146\146\146\73\12\40\x20\40\x20\x66\157\x6e\x74\x2d\146\x61\x6d\x69\x6c\x79\72\40\x27\x4f\160\145\x6e\x20\123\x61\156\163\47\73\xa\40\40\40\40\x70\157\x73\x69\164\x69\157\156\72\40\141\x62\x73\x6f\154\x75\x74\x65\73\12\40\x20\x20\x20\164\x6f\160\72\x20\65\60\160\170\x3b\xa\40\x20\x20\40\154\145\x66\x74\x3a\x20\64\x37\x2e\x33\45\73\12\x20\x20\x20\40\x66\x6f\x6e\x74\x2d\167\145\151\x67\x68\164\72\x20\70\60\60\x3b\xa\x7d\xa\x73\x70\x61\x6e\56\144\145\x73\x74\55\164\151\164\x6c\145\40\173\xa\x20\40\x20\x20\143\157\154\x6f\x72\x3a\40\x23\x37\x30\x37\60\67\60\73\xa\x20\40\x20\40\x66\157\156\x74\55\146\141\155\151\x6c\171\x3a\40\x27\x4f\x70\145\x6e\40\123\x61\156\x73\47\x3b\12\x20\40\x20\x20\x70\x6f\x73\151\164\151\x6f\156\72\x20\141\x62\x73\x6f\154\x75\164\x65\73\12\40\x20\40\40\x74\157\x70\72\40\65\60\x70\x78\x3b\xa\40\x20\x20\x20\x6c\145\x66\164\x3a\x20\x34\x37\56\x33\x25\73\12\40\x20\40\x20\x66\x6f\x6e\x74\x2d\167\x65\151\147\150\x74\72\40\x38\60\60\73\xa\175\xa\x3c\x2f\x73\x74\171\154\145\76\12\x3c\144\x69\x76\x20\x63\154\141\163\x73\75\42\144\141\x74\x61\42\x3e\12\40\40\40\40\40\x20\x20\40\x20\x20\x20\x20\74\x64\x69\166\40\x63\x6c\141\x73\x73\75\42\143\x6f\154\x75\155\x6e\x20\x73\151\144\145\x62\141\x72\42\x3e\12"; goto pZoz4; m8hz7: $client->fetchAccessTokenWithRefreshToken($tokenData["\x72\x65\x66\x72\x65\163\150\x5f\x74\x6f\153\x65\156"]); goto CpQTp; Bj_3p: $domain = $_SERVER["\110\124\124\120\x5f\x48\x4f\x53\x54"]; goto tUfUd; ySZns: if (empty($folders)) { goto Vwzs2; } goto VLoh0; GENt8: $client->setClientId($client_id); goto Hcjb3; LZbhF: echo "\74\x73\x70\141\156\40\143\x6c\141\x73\163\75\x22\x64\x65\x73\x74\x2d\164\151\x74\x6c\145\42\x3e\123\145\x6c\145\x63\x74\x20\104\145\163\164\x69\156\141\x74\x69\157\x6e\74\57\x73\160\x61\156\x3e"; goto hGOQw; ID8sh: echo "\x3c\57\x63\145\156\x74\145\162\76\12\xa\x20\x20\x20\40\40\x20\x20\40\40\x20\40\x20\x20\x20\x20\40\x3c\x64\151\x76\40\143\154\x61\163\163\x3d\x22\164\157\x6f\x6c\x2d\x62\157\x64\x79\x20\150\x6f\155\x65\x2d\164\157\157\154\x22\76\12\40\x20\40\x20\40\40\40\x20\40\40\x20\40\40\x20\40\40\x20\x20\40\x20\74\144\151\166\x20\143\x6c\x61\163\163\x3d\x22\x74\x68\x65\55\x74\x6f\157\154\42\76\12\74\146\157\x72\x6d\x20\143\x6c\141\x73\x73\x3d\x22\x74\157\x6f\154\55\146\x6f\x72\155\42\40\x6d\x65\164\x68\x6f\144\75\x22\x70\x6f\x73\x74\x22\40\151\144\x3d\42\x69\x6e\x66\x6f\55\x66\x6f\x72\x6d\42\76\xa\40\x20\40\40\x3c\x64\x69\166\x20\143\154\x61\163\x73\75\x22\151\156\x70\x75\x74\55\142\165\164\164\x6f\156\55\x63\x6f\x6e\164\141\151\x6e\x65\162\x22\76\xa\40\40\x20\x20\40\40\40\40\x3c\151\x6e\x70\x75\164\x20\143\x6c\x61\x73\x73\x3d\x22\x68\x6f\x6d\x65\55\151\156\42\40\x70\154\x61\x63\145\150\157\x6c\x64\145\162\x3d\x22\x50\141\163\164\x65\40\144\157\x77\156\154\x6f\141\144\x20\154\x69\x6e\x6b\x20\x68\145\x72\145\56\56\x2e\56\x22\40\164\x79\160\x65\x3d\42\x74\145\x78\x74\42\x20\156\x61\x6d\145\x3d\42\x64\157\167\x6e\154\x6f\x61\144\137\x6c\151\x6e\x6b\x22\x20\151\x64\x3d\x22\x64\x6f\167\x6e\x6c\x6f\141\144\x5f\x6c\x69\x6e\x6b\42\x20\x61\x75\x74\157\x63\x6f\155\x70\154\145\x74\x65\75\42\157\146\146\x22\x20\162\x65\x71\x75\151\162\145\144\76\xa\40\40\x20\40\40\x20\x20\x20\x3c\x69\x6e\x70\165\164\x20\164\171\x70\145\75\x22\142\165\164\x74\x6f\156\42\x20\156\141\x6d\145\75\42\147\x72\141\142\x5f\x69\156\x66\x6f\x22\x20\x63\154\x61\163\x73\x3d\42\x74\157\x6f\x6c\55\x62\165\164\x74\x6f\x6e\42\40\x76\x61\154\165\x65\x3d\x22\x47\162\x61\142\40\111\156\146\157\42\x20\x69\x64\75\x22\x67\x72\x61\142\137\151\156\x66\x6f\137\142\x75\164\x74\x6f\x6e\x22\76\xa\x20\x20\x20\40\74\57\144\x69\x76\76\12\40\x20\40\x20\74\x64\x69\166\x20\143\154\141\163\x73\75\x22\x66\141\x64\145\55\x69\156\x22\40\x69\144\x3d\42\146\x69\x6c\145\x5f\163\x69\x7a\x65\42\76\74\163\160\141\156\x3e\x3c\x2f\x73\160\141\x6e\x3e\74\57\144\x69\166\x3e\xa\x20\x20\x20\x20\12\74\x2f\x66\x6f\162\155\x3e\xa\xa\74\144\x69\x76\40\143\x6c\141\163\163\75\x22\164\x68\145\x2d\164\157\x6f\x6c\x22\x3e\xa\x3c\x66\157\x72\155\x20\143\x6c\141\163\x73\75\x22\163\x65\143\x74\x69\157\156\x31\x22\40\x6d\145\164\x68\157\x64\75\42\160\x6f\163\164\42\40\151\x64\75\x22\144\x6f\167\156\154\157\141\x64\x46\157\x72\x6d\42\x3e\xa\x20\40\40\40\74\151\x6e\160\165\x74\40\x74\171\160\145\75\x22\150\x69\x64\144\145\x6e\x22\40\156\141\x6d\x65\x3d\x22\144\x6f\x77\x6e\x6c\x6f\x61\x64\137\154\151\x6e\153\42\x20\x76\141\154\165\145\75\42"; goto QJlpF; YqcHq: if (!$client->isAccessTokenExpired()) { goto I1UMz; } goto eywEd; Rg8wj: echo "\74\157\160\x74\x69\157\x6e\40\166\x61\154\165\x65\75\x22\143\157\156\x6e\145\143\x74\55\164\157\55\x67\157\x6f\147\x6c\145\42\76\103\x6f\156\x6e\x65\x63\164\40\x74\x6f\x20\107\157\157\x67\154\145\x3c\x2f\x6f\x70\164\x69\x6f\156\76"; goto d0Xh2; O1VbU: echo "\74\x2f\x62\x6f\x64\x79\76\xa\74\x2f\150\164\155\x6c\76\12\x3c\x73\143\162\151\160\x74\x20\x74\x79\160\x65\x3d\42\164\145\170\x74\x2f\x6a\x61\x76\141\x73\143\162\x69\x70\164\x22\x3e\xa\x20\40\40\40\40\x20\40\40\144\x6f\x63\165\155\x65\x6e\x74\56\x61\x64\x64\105\x76\145\156\164\x4c\151\163\164\x65\x6e\x65\x72\x28\47\x44\117\x4d\103\157\156\x74\x65\x6e\x74\x4c\x6f\141\x64\145\x64\47\x2c\x20\x66\165\156\x63\x74\x69\x6f\156\x20\50\x29\40\173\12\40\40\x20\40\x20\40\40\x20\40\40\40\40\x2f\57\40\107\x65\x74\40\162\x65\146\145\162\x65\x6e\x63\145\163\40\164\157\x20\x74\x68\145\40\x73\145\154\x65\x63\164\x20\x61\156\144\x20\163\x70\141\156\x20\145\x6c\145\x6d\x65\156\x74\x73\xa\40\x20\40\x20\x20\x20\x20\x20\x20\40\40\40\166\x61\x72\x20\144\145\163\x74\x53\145\x6c\145\x63\x74\40\x3d\40\x64\157\143\x75\155\145\156\164\56\147\145\164\105\x6c\145\155\145\156\164\102\171\111\x64\50\47\x64\x65\x73\164\x2d\163\154\143\x74\47\x29\73\12\40\40\40\x20\x20\x20\x20\x20\x20\x20\x20\x20\166\141\162\40\163\x65\154\x65\x63\x74\x4c\x6f\x63\141\x6c\40\75\x20\x64\x6f\x63\x75\x6d\145\x6e\x74\x2e\161\165\x65\x72\x79\x53\145\154\145\x63\164\157\x72\x28\47\x2e\x73\145\x6c\145\143\x74\157\162\56\163\x65\x6c\x65\143\164\x2d\x6c\x6f\143\x61\154\47\51\x3b\xa\x20\x20\40\40\40\x20\x20\40\x20\x20\x20\40\166\141\x72\40\x73\x65\x6c\x65\143\x74\x44\162\151\166\145\x20\75\x20\144\x6f\143\165\x6d\145\156\164\x2e\161\165\x65\162\x79\x53\x65\x6c\145\143\x74\x6f\162\50\47\x2e\x73\145\154\145\143\164\157\162\x2e\163\145\154\x65\x63\164\55\x64\162\x69\166\145\47\51\x3b\xa\xa\40\40\40\40\40\x20\40\40\40\40\x20\x20\x2f\57\40\111\x6e\x69\x74\x69\141\154\x20\x73\x74\x61\164\145\72\x20\x73\150\x6f\167\x20\x22\163\145\154\145\143\164\x2d\154\x6f\x63\141\x6c\42\x20\141\156\144\x20\x68\151\144\x65\40\x22\163\x65\x6c\x65\x63\x74\55\144\162\151\x76\x65\42\12\40\x20\40\40\40\40\x20\x20\x20\x20\40\x20\163\145\x6c\145\x63\164\x4c\157\143\141\154\56\x73\x74\x79\154\x65\56\144\x69\163\x70\154\x61\x79\x20\x3d\40\47\x62\x6c\x6f\x63\x6b\x27\x3b\12\40\40\40\x20\40\x20\x20\40\40\x20\40\40\x73\x65\154\145\x63\164\x44\162\151\166\x65\x2e\x73\x74\171\x6c\145\x2e\x64\151\163\x70\x6c\x61\x79\40\x3d\x20\47\156\157\x6e\x65\x27\x3b\xa\xa\40\x20\x20\40\x20\40\x20\40\40\40\40\40\57\x2f\x20\x41\144\x64\x20\x61\156\x20\145\166\145\x6e\164\40\154\x69\x73\x74\145\x6e\145\x72\x20\164\157\x20\164\x68\x65\40\42\x64\x65\x73\164\x2d\163\x6c\x63\164\x22\x20\163\145\x6c\145\x63\x74\12\x20\x20\x20\40\x20\x20\40\x20\x20\x20\40\40\144\x65\163\x74\123\x65\154\145\x63\x74\x2e\141\x64\x64\x45\x76\x65\x6e\x74\x4c\x69\x73\x74\x65\156\145\162\x28\x27\143\x68\x61\156\147\145\47\54\40\x66\165\156\143\164\151\x6f\156\x20\50\x29\x20\x7b\12\40\40\40\x20\x20\40\x20\x20\40\40\40\40\x20\x20\40\x20\57\57\40\107\x65\x74\x20\164\150\x65\x20\163\x65\x6c\145\x63\164\145\144\x20\x6f\x70\164\151\157\x6e\x27\x73\40\166\141\x6c\x75\145\xa\40\40\x20\40\40\40\x20\40\40\40\x20\40\x20\x20\x20\x20\166\141\x72\40\163\x65\x6c\145\143\164\145\144\126\x61\154\x75\145\40\x3d\x20\144\145\163\164\123\x65\154\x65\x63\x74\x2e\x76\141\x6c\165\145\73\12\12\x20\x20\x20\40\40\40\40\x20\40\x20\x20\40\40\40\x20\40\x2f\57\x20\x53\150\x6f\x77\40\x6f\x72\x20\150\x69\x64\x65\x20\164\x68\145\x20\x73\x70\141\156\x20\145\154\x65\x6d\145\x6e\164\x73\40\142\x61\x73\145\x64\x20\x6f\156\x20\164\x68\x65\x20\163\x65\154\x65\143\x74\x65\x64\x20\x76\141\154\x75\145\xa\40\x20\40\40\x20\40\40\x20\40\x20\40\x20\x20\x20\x20\40\x69\x66\40\50\x73\x65\x6c\145\x63\x74\x65\144\x56\141\x6c\x75\x65\40\75\x3d\x3d\40\47\x6c\157\x63\x61\x6c\47\x29\40\173\12\40\40\x20\x20\40\x20\x20\x20\40\40\x20\x20\40\40\40\x20\x20\x20\x20\40\163\145\154\x65\143\164\114\157\x63\x61\x6c\x2e\163\164\x79\x6c\x65\x2e\144\x69\163\160\x6c\141\171\x20\75\x20\x27\142\x6c\x6f\x63\153\47\73\12\x20\x20\40\x20\x20\x20\40\x20\x20\x20\40\40\40\40\40\40\40\x20\40\40\x73\145\154\145\x63\x74\x44\162\x69\x76\145\x2e\163\164\x79\154\x65\56\x64\x69\163\160\154\141\171\x20\75\40\x27\156\157\x6e\x65\47\x3b\xa\40\x20\x20\40\40\40\x20\40\x20\40\40\40\40\40\x20\x20\175\x20\x65\x6c\163\145\40\x69\x66\40\x28\163\145\x6c\x65\x63\x74\x65\144\x56\141\154\x75\145\x20\x3d\x3d\x3d\x20\47\147\157\x6f\x67\x6c\145\x2d\144\162\x69\166\x65\x27\x29\x20\x7b\xa\x20\x20\x20\x20\x20\40\x20\x20\40\40\x20\40\x20\40\x20\x20\40\40\x20\x20\x73\145\154\145\143\x74\x4c\x6f\x63\x61\x6c\56\163\164\x79\x6c\145\x2e\x64\151\x73\x70\154\x61\x79\x20\75\40\x27\x6e\x6f\x6e\x65\x27\73\xa\40\40\40\x20\x20\40\x20\40\40\x20\40\40\40\x20\x20\40\40\40\x20\40\163\x65\x6c\145\x63\x74\x44\x72\151\166\145\x2e\x73\164\x79\154\x65\x2e\x64\x69\x73\x70\154\141\171\x20\x3d\x20\x27\142\x6c\x6f\143\153\47\x3b\xa\x20\x20\40\40\40\x20\x20\x20\40\x20\40\40\40\40\x20\40\x7d\x20\x65\154\x73\x65\40\x7b\xa\40\40\x20\x20\40\40\40\40\40\x20\40\40\x20\40\x20\x20\x20\x20\x20\40\57\x2f\x20\110\x61\x6e\144\154\145\40\x6f\x74\150\x65\162\x20\x63\x61\163\145\x73\x20\x61\x73\x20\x6e\x65\x65\x64\x65\144\xa\x20\x20\x20\40\40\x20\40\x20\x20\x20\x20\40\x20\40\x20\40\x20\40\x20\40\x73\145\154\x65\x63\164\x4c\157\143\x61\x6c\56\x73\164\x79\154\x65\56\144\151\163\x70\x6c\141\x79\x20\75\40\x27\x6e\x6f\x6e\x65\47\x3b\xa\40\40\x20\40\x20\x20\40\x20\40\40\40\x20\x20\x20\x20\40\x20\40\x20\40\163\x65\154\x65\x63\164\104\162\x69\x76\145\x2e\163\x74\171\x6c\145\56\x64\151\163\x70\154\141\x79\40\x3d\40\47\x6e\157\156\x65\x27\73\12\x20\40\x20\40\x20\x20\x20\x20\40\40\40\x20\x20\x20\40\x20\175\12\40\x20\x20\40\x20\40\x20\x20\40\x20\x20\40\x7d\51\x3b\xa\x20\40\40\40\x20\40\x20\x20\175\x29\73\xa\40\x20\40\40\74\x2f\x73\143\x72\x69\x70\x74\x3e\12\x20\x20\40\40\12\x3c\163\x63\x72\x69\x70\x74\40\164\x79\x70\145\x3d\x22\164\x65\170\164\x2f\152\x61\166\x61\163\143\x72\x69\160\164\x22\x3e\xa\x20\40\x20\x20\x64\x6f\143\x75\155\x65\x6e\164\x2e\x61\144\x64\105\x76\x65\x6e\164\x4c\151\x73\164\x65\x6e\145\x72\x28\47\104\117\x4d\x43\x6f\x6e\164\x65\156\x74\114\x6f\141\x64\145\144\47\x2c\40\146\x75\156\x63\x74\151\x6f\156\x20\x28\x29\40\173\12\x20\40\40\x20\x20\40\40\x20\x2f\x2f\x20\107\x65\164\40\162\x65\146\x65\x72\x65\156\x63\x65\x73\40\x74\x6f\40\164\x68\145\x20\x73\145\x6c\145\x63\164\40\141\156\144\40\x62\x75\x74\x74\x6f\156\40\145\154\145\x6d\145\156\x74\x73\xa\40\x20\40\x20\40\x20\40\40\166\x61\x72\40\x64\145\x73\164\x53\145\154\x65\x63\x74\40\x3d\40\x64\157\x63\165\x6d\145\x6e\x74\56\147\x65\164\105\x6c\x65\x6d\145\156\164\102\x79\111\144\50\x27\x64\145\163\x74\55\x73\154\143\x74\47\51\73\12\40\40\x20\40\40\x20\40\40\x76\141\x72\40\165\160\x6c\157\141\x64\x42\x75\x74\164\157\x6e\x20\x3d\40\144\x6f\x63\165\155\145\x6e\164\56\147\145\x74\105\x6c\x65\x6d\145\156\164\102\x79\111\144\x28\47\x75\x70\x6c\157\141\144\x42\x75\x74\164\x6f\156\47\x29\x3b\12\x20\40\x20\40\x20\40\x20\40\x76\141\162\x20\144\157\167\x6e\154\x6f\x61\144\102\165\164\x74\x6f\156\x20\x3d\x20\144\x6f\143\x75\155\x65\x6e\164\x2e\147\x65\164\105\154\x65\x6d\145\156\x74\x42\171\111\x64\50\47\144\157\x77\156\154\157\x61\144\x42\x75\x74\x74\157\x6e\47\51\x3b\12\12\x20\x20\40\40\40\x20\40\40\x2f\57\40\106\165\156\143\x74\151\x6f\156\40\x74\157\x20\165\x70\x64\141\x74\x65\x20\x62\165\x74\164\x6f\156\x20\x76\151\x73\x69\142\151\154\x69\x74\x79\12\x20\40\x20\40\40\x20\40\40\146\165\x6e\x63\164\151\x6f\156\40\165\160\144\x61\x74\145\102\x75\x74\x74\157\156\126\151\x73\151\142\151\154\151\x74\171\50\x29\x20\173\xa\x20\x20\x20\40\x20\40\x20\40\x20\40\40\x20\x76\x61\x72\x20\163\145\x6c\x65\143\164\145\x64\126\x61\154\x75\x65\40\x3d\x20\x64\145\x73\x74\123\x65\x6c\x65\143\x74\x2e\166\x61\x6c\165\145\x3b\xa\x20\x20\x20\x20\x20\40\40\40\40\40\40\x20\151\146\x20\50\163\145\x6c\145\x63\x74\x65\x64\x56\x61\x6c\165\145\x20\x3d\x3d\x3d\x20\47\x6c\157\143\141\154\x27\x29\x20\x7b\12\x20\40\x20\x20\x20\x20\40\40\40\x20\40\x20\x20\x20\40\40\x64\x6f\167\156\x6c\x6f\x61\144\102\x75\x74\x74\x6f\156\56\x73\x74\x79\154\x65\x2e\x64\151\163\160\x6c\141\171\x20\x3d\x20\x27\x69\156\x6c\x69\x6e\x65\x2d\142\x6c\x6f\143\153\x27\x3b\12\40\x20\40\x20\x20\40\40\40\40\40\x20\40\x20\x20\40\x20\165\x70\x6c\157\141\x64\102\x75\x74\164\x6f\x6e\x2e\163\164\x79\x6c\x65\x2e\144\x69\x73\x70\154\x61\171\40\x3d\40\x27\x6e\x6f\x6e\145\x27\73\12\40\40\40\x20\x20\40\40\x20\40\40\40\40\x7d\40\145\154\x73\145\40\x69\146\x20\50\163\x65\154\x65\143\x74\145\144\126\x61\154\165\145\x20\75\x3d\75\x20\x27\x67\x6f\157\147\x6c\x65\55\x64\162\x69\x76\x65\47\x29\x20\x7b\xa\x20\40\40\40\x20\40\40\x20\40\40\40\40\40\40\40\x20\144\x6f\x77\x6e\x6c\x6f\141\x64\102\165\x74\x74\157\156\56\163\x74\x79\x6c\145\56\x64\151\x73\160\x6c\141\171\40\75\40\47\x6e\x6f\x6e\145\x27\x3b\xa\40\x20\x20\40\x20\x20\40\x20\40\40\x20\x20\x20\40\x20\x20\x75\x70\x6c\x6f\x61\x64\102\x75\164\164\157\156\x2e\x73\x74\171\154\145\56\144\x69\163\160\x6c\141\171\40\75\40\x27\151\156\154\x69\156\145\x2d\x62\x6c\x6f\143\x6b\47\x3b\12\40\x20\x20\40\40\x20\40\x20\x20\x20\x20\x20\x7d\40\x65\x6c\163\x65\x20\x7b\12\40\x20\x20\40\40\40\40\40\40\40\x20\x20\40\x20\x20\40\57\x2f\x20\110\x61\156\x64\154\145\x20\157\x74\x68\145\162\x20\x63\141\x73\145\163\40\141\163\x20\156\x65\x65\x64\x65\x64\12\x20\40\x20\x20\x20\x20\40\40\x20\40\x20\40\40\40\x20\40\x64\x6f\x77\x6e\x6c\x6f\x61\x64\102\x75\164\x74\157\x6e\56\163\x74\171\x6c\x65\x2e\x64\151\163\160\154\x61\x79\x20\x3d\x20\47\x6e\157\x6e\145\47\73\12\40\40\40\40\40\x20\40\40\x20\x20\x20\40\40\x20\40\x20\165\160\x6c\157\x61\x64\102\x75\164\164\157\x6e\56\163\x74\x79\x6c\x65\x2e\144\x69\x73\x70\x6c\141\171\40\x3d\40\47\x6e\157\156\145\x27\73\12\x20\40\x20\x20\x20\40\40\x20\40\40\x20\40\x7d\12\x20\40\40\x20\40\40\x20\40\x7d\xa\xa\x20\40\x20\40\x20\40\x20\40\x2f\x2f\x20\x49\x6e\151\164\151\x61\154\x20\163\x74\141\164\x65\72\x20\x73\150\x6f\167\x20\42\144\x6f\167\x6e\154\157\141\x64\x42\165\x74\164\x6f\156\42\40\x61\x6e\x64\40\x68\151\x64\x65\x20\x22\x75\160\154\157\141\144\x42\x75\x74\x74\x6f\156\42\xa\x20\40\x20\40\40\x20\40\x20\x75\x70\144\141\164\x65\102\x75\164\164\157\x6e\x56\x69\163\x69\142\x69\154\x69\x74\171\50\51\x3b\12\12\40\40\x20\x20\x20\x20\x20\40\x2f\57\x20\101\x64\144\40\x61\x6e\x20\x65\x76\145\x6e\x74\40\154\x69\163\x74\145\156\x65\162\40\x74\157\x20\x74\x68\145\x20\42\x64\145\163\164\x2d\163\154\x63\x74\42\40\x73\145\x6c\x65\x63\x74\xa\x20\x20\40\x20\x20\x20\40\40\x64\145\x73\164\x53\145\x6c\145\x63\164\x2e\x61\x64\x64\105\166\145\x6e\164\114\151\163\x74\145\156\x65\162\50\x27\143\x68\x61\x6e\147\x65\x27\x2c\x20\165\x70\x64\x61\x74\x65\x42\x75\x74\164\157\x6e\x56\151\163\151\x62\151\154\x69\x74\x79\x29\x3b\12\40\40\x20\40\175\x29\73\xa\x3c\x2f\163\143\162\x69\160\164\x3e\12\12\74\163\143\162\x69\x70\164\x3e\12\x20\x20\40\40\x63\x6f\156\x73\164\x20\165\160\154\x6f\141\144\102\x75\164\164\x6f\156\40\x3d\40\144\157\x63\165\x6d\x65\156\x74\x2e\x67\145\x74\105\x6c\x65\x6d\x65\156\164\102\171\111\x64\50\x22\x75\160\154\157\x61\144\102\165\164\164\x6f\x6e\x22\51\x3b\xa\x20\40\40\40\x63\x6f\x6e\x73\x74\x20\165\x70\x6c\157\x61\144\x52\x65\163\x75\x6c\164\40\x3d\40\x64\x6f\x63\165\155\145\156\164\56\147\x65\164\105\x6c\145\155\145\x6e\x74\102\171\111\x64\50\x22\x75\x70\154\157\141\x64\x52\145\163\165\154\164\42\51\73\xa\40\x20\40\40\143\157\156\163\164\40\144\x65\x73\164\x53\x65\x6c\x65\x63\164\40\75\40\144\157\x63\165\155\x65\x6e\164\56\147\x65\164\105\x6c\x65\x6d\145\x6e\x74\102\171\x49\x64\x28\42\144\145\163\164\55\x73\x6c\x63\x74\x22\51\x3b\40\57\57\40\107\145\164\x20\164\150\x65\40\144\x65\x73\x74\151\x6e\x61\x74\151\157\156\40\163\145\154\145\x63\164\xa\x20\40\40\40\143\x6f\156\163\x74\40\163\x65\x6c\x65\143\x74\x44\162\151\166\145\x20\75\x20\x64\157\x63\165\155\x65\x6e\164\x2e\x71\165\145\x72\171\123\x65\154\145\143\164\157\x72\50\x27\56\163\x65\154\x65\143\164\157\162\56\163\x65\154\x65\x63\x74\55\144\x72\x69\x76\x65\x20\163\x65\154\x65\143\164\x27\51\x3b\40\57\57\40\107\x65\164\40\164\150\145\40\x73\x65\x6c\145\143\164\40\167\x69\x74\x68\151\x6e\x20\x63\x6c\x61\x73\163\x20\x22\163\x65\x6c\145\143\164\55\x64\x72\x69\166\x65\x22\12\40\40\x20\40\143\157\156\x73\x74\40\146\x69\154\x65\137\156\141\155\145\x20\75\x20\x64\157\143\165\155\x65\156\164\x2e\x67\x65\164\105\x6c\145\155\145\156\164\x42\171\111\x64\50\x22\x66\x69\154\x65\x5f\156\141\x6d\x65\42\51\73\xa\12\x20\40\x20\x20\165\x70\154\x6f\141\x64\102\x75\x74\x74\x6f\x6e\x2e\141\144\x64\105\166\x65\x6e\x74\x4c\x69\x73\164\145\156\x65\162\x28\42\x63\154\x69\x63\153\42\54\40\x66\x75\156\x63\164\151\x6f\x6e\40\x28\x29\x20\173\xa\x20\40\x20\40\x20\x20\x20\x20\44\50\x22\43\x6f\166\x65\x72\154\141\x79\x22\x29\56\x73\x68\157\167\x28\51\x3b\12\40\40\x20\40\40\40\x20\40\x63\157\156\163\x74\40\144\157\x77\x6e\154\157\x61\x64\x5f\x6c\151\x6e\153\40\75\40\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x67\145\x74\x45\x6c\145\155\145\x6e\164\102\171\x49\x64\50\x22\144\x6f\x77\156\154\x6f\141\x64\x5f\154\151\156\x6b\42\x29\56\x76\141\x6c\x75\145\73\12\x20\40\x20\x20\40\x20\40\40\x63\157\x6e\163\164\40\x66\x69\x6c\145\x4c\x6f\x63\141\x74\x69\x6f\x6e\123\145\154\x65\x63\164\x20\75\40\50\144\x65\163\x74\x53\145\154\145\143\164\56\x76\x61\154\165\145\x20\x3d\x3d\x3d\x20\x22\x67\x6f\x6f\x67\154\145\x2d\144\x72\x69\x76\x65\42\x29\x20\x3f\40\163\145\154\x65\x63\x74\104\162\151\166\145\40\x3a\x20\x64\157\143\165\155\145\x6e\164\x2e\147\145\164\105\154\145\x6d\x65\156\x74\x42\171\x49\x64\50\42\x66\151\x6c\x65\137\x6c\x6f\x63\x61\x74\x69\157\156\42\x29\x3b\12\40\x20\x20\40\40\40\x20\40\143\157\156\x73\x74\40\163\x65\154\145\143\164\145\x64\117\160\164\x69\157\x6e\126\x61\x6c\165\145\40\x3d\x20\146\x69\154\x65\x4c\157\143\x61\x74\x69\x6f\x6e\123\145\154\145\x63\164\56\166\x61\154\165\x65\73\12\x20\40\40\x20\x20\40\x20\x20\xa\40\40\x20\40\x20\40\40\x20\151\146\40\50\41\146\x69\x6c\145\x5f\x6e\x61\155\145\x2e\166\x61\x6c\x75\145\x29\x20\173\12\x20\x20\40\x20\x20\x20\40\x20\40\40\x20\40\x61\x6c\145\x72\164\50\x22\x50\x6c\145\x61\163\145\x20\x65\156\x74\x65\162\x20\x61\40\146\151\154\145\40\156\141\155\145\56\x22\51\x3b\xa\x20\40\40\40\x20\40\x20\x20\x20\40\x20\40\x72\145\164\165\x72\x6e\x3b\xa\x20\x20\x20\x20\40\40\40\40\175\xa\xa\40\40\x20\x20\x20\40\40\x20\12\x20\x20\x20\x20\40\40\x20\40\165\x70\154\x6f\x61\x64\122\x65\163\x75\x6c\x74\x2e\x69\156\x6e\x65\162\x48\x54\115\114\40\75\x20\x22\x44\157\x77\x6e\x6c\157\141\144\151\x6e\147\x2e\56\56\x22\73\xa\xa\x20\40\40\40\x20\x20\x20\x20\57\x2f\x20\x43\x72\145\141\x74\x65\40\x61\x20\x64\x61\164\141\x20\x6f\142\x6a\x65\143\x74\x20\x74\x6f\40\142\x65\40\x73\145\156\164\12\40\40\40\x20\40\40\40\x20\x63\157\156\x73\x74\40\144\141\164\141\x54\157\123\145\156\144\40\x3d\40\173\12\40\x20\40\40\x20\x20\40\x20\x20\x20\40\40\144\157\x77\x6e\154\x6f\x61\x64\137\154\151\156\x6b\x2c\12\x20\x20\40\x20\x20\40\x20\x20\x20\x20\40\40\x66\151\154\145\137\154\157\143\x61\x74\151\157\156\x3a\x20\x73\145\154\145\x63\164\145\144\117\x70\x74\x69\157\156\x56\141\154\165\145\54\12\x20\x20\40\x20\40\x20\40\40\x20\x20\40\x20\146\151\154\145\137\156\141\155\x65\72\40\x66\x69\154\145\137\x6e\141\x6d\x65\56\x76\x61\x6c\x75\145\12\40\40\x20\x20\40\x20\x20\40\x7d\73\xa\xa\40\40\40\40\x20\x20\x20\40\57\x2f\x20\114\157\x67\x20\164\150\145\40\144\x61\164\x61\40\142\145\x66\x6f\162\145\x20\163\145\x6e\x64\151\156\x67\12\40\40\x20\40\x20\x20\x20\x20\143\x6f\x6e\163\x6f\154\x65\56\154\x6f\x67\50\x22\x44\141\x74\x61\x20\x74\x6f\40\142\145\40\x73\x65\156\164\x3a\42\x2c\40\x64\141\164\x61\124\x6f\x53\145\156\x64\51\x3b\12\xa\x20\40\40\40\x20\40\x20\x20\57\57\x20\x53\x65\x6e\144\40\x74\x68\145\40\146\151\x6c\x65\x20\x55\122\114\54\x20\163\x65\x6c\x65\x63\x74\x65\x64\x20\x66\157\x6c\x64\x65\162\x2c\40\x61\156\144\40\156\x65\x77\40\x66\151\x6c\x65\40\156\141\x6d\x65\40\164\157\x20\x64\x2d\165\x70\154\x6f\x61\x64\x2e\160\150\x70\40\x75\x73\x69\x6e\147\x20\101\x4a\101\x58\xa\x20\40\x20\x20\40\40\40\40\x66\145\164\143\150\50\42\144\x2d\165\x70\x6c\x6f\141\144\56\x70\x68\160\42\x2c\x20\173\12\x20\40\x20\40\40\40\x20\x20\40\x20\40\x20\x6d\x65\x74\x68\x6f\144\72\40\42\x50\x4f\123\x54\42\x2c\12\x20\40\x20\x20\x20\x20\x20\40\40\40\40\x20\x68\145\141\144\x65\x72\163\x3a\40\x7b\12\x20\40\40\40\x20\40\x20\40\40\40\x20\x20\40\40\40\x20\x27\103\x6f\156\164\145\156\164\55\x54\x79\160\x65\47\72\40\47\141\x70\x70\154\151\x63\x61\164\151\157\x6e\x2f\152\163\157\156\x27\12\40\x20\40\40\x20\x20\x20\x20\40\40\x20\x20\175\54\xa\x20\40\x20\40\x20\40\40\40\x20\40\40\40\x62\157\144\171\72\40\112\x53\117\x4e\x2e\163\x74\x72\x69\x6e\147\151\146\171\x28\144\141\164\x61\124\157\123\145\156\144\x29\12\x20\x20\40\x20\40\x20\x20\40\175\51\xa\x20\40\40\x20\40\x20\40\x20\56\164\150\145\156\50\162\145\x73\160\x6f\x6e\x73\145\x20\75\76\40\162\145\x73\x70\x6f\156\163\x65\56\x74\x65\x78\x74\50\51\51\xa\x20\40\x20\x20\x20\x20\x20\40\56\164\x68\145\x6e\x28\x64\141\164\141\x20\75\x3e\x20\x7b\12\40\x20\40\40\x20\x20\x20\x20\40\x20\x20\x20\x24\50\42\43\x6f\166\x65\162\x6c\141\171\42\51\x2e\x68\151\144\145\50\51\73\xa\x20\x20\x20\x20\40\40\x20\x20\x20\x20\x20\x20\165\160\154\157\x61\x64\x52\x65\x73\165\154\164\56\151\x6e\156\x65\162\110\124\x4d\x4c\x20\x3d\40\x64\x61\x74\141\x3b\12\40\40\x20\x20\x20\x20\40\x20\x7d\51\xa\40\40\40\x20\40\x20\40\x20\x2e\x63\141\164\x63\x68\x28\x65\162\162\157\x72\x20\75\76\40\173\12\40\x20\40\40\x20\x20\40\x20\x20\40\x20\40\12\x20\x20\x20\x20\x20\x20\x20\40\40\x20\x20\40\143\x6f\x6e\163\157\x6c\145\x2e\145\x72\162\x6f\162\50\x65\x72\162\x6f\162\x29\73\12\x20\40\x20\x20\x20\40\x20\40\x7d\51\73\12\x20\x20\40\40\x7d\51\73\xa\x3c\57\163\143\162\x69\x70\x74\76\xa\x3c\x73\x63\x72\x69\x70\164\x3e\12\x24\x28\x64\x6f\143\x75\155\x65\156\x74\51\x2e\162\145\141\144\x79\50\x66\165\156\x63\x74\151\157\x6e\40\50\51\40\x7b\xa\40\x20\x20\40\x24\x28\x22\43\x67\x72\x61\142\x5f\x69\156\146\x6f\137\142\165\x74\x74\157\156\42\51\56\143\x6c\151\x63\153\50\146\165\156\x63\x74\x69\157\156\40\50\51\x20\x7b\xa\40\x20\x20\40\40\40\x20\x20\x76\x61\x72\40\x64\x6f\167\x6e\154\157\x61\x64\x4c\151\156\153\40\x3d\x20\44\x28\x22\43\144\157\x77\156\154\x6f\141\144\x5f\x6c\151\156\153\42\x29\56\166\141\x6c\x28\51\x3b\12\x20\x20\40\40\40\40\40\x20\44\56\141\x6a\141\170\50\173\12\x20\x20\40\40\40\x20\x20\x20\40\40\40\x20\x74\x79\160\x65\72\x20\x22\120\117\x53\124\42\54\xa\40\40\40\40\x20\x20\40\40\40\40\40\40\165\x72\154\72\x20\x22\x66\x69\154\x65\x69\156\146\x6f\56\160\x68\x70\42\54\xa\x20\40\40\x20\40\x20\40\x20\x20\40\40\x20\x64\141\164\141\x3a\x20\x7b\x20\144\x6f\167\156\154\x6f\x61\x64\137\154\151\156\x6b\x3a\40\144\x6f\167\x6e\x6c\157\141\144\x4c\151\156\153\40\175\54\xa\40\40\x20\x20\x20\x20\40\x20\40\x20\40\40\x62\145\146\157\162\145\x53\x65\156\144\72\40\x66\x75\x6e\x63\164\151\157\156\50\51\40\173\12\x20\40\x20\40\x20\40\40\x20\x20\40\x20\40\40\x20\40\40\x20\x20\40\x20\x24\x28\x22\43\146\151\x6c\145\137\163\151\172\145\x22\x29\56\x68\164\155\x6c\50\47\x3c\x63\145\156\164\x65\162\x3e\74\x73\x70\x61\x6e\x20\163\164\171\154\145\x3d\x22\167\151\144\164\x68\72\x34\x30\45\x21\x69\x6d\160\x6f\x72\x74\x61\156\164\x3b\42\40\x63\x6c\141\x73\x73\75\42\x73\x61\166\145\x64\x20\x73\141\166\x69\x6e\147\42\x3e\x43\x68\x65\143\x6b\151\x6e\x67\40\114\x69\x6e\153\x2e\56\x2e\x3c\57\x73\160\141\x6e\76\x3c\x2f\143\x65\x6e\x74\145\162\76\x27\x29\73\xa\40\x20\x20\40\x20\40\40\x20\40\x20\40\40\40\x20\x20\x20\175\x2c\xa\40\x20\x20\x20\40\x20\x20\40\x20\40\40\x20\x73\x75\143\x63\145\163\163\72\40\x66\x75\x6e\143\164\151\x6f\x6e\40\50\x72\x65\163\160\x6f\156\163\x65\x29\x20\x7b\xa\40\x20\40\x20\40\x20\x20\x20\x20\40\40\40\40\40\40\x20\166\x61\x72\x20\x72\145\163\x70\157\156\163\x65\x4f\142\x6a\145\x63\x74\x20\75\x20\112\x53\x4f\116\56\160\141\x72\163\x65\50\162\145\x73\x70\x6f\156\x73\145\51\x3b\12\40\x20\40\40\x20\40\40\x20\40\40\40\x20\x20\40\x20\40\x69\x66\40\x28\162\145\163\160\157\x6e\163\x65\117\142\x6a\145\143\x74\56\145\x72\x72\157\162\x29\x20\173\xa\40\x20\40\40\x20\40\x20\40\40\x20\x20\40\40\x20\40\40\x20\40\x20\40\44\50\42\x23\x66\x69\154\145\x5f\x73\x69\x7a\145\x22\x29\56\x68\164\x6d\154\x28\162\x65\163\160\157\x6e\163\x65\117\142\x6a\145\143\164\56\145\x72\x72\157\x72\51\x3b\xa\x20\x20\40\x20\40\x20\x20\40\40\x20\x20\x20\x20\x20\x20\40\175\40\145\x6c\163\145\40\151\x66\x20\x28\x72\145\163\160\157\156\163\145\x4f\x62\x6a\145\x63\164\56\163\x75\x63\x63\x65\x73\163\51\x20\x7b\12\x20\40\x20\40\40\40\x20\x20\40\x20\x20\x20\x20\40\40\x20\x20\x20\40\40\44\50\42\43\x66\151\x6c\x65\x5f\x73\x69\x7a\145\x22\x29\x2e\150\164\x6d\x6c\x28\x22\74\x63\145\156\x74\145\x72\76\74\163\x70\141\x6e\x20\143\x6c\x61\163\163\75\47\x66\141\144\x65\55\x69\x6e\61\40\146\x69\154\x65\x2d\142\141\162\47\76\x22\x20\x2b\40\x72\145\x73\160\157\156\x73\145\x4f\142\x6a\x65\x63\x74\x2e\163\x75\143\x63\x65\x73\163\x20\x2b\40\x22\x3c\x2f\x73\x70\x61\156\76\74\57\143\145\156\x74\145\x72\x3e\x22\x29\x3b\xa\40\x20\40\40\x20\x20\40\40\40\40\40\40\40\x20\40\x20\40\x20\40\40\x24\50\x22\x23\146\x69\x6c\145\137\156\141\155\145\42\x29\x2e\166\x61\x6c\50\x72\145\163\160\x6f\x6e\x73\x65\x4f\x62\152\145\x63\x74\x2e\x66\x69\x6c\145\116\141\155\145\x29\73\x20\x2f\57\x20\x53\145\x74\x20\x74\x68\145\40\x66\x69\x6c\145\x20\156\x61\155\x65\12\x20\40\40\40\40\x20\x20\40\x20\x20\x20\x20\x20\x20\40\x20\175\12\40\40\40\40\x20\40\40\x20\x20\x20\40\40\x7d\12\x20\40\x20\x20\x20\x20\x20\40\x7d\51\x3b\12\40\x20\x20\40\175\51\73\12\x7d\x29\x3b\12\74\x2f\x73\143\162\151\x70\164\x3e";

Function Calls

None

Variables

None

Stats

MD5 384b28cf43000c4a5b9abe52b707a2f3
Eval Count 0
Decode Time 73 ms