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 @eval("?>".base64_decode("PD9waHANCiAgcmVxdWlyZV9vbmNlKCdhc3NldHMvcGhwL25veFRvcC5waH..

Decoded Output download

?>b'<?php
  require_once(\'assets/php/noxTop.php\');
  require_once(\'segAut.php\');

  $arqVersion = 1.2;

  $cGeral->dbConnect();

  // Imagens: noxcity.com/imgallstar
?>


<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=0,minimal-ui">
    <title><?php echo $cfg[\'title\']; ?></title>
    <meta content="Admin Dashboard" name="description">
    <meta content="Themesbrand" name="author">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">


    <?php require_once(\'assets/php/noxStyle.php\'); ?>

    <style>
    .alertify-logs {
      z-index: 99999;
    }

    .map{
      width: 100%;
    }

    .map-250{
    		width:100%;
    		height:250px;
     }

     .map-400{
     		width:100%;
     		height:400px;
      }

      .map-500{
      		width:100%;
      		height:500px;
       }

       .map-700{
       		width:100%;
       		height:700px;
        }

    table:not(.tableQuebra){
      white-space: nowrap;
    }

    .myDivIcon path {
      stroke: black;
      stroke-width: 30px;
    }

    .myDivIcon{
      font-size: 10px;
      color: #0000FF;
      font-weight: bold;
      border-width: 3;
      text-shadow: 1px 0px 0px #FFF,
      -1px 0px 0px #FFF,
      0px 1px 0px #FFF,
      0px -1px 0px #FFF;
      /*
      background: -webkit-linear-gradient(#9c47fc, #356ad2);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;*/

    }


    .select2-dropdown {
      z-index: 99999999;
    }


}
    </style>
</head>

<body>
  <!--a href="#" class=\'birdFloat\'></a-->
    <!-- Loader -->
    <div id="preloader">
        <div id="status">
            <!--div class="spinner"></div-->
            <img src=".http://34.95.225.179/painel/assets/images/loadingC.gif?v=" height="100">
        </div>
    </div>
    <div class="header-bg fixed-top">
        <!-- Navigation Bar-->
        <header id="topnav">
            <div class="topbar-main">
                <div class="container-fluid">
                    <!-- Logo-->
                    <div class="d-block d-lg-none mr-5">
                        <a href="#" class="logo"><img src="http://34.95.225.179/painel/assets/images/logoshop2.png" alt="" height="50" class="logo-small"></a>
                    </div>
                    <!-- End Logo-->
                    <div class="menu-extras topbar-custom navbar p-0">

                        <!-- Search input -->
                        <!--div class="search-wrap" id="search-wrap">
                            <div class="search-bar">
                                <input class="search-input" type="search" placeholder="Search"> <a href="#" class="close-search toggle-search" data-target="#search-wrap"><i class="mdi mdi-close-circle"></i></a></div>
                        </div-->
                        <ul class="list-inline ml-auto mb-0">

                            <!--li class="list-inline-item dropdown notification-list"><a class="nav-link waves-effect toggle-search" href="#" data-target="#search-wrap"><i class="mdi mdi-magnify noti-icon"></i></a></li>
                            <li class="list-inline-item dropdown notification-list"><a class="nav-link dropdown-toggle arrow-none waves-effect" data-toggle="dropdown" href="#" role="button" aria-haspopup="false" aria-expanded="false"><i class="mdi mdi-bell-outline noti-icon"></i> <span class="badge badge-pill noti-icon-badge">3</span></a>
                                <div class="dropdown-menu dropdown-menu-right dropdown-menu-animated dropdown-arrow dropdown-menu-lg">

                                    <div class="dropdown-item noti-title">
                                        <h5>Notificao (3)</h5></div>
                                    <div class="slimscroll-noti">

                                        <a href="javascript:void(0);" class="dropdown-item notify-item active">
                                            <div class="notify-icon bg-success"><i class="mdi mdi-cart-outline"></i></div>
                                            <p class="notify-details"><b>Your order is placed</b><span class="text-muted">Dummy text of the printing and typesetting industry.</span></p>
                                        </a>

                                        <a href="javascript:void(0);" class="dropdown-item notify-item">
                                            <div class="notify-icon bg-danger"><i class="mdi mdi-message-text-outline"></i></div>
                                            <p class="notify-details"><b>New Message received</b><span class="text-muted">You have 87 unread messages</span></p>
                                        </a>

                                        <a href="javascript:void(0);" class="dropdown-item notify-item">
                                            <div class="notify-icon bg-info"><i class="mdi mdi-filter-outline"></i></div>
                                            <p class="notify-details"><b>Your item is shipped</b><span class="text-muted">It is a long established fact that a reader will</span></p>
                                        </a>

                                        <a href="javascript:void(0);" class="dropdown-item notify-item">
                                            <div class="notify-icon bg-success"><i class="mdi mdi-message-text-outline"></i></div>
                                            <p class="notify-details"><b>New Message received</b><span class="text-muted">You have 87 unread messages</span></p>
                                        </a>

                                        <a href="javascript:void(0);" class="dropdown-item notify-item">
                                            <div class="notify-icon bg-warning"><i class="mdi mdi-cart-outline"></i></div>
                                            <p class="notify-details"><b>Your order is placed</b><span class="text-muted">Dummy text of the printing and typesetting industry.</span></p>
                                        </a>
                                    </div>
                                    <a href="javascript:void(0);" class="dropdown-item notify-all">View All</a></div>
                            </li-->
                            <!-- User-->
                            <li class="list-inline-item dropdown notification-list">
                                <a class="nav-link dropdown-toggle arrow-none waves-effect nav-user" data-toggle="dropdown" href="#" role="button" aria-haspopup="false" aria-expanded="false">
                                  <!--img src="assets/images/users/avatar-6.jpg" alt="user" class="rounded-circle"-->
                                  <span class="d-none d-md-inline-block ml-1"><?php echo $usuario; ?> <i class="fas fa-chevron-down"></i></span></a>
                                <div class="dropdown-menu dropdown-menu-right dropdown-menu-animated profile-dropdown">
                                  <!--a class="dropdown-item" href="#" onclick="alteraSenha()"><i class="fas fa-unlock text-muted"></i> Alterar Senha</a-->
                                  <!--a class="dropdown-item" href="lockScreen.php"><i class="fas fa-lock text-muted"></i> Tela de Bloqueio</a-->
                                <div class="dropdown-divider"></div>
                                <a class="dropdown-item" href="sair.php"><i class="fas fa-sign-out-alt text-muted"></i> Sair</a>
                              </div>
                            </li>
                            <li class="menu-item list-inline-item">
                                <!-- Mobile menu toggle-->
                                <a class="navbar-toggle nav-link">
                                    <div class="lines"><span></span> <span></span> <span></span></div>
                                </a>
                                <!-- End mobile menu toggle-->
                            </li>
                        </ul>
                    </div>
                    <!-- end menu-extras -->
                    <div class="clearfix"></div>
                </div>
                <!-- end container -->
            </div>
            <!-- end topbar-main -->
            <!-- MENU Start -->
            <div class="navbar-custom">
                <div class="container-fluid">
                    <!-- Logo-->
                    <div class="d-none d-lg-block">
                        <!-- Text Logo
                            <a href="index.html" class="logo">
                                Foxia
                            </a>
                             -->
                        <!-- Image Logo --><a href="#" class="logo"><!-- <img src="assets/images/logo-sm.png" alt="" height="22" class="logo-small"> --> <img src="http://34.95.225.179/painel/assets/images/logoshop2.png" alt="" height="50" class="logo-large"></a></div>
                    <!-- End Logo-->
                    <div id="navigation">
                        <!-- Navigation Menu-->
                        <?php require_once(\'menu.php\'); ?>
                        <!-- End navigation menu -->
                    </div>
                    <!-- end #navigation -->
                </div>
                <!-- end container -->
            </div>
            <!-- end navbar-custom -->
        </header>
        <!-- End Navigation Bar-->
<div class="container-fluid"><!-- Page-Title -->
  <div class="row">
    <div class="col-sm-12">
      <div class="page-title-box" style="height: 10px;">
        <div class="row align-items-center" style="margin-top: -22px; padding-left: 20px;" id="detalhePagina"></div>
    </div>
  </div>
</div>
</div>

    </div>
    <div class="wrapper" style="padding-top: 140px; padding-bottom: 100px">
      <div id="conteudoPagina">

      </div>
        <!-- end container -->
    </div>


    <div class="modal fade" id="modalDetalhes" role="dialog" aria-labelledby="myLargeModalLabel" aria-hidden="true" data-backdrop="static" data-keyboard="false">
        <div class="modal-dialog modal-lg">
            <div class="modal-content">
                <div class="modal-header">
                    <h5 class="modal-title mt-0" id="modalDetalhesTitulo"></h5>
                    <button type="button" class="close" data-dismiss="modal" aria-hidden="true"></button>
                </div>
                <div class="modal-body">
                    <div id="modalDetalhesConteudo"></div>
                </div>
            </div>
            <!-- /.modal-content -->
        </div>
        <!-- /.modal-dialog -->
    </div>

    <div class="modal fade" id="modalDetalhesXl" role="dialog" aria-labelledby="myLargeModalLabel" aria-hidden="true" data-backdrop="static" data-keyboard="false">
        <div class="modal-dialog modal-xl">
            <div class="modal-content">
                <div class="modal-header">
                    <h5 class="modal-title mt-0" id="modalDetalhesTituloXl"></h5>
                    <button type="button" class="close" data-dismiss="modal" aria-hidden="true"></button>
                </div>
                <div class="modal-body" style="height: 700px; overflow-y: auto;">
                    <div id="modalDetalhesConteudoXl"></div>
                </div>
            </div>
            <!-- /.modal-content -->
        </div>
        <!-- /.modal-dialog -->
    </div>

    <!-- end wrapper -->
    <!-- Footer -->
    <footer class="footer">
        <div class="container-fluid">
            <div class="row">
                <div class="col-12"> 2022 PARADISE City RJ - Registrado Jonas T.</div>
            </div>
        </div>
    </footer>
    <!-- End Footer -->

<?php require_once(\'assets/php/noxBottom.php\'); ?>


    <script>
    $.fn.modal.Constructor.prototype._enforceFocus = function() {};

      function maxlength(){
        !function(a){"use strict";var n=function(){};n.prototype.init=function(){a("input.labelMaxLength").maxlength({alwaysShow:!0,/*placement:"top-left",*/warningClass:"badge badge-info",limitReachedClass:"badge badge-warning"}),a("textarea.labelMaxLength").maxlength({alwaysShow:!0,warningClass:"badge badge-info",limitReachedClass:"badge badge-warning"})},a.AdvancedForm=new n,a.AdvancedForm.Constructor=n}(window.jQuery),function(a){"use strict";window.jQuery.AdvancedForm.init()}();
      }


      function maxLengthCheck(object) {
          if (object.value.length > object.maxLength)
            object.value = object.value.slice(0, object.maxLength)
        }

      function tituloDetalhePagina(titulo){
        $(\'#detalhePagina\').html(titulo);
      }



      var load;
      function openPage(link){
        if(load != undefined){
          load.abort();
        }

        $(\'#conteudoPagina\').html(\'<center><img src="assets/images/loadingC.gif"></center>\');
         load = $.ajax({
            url: link,
            success: function(data) {
              $("#conteudoPagina").html(data);
            }
          });

      /*  $(\'#conteudoPagina\').html(\'<center><img src="assets/images/loadingC.gif"></center>\');
        load = $(\'#conteudoPagina\').load(link);*/
      }


      function fecharModal(){
        $(\'#modalDetalhes\').modal(\'hide\');
        $(\'#modalDetalhesXl\').modal(\'hide\');
      }



      function pageSemAcesso(){
        $(\'#modalDetalhes\').modal(\'hide\');
        $(\'#modalDetalhesXl\').modal(\'hide\');
        tituloDetalhePagina(\'\');
        openPage(\'semAcesso.php\');
      }





  $(document).ready(function () {
    openPage(\'dashBoard.php\');
});

var x,y,top,left,down;

  function dataTableScroll(){
    $(".dataTables_scrollBody").mousedown(function(e){
        e.preventDefault();
        down=true;
        x=e.pageX;
        y=e.pageY;
        top=$(this).scrollTop();
        left=$(this).scrollLeft();
    });

    $(".dataTables_scrollBody").mousemove(function(e){
        if(down){
            var newX=e.pageX;
            var newY=e.pageY;

            //console.log(y+", "+newY+", "+top+", "+(top+(newY-y)));
            $(".dataTables_scrollBody").scrollTop(top-newY+y);
            $(".dataTables_scrollBody").scrollLeft(left-newX+x);
        }
    });

    $("body").mouseup(function(e){down=false;});
  }




  function openPortaMala(id, veiculo){
    $("#modalDetalhesConteudo").html(\'<center><img src="assets/images/loadingM.gif" width="50" height="50" alt="" /></center>\');
    $("#modalDetalhesTitulo").html(\'Porta Malas: \'+veiculo);
    //$(\'#modalDetalhes\').modal(\'show\');

    $.ajax({
      type: "GET",
      url: "veiculoPortaMalas.php?id="+id+"&veic="+veiculo,
      success: function(html){
        $("#modalDetalhesConteudo").html(html);
      }
    });
  }


  function openBauCasa(id){
    $("#modalDetalhesConteudo").html(\'<center><img src="assets/images/loadingM.gif" width="50" height="50" alt="" /></center>\');
    $("#modalDetalhesTitulo").html(\'Bau da casa: \'+id);
    //$(\'#modalDetalhes\').modal(\'show\');

    $.ajax({
      type: "GET",
      url: "casaBau.php?id="+id,
      success: function(html){
        $("#modalDetalhesConteudo").html(html);
      }
    });
  }


  function openEquipado(id){
    $("#modalDetalhesConteudo").html(\'<center><img src="assets/images/loadingM.gif" width="50" height="50" alt="" /></center>\');
    $("#modalDetalhesTitulo").html(\'Equipado: \'+id);
    //$(\'#modalDetalhes\').modal(\'show\');

    $.ajax({
      type: "GET",
      url: "usuarioEquipado.php?id="+id,
      success: function(html){
        $("#modalDetalhesConteudo").html(html);
      }
    });
  }


  function openMochila(id){
    $("#modalDetalhesConteudo").html(\'<center><img src="assets/images/loadingM.gif" width="50" height="50" alt="" /></center>\');
    $("#modalDetalhesTitulo").html(\'Mochila: \'+id);
    //$(\'#modalDetalhes\').modal(\'show\');

    $.ajax({
      type: "GET",
      url: "usuarioMochila.php?id="+id,
      success: function(html){
        $("#modalDetalhesConteudo").html(html);
      }
    });
  }




  function setBan(id){
    $("#modalDetalhesConteudo").html(\'<center><img src="assets/images/loadingM.gif" width="50" height="50" alt="" /></center>\');
    $("#modalDetalhesTitulo").html(\'Ban/UnBan \'+id);
    $(\'#modalDetalhes\').modal(\'show\');

    $.ajax({
      type: "GET",
      url: "usuario_ban.php?id="+id,
      success: function(html){
        $("#modalDetalhesConteudo").html(html);
      }
    });
  }

  function setWl(id){
    $("#modalDetalhesConteudo").html(\'<center><img src="assets/images/loadingM.gif" width="50" height="50" alt="" /></center>\');
    $("#modalDetalhesTitulo").html(\'Wl/UnWl \'+id);
    $(\'#modalDetalhes\').modal(\'show\');

    $.ajax({
      type: "GET",
      url: "usuario_wl.php?id="+id,
      success: function(html){
        $("#modalDetalhesConteudo").html(html);
      }
    });
  }


  function userEdit(id, wh){
    $("#modalDetalhesConteudo").html(\'<center><img src="assets/images/loadingM.gif" width="50" height="50" alt="" /></center>\');
    $("#modalDetalhesTitulo").html(\'Editar Usuario \'+id);
    $(\'#modalDetalhes\').modal(\'show\');

    $.ajax({
      type: "GET",
      url: "usuario_edit.php?id="+id+"&wh="+wh,
      success: function(html){
        $("#modalDetalhesConteudo").html(html);
      }
    });
  }

    </script>
</body>

</html>
'

Did this file decode correctly?

Original Code

<?php @eval("?>".base64_decode("PD9waHANCiAgcmVxdWlyZV9vbmNlKCdhc3NldHMvcGhwL25veFRvcC5waHAnKTsNCiAgcmVxdWlyZV9vbmNlKCdzZWdBdXQucGhwJyk7DQoNCiAgJGFycVZlcnNpb24gPSAxLjI7DQoNCiAgJGNHZXJhbC0+ZGJDb25uZWN0KCk7DQoNCiAgLy8gSW1hZ2Vuczogbm94Y2l0eS5jb20vaW1nYWxsc3Rhcg0KPz4NCg0KDQo8IURPQ1RZUEUgaHRtbD4NCjxodG1sIGxhbmc9ImVuIj4NCg0KPGhlYWQ+DQogICAgPG1ldGEgY2hhcnNldD0idXRmLTgiPg0KICAgIDxtZXRhIGh0dHAtZXF1aXY9IlgtVUEtQ29tcGF0aWJsZSIgY29udGVudD0iSUU9ZWRnZSI+DQogICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCxpbml0aWFsLXNjYWxlPTEsdXNlci1zY2FsYWJsZT0wLG1pbmltYWwtdWkiPg0KICAgIDx0aXRsZT48P3BocCBlY2hvICRjZmdbJ3RpdGxlJ107ID8+PC90aXRsZT4NCiAgICA8bWV0YSBjb250ZW50PSJBZG1pbiBEYXNoYm9hcmQiIG5hbWU9ImRlc2NyaXB0aW9uIj4NCiAgICA8bWV0YSBjb250ZW50PSJUaGVtZXNicmFuZCIgbmFtZT0iYXV0aG9yIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiPg0KDQoNCiAgICA8P3BocCByZXF1aXJlX29uY2UoJ2Fzc2V0cy9waHAvbm94U3R5bGUucGhwJyk7ID8+DQoNCiAgICA8c3R5bGU+DQogICAgLmFsZXJ0aWZ5LWxvZ3Mgew0KICAgICAgei1pbmRleDogOTk5OTk7DQogICAgfQ0KDQogICAgLm1hcHsNCiAgICAgIHdpZHRoOiAxMDAlOw0KICAgIH0NCg0KICAgIC5tYXAtMjUwew0KICAgIAkJd2lkdGg6MTAwJTsNCiAgICAJCWhlaWdodDoyNTBweDsNCiAgICAgfQ0KDQogICAgIC5tYXAtNDAwew0KICAgICAJCXdpZHRoOjEwMCU7DQogICAgIAkJaGVpZ2h0OjQwMHB4Ow0KICAgICAgfQ0KDQogICAgICAubWFwLTUwMHsNCiAgICAgIAkJd2lkdGg6MTAwJTsNCiAgICAgIAkJaGVpZ2h0OjUwMHB4Ow0KICAgICAgIH0NCg0KICAgICAgIC5tYXAtNzAwew0KICAgICAgIAkJd2lkdGg6MTAwJTsNCiAgICAgICAJCWhlaWdodDo3MDBweDsNCiAgICAgICAgfQ0KDQogICAgdGFibGU6bm90KC50YWJsZVF1ZWJyYSl7DQogICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOw0KICAgIH0NCg0KICAgIC5teURpdkljb24gcGF0aCB7DQogICAgICBzdHJva2U6IGJsYWNrOw0KICAgICAgc3Ryb2tlLXdpZHRoOiAzMHB4Ow0KICAgIH0NCg0KICAgIC5teURpdkljb257DQogICAgICBmb250LXNpemU6IDEwcHg7DQogICAgICBjb2xvcjogIzAwMDBGRjsNCiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOw0KICAgICAgYm9yZGVyLXdpZHRoOiAzOw0KICAgICAgdGV4dC1zaGFkb3c6IDFweCAwcHggMHB4ICNGRkYsDQogICAgICAtMXB4IDBweCAwcHggI0ZGRiwNCiAgICAgIDBweCAxcHggMHB4ICNGRkYsDQogICAgICAwcHggLTFweCAwcHggI0ZGRjsNCiAgICAgIC8qDQogICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgjOWM0N2ZjLCAjMzU2YWQyKTsNCiAgICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0Ow0KICAgICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50OyovDQoNCiAgICB9DQoNCg0KICAgIC5zZWxlY3QyLWRyb3Bkb3duIHsNCiAgICAgIHotaW5kZXg6IDk5OTk5OTk5Ow0KICAgIH0NCg0KDQp9DQogICAgPC9zdHlsZT4NCjwvaGVhZD4NCg0KPGJvZHk+DQogIDwhLS1hIGhyZWY9IiMiIGNsYXNzPSdiaXJkRmxvYXQnPjwvYS0tPg0KICAgIDwhLS0gTG9hZGVyIC0tPg0KICAgIDxkaXYgaWQ9InByZWxvYWRlciI+DQogICAgICAgIDxkaXYgaWQ9InN0YXR1cyI+DQogICAgICAgICAgICA8IS0tZGl2IGNsYXNzPSJzcGlubmVyIj48L2Rpdi0tPg0KICAgICAgICAgICAgPGltZyBzcmM9Ii5odHRwOi8vMzQuOTUuMjI1LjE3OS9wYWluZWwvYXNzZXRzL2ltYWdlcy9sb2FkaW5nQy5naWY/dj0iIGhlaWdodD0iMTAwIj4NCiAgICAgICAgPC9kaXY+DQogICAgPC9kaXY+DQogICAgPGRpdiBjbGFzcz0iaGVhZGVyLWJnIGZpeGVkLXRvcCI+DQogICAgICAgIDwhLS0gTmF2aWdhdGlvbiBCYXItLT4NCiAgICAgICAgPGhlYWRlciBpZD0idG9wbmF2Ij4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRvcGJhci1tYWluIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXItZmx1aWQiPg0KICAgICAgICAgICAgICAgICAgICA8IS0tIExvZ28tLT4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZC1ibG9jayBkLWxnLW5vbmUgbXItNSI+DQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0ibG9nbyI+PGltZyBzcmM9Imh0dHA6Ly8zNC45NS4yMjUuMTc5L3BhaW5lbC9hc3NldHMvaW1hZ2VzL2xvZ29zaG9wMi5wbmciIGFsdD0iIiBoZWlnaHQ9IjUwIiBjbGFzcz0ibG9nby1zbWFsbCI+PC9hPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPCEtLSBFbmQgTG9nby0tPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZW51LWV4dHJhcyB0b3BiYXItY3VzdG9tIG5hdmJhciBwLTAiPg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFNlYXJjaCBpbnB1dCAtLT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS1kaXYgY2xhc3M9InNlYXJjaC13cmFwIiBpZD0ic2VhcmNoLXdyYXAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNlYXJjaC1iYXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgY2xhc3M9InNlYXJjaC1pbnB1dCIgdHlwZT0ic2VhcmNoIiBwbGFjZWhvbGRlcj0iU2VhcmNoIj4gPGEgaHJlZj0iIyIgY2xhc3M9ImNsb3NlLXNlYXJjaCB0b2dnbGUtc2VhcmNoIiBkYXRhLXRhcmdldD0iI3NlYXJjaC13cmFwIj48aSBjbGFzcz0ibWRpIG1kaS1jbG9zZS1jaXJjbGUiPjwvaT48L2E+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdi0tPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJsaXN0LWlubGluZSBtbC1hdXRvIG1iLTAiPg0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLWxpIGNsYXNzPSJsaXN0LWlubGluZS1pdGVtIGRyb3Bkb3duIG5vdGlmaWNhdGlvbi1saXN0Ij48YSBjbGFzcz0ibmF2LWxpbmsgd2F2ZXMtZWZmZWN0IHRvZ2dsZS1zZWFyY2giIGhyZWY9IiMiIGRhdGEtdGFyZ2V0PSIjc2VhcmNoLXdyYXAiPjxpIGNsYXNzPSJtZGkgbWRpLW1hZ25pZnkgbm90aS1pY29uIj48L2k+PC9hPjwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJsaXN0LWlubGluZS1pdGVtIGRyb3Bkb3duIG5vdGlmaWNhdGlvbi1saXN0Ij48YSBjbGFzcz0ibmF2LWxpbmsgZHJvcGRvd24tdG9nZ2xlIGFycm93LW5vbmUgd2F2ZXMtZWZmZWN0IiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iIGhyZWY9IiMiIHJvbGU9ImJ1dHRvbiIgYXJpYS1oYXNwb3B1cD0iZmFsc2UiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIj48aSBjbGFzcz0ibWRpIG1kaS1iZWxsLW91dGxpbmUgbm90aS1pY29uIj48L2k+IDxzcGFuIGNsYXNzPSJiYWRnZSBiYWRnZS1waWxsIG5vdGktaWNvbi1iYWRnZSI+Mzwvc3Bhbj48L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRyb3Bkb3duLW1lbnUgZHJvcGRvd24tbWVudS1yaWdodCBkcm9wZG93bi1tZW51LWFuaW1hdGVkIGRyb3Bkb3duLWFycm93IGRyb3Bkb3duLW1lbnUtbGciPg0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJkcm9wZG93bi1pdGVtIG5vdGktdGl0bGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNT5Ob3RpZmljYcOnw6NvICgzKTwvaDU+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzbGltc2Nyb2xsLW5vdGkiPg0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iamF2YXNjcmlwdDp2b2lkKDApOyIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0gbm90aWZ5LWl0ZW0gYWN0aXZlIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibm90aWZ5LWljb24gYmctc3VjY2VzcyI+PGkgY2xhc3M9Im1kaSBtZGktY2FydC1vdXRsaW5lIj48L2k+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJub3RpZnktZGV0YWlscyI+PGI+WW91ciBvcmRlciBpcyBwbGFjZWQ8L2I+PHNwYW4gY2xhc3M9InRleHQtbXV0ZWQiPkR1bW15IHRleHQgb2YgdGhlIHByaW50aW5nIGFuZCB0eXBlc2V0dGluZyBpbmR1c3RyeS48L3NwYW4+PC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9ImphdmFzY3JpcHQ6dm9pZCgwKTsiIGNsYXNzPSJkcm9wZG93bi1pdGVtIG5vdGlmeS1pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibm90aWZ5LWljb24gYmctZGFuZ2VyIj48aSBjbGFzcz0ibWRpIG1kaS1tZXNzYWdlLXRleHQtb3V0bGluZSI+PC9pPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0ibm90aWZ5LWRldGFpbHMiPjxiPk5ldyBNZXNzYWdlIHJlY2VpdmVkPC9iPjxzcGFuIGNsYXNzPSJ0ZXh0LW11dGVkIj5Zb3UgaGF2ZSA4NyB1bnJlYWQgbWVzc2FnZXM8L3NwYW4+PC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9ImphdmFzY3JpcHQ6dm9pZCgwKTsiIGNsYXNzPSJkcm9wZG93bi1pdGVtIG5vdGlmeS1pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibm90aWZ5LWljb24gYmctaW5mbyI+PGkgY2xhc3M9Im1kaSBtZGktZmlsdGVyLW91dGxpbmUiPjwvaT48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9Im5vdGlmeS1kZXRhaWxzIj48Yj5Zb3VyIGl0ZW0gaXMgc2hpcHBlZDwvYj48c3BhbiBjbGFzcz0idGV4dC1tdXRlZCI+SXQgaXMgYSBsb25nIGVzdGFibGlzaGVkIGZhY3QgdGhhdCBhIHJlYWRlciB3aWxsPC9zcGFuPjwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJqYXZhc2NyaXB0OnZvaWQoMCk7IiBjbGFzcz0iZHJvcGRvd24taXRlbSBub3RpZnktaXRlbSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im5vdGlmeS1pY29uIGJnLXN1Y2Nlc3MiPjxpIGNsYXNzPSJtZGkgbWRpLW1lc3NhZ2UtdGV4dC1vdXRsaW5lIj48L2k+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJub3RpZnktZGV0YWlscyI+PGI+TmV3IE1lc3NhZ2UgcmVjZWl2ZWQ8L2I+PHNwYW4gY2xhc3M9InRleHQtbXV0ZWQiPllvdSBoYXZlIDg3IHVucmVhZCBtZXNzYWdlczwvc3Bhbj48L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iamF2YXNjcmlwdDp2b2lkKDApOyIgY2xhc3M9ImRyb3Bkb3duLWl0ZW0gbm90aWZ5LWl0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJub3RpZnktaWNvbiBiZy13YXJuaW5nIj48aSBjbGFzcz0ibWRpIG1kaS1jYXJ0LW91dGxpbmUiPjwvaT48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9Im5vdGlmeS1kZXRhaWxzIj48Yj5Zb3VyIG9yZGVyIGlzIHBsYWNlZDwvYj48c3BhbiBjbGFzcz0idGV4dC1tdXRlZCI+RHVtbXkgdGV4dCBvZiB0aGUgcHJpbnRpbmcgYW5kIHR5cGVzZXR0aW5nIGluZHVzdHJ5Ljwvc3Bhbj48L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJqYXZhc2NyaXB0OnZvaWQoMCk7IiBjbGFzcz0iZHJvcGRvd24taXRlbSBub3RpZnktYWxsIj5WaWV3IEFsbDwvYT48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpLS0+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBVc2VyLS0+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJsaXN0LWlubGluZS1pdGVtIGRyb3Bkb3duIG5vdGlmaWNhdGlvbi1saXN0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9Im5hdi1saW5rIGRyb3Bkb3duLXRvZ2dsZSBhcnJvdy1ub25lIHdhdmVzLWVmZmVjdCBuYXYtdXNlciIgZGF0YS10b2dnbGU9ImRyb3Bkb3duIiBocmVmPSIjIiByb2xlPSJidXR0b24iIGFyaWEtaGFzcG9wdXA9ImZhbHNlIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLWltZyBzcmM9ImFzc2V0cy9pbWFnZXMvdXNlcnMvYXZhdGFyLTYuanBnIiBhbHQ9InVzZXIiIGNsYXNzPSJyb3VuZGVkLWNpcmNsZSItLT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZC1ub25lIGQtbWQtaW5saW5lLWJsb2NrIG1sLTEiPjw/cGhwIGVjaG8gJHVzdWFyaW87ID8+IDxpIGNsYXNzPSJmYXMgZmEtY2hldnJvbi1kb3duIj48L2k+PC9zcGFuPjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZHJvcGRvd24tbWVudSBkcm9wZG93bi1tZW51LXJpZ2h0IGRyb3Bkb3duLW1lbnUtYW5pbWF0ZWQgcHJvZmlsZS1kcm9wZG93biI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLWEgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iIGhyZWY9IiMiIG9uY2xpY2s9ImFsdGVyYVNlbmhhKCkiPjxpIGNsYXNzPSJmYXMgZmEtdW5sb2NrIHRleHQtbXV0ZWQiPjwvaT4gQWx0ZXJhciBTZW5oYTwvYS0tPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS1hIGNsYXNzPSJkcm9wZG93bi1pdGVtIiBocmVmPSJsb2NrU2NyZWVuLnBocCI+PGkgY2xhc3M9ImZhcyBmYS1sb2NrIHRleHQtbXV0ZWQiPjwvaT4gVGVsYSBkZSBCbG9xdWVpbzwvYS0tPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJkcm9wZG93bi1kaXZpZGVyIj48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iIGhyZWY9InNhaXIucGhwIj48aSBjbGFzcz0iZmFzIGZhLXNpZ24tb3V0LWFsdCB0ZXh0LW11dGVkIj48L2k+IFNhaXI8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibWVudS1pdGVtIGxpc3QtaW5saW5lLWl0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIE1vYmlsZSBtZW51IHRvZ2dsZS0tPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0ibmF2YmFyLXRvZ2dsZSBuYXYtbGluayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsaW5lcyI+PHNwYW4+PC9zcGFuPiA8c3Bhbj48L3NwYW4+IDxzcGFuPjwvc3Bhbj48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIEVuZCBtb2JpbGUgbWVudSB0b2dnbGUtLT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDwhLS0gZW5kIG1lbnUtZXh0cmFzIC0tPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjbGVhcmZpeCI+PC9kaXY+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPCEtLSBlbmQgY29udGFpbmVyIC0tPg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8IS0tIGVuZCB0b3BiYXItbWFpbiAtLT4NCiAgICAgICAgICAgIDwhLS0gTUVOVSBTdGFydCAtLT4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im5hdmJhci1jdXN0b20iPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lci1mbHVpZCI+DQogICAgICAgICAgICAgICAgICAgIDwhLS0gTG9nby0tPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJkLW5vbmUgZC1sZy1ibG9jayI+DQogICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFRleHQgTG9nbw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9ImluZGV4Lmh0bWwiIGNsYXNzPSJsb2dvIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRm94aWENCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0tPg0KICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBJbWFnZSBMb2dvIC0tPjxhIGhyZWY9IiMiIGNsYXNzPSJsb2dvIj48IS0tIDxpbWcgc3JjPSJhc3NldHMvaW1hZ2VzL2xvZ28tc20ucG5nIiBhbHQ9IiIgaGVpZ2h0PSIyMiIgY2xhc3M9ImxvZ28tc21hbGwiPiAtLT4gPGltZyBzcmM9Imh0dHA6Ly8zNC45NS4yMjUuMTc5L3BhaW5lbC9hc3NldHMvaW1hZ2VzL2xvZ29zaG9wMi5wbmciIGFsdD0iIiBoZWlnaHQ9IjUwIiBjbGFzcz0ibG9nby1sYXJnZSI+PC9hPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8IS0tIEVuZCBMb2dvLS0+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9Im5hdmlnYXRpb24iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBOYXZpZ2F0aW9uIE1lbnUtLT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDw/cGhwIHJlcXVpcmVfb25jZSgnbWVudS5waHAnKTsgPz4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gRW5kIG5hdmlnYXRpb24gbWVudSAtLT4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDwhLS0gZW5kICNuYXZpZ2F0aW9uIC0tPg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwhLS0gZW5kIGNvbnRhaW5lciAtLT4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPCEtLSBlbmQgbmF2YmFyLWN1c3RvbSAtLT4NCiAgICAgICAgPC9oZWFkZXI+DQogICAgICAgIDwhLS0gRW5kIE5hdmlnYXRpb24gQmFyLS0+DQo8ZGl2IGNsYXNzPSJjb250YWluZXItZmx1aWQiPjwhLS0gUGFnZS1UaXRsZSAtLT4NCiAgPGRpdiBjbGFzcz0icm93Ij4NCiAgICA8ZGl2IGNsYXNzPSJjb2wtc20tMTIiPg0KICAgICAgPGRpdiBjbGFzcz0icGFnZS10aXRsZS1ib3giIHN0eWxlPSJoZWlnaHQ6IDEwcHg7Ij4NCiAgICAgICAgPGRpdiBjbGFzcz0icm93IGFsaWduLWl0ZW1zLWNlbnRlciIgc3R5bGU9Im1hcmdpbi10b3A6IC0yMnB4OyBwYWRkaW5nLWxlZnQ6IDIwcHg7IiBpZD0iZGV0YWxoZVBhZ2luYSI+PC9kaXY+DQogICAgPC9kaXY+DQogIDwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCg0KICAgIDwvZGl2Pg0KICAgIDxkaXYgY2xhc3M9IndyYXBwZXIiIHN0eWxlPSJwYWRkaW5nLXRvcDogMTQwcHg7IHBhZGRpbmctYm90dG9tOiAxMDBweCI+DQogICAgICA8ZGl2IGlkPSJjb250ZXVkb1BhZ2luYSI+DQoNCiAgICAgIDwvZGl2Pg0KICAgICAgICA8IS0tIGVuZCBjb250YWluZXIgLS0+DQogICAgPC9kaXY+DQoNCg0KICAgIDxkaXYgY2xhc3M9Im1vZGFsIGZhZGUiIGlkPSJtb2RhbERldGFsaGVzIiByb2xlPSJkaWFsb2ciIGFyaWEtbGFiZWxsZWRieT0ibXlMYXJnZU1vZGFsTGFiZWwiIGFyaWEtaGlkZGVuPSJ0cnVlIiBkYXRhLWJhY2tkcm9wPSJzdGF0aWMiIGRhdGEta2V5Ym9hcmQ9ImZhbHNlIj4NCiAgICAgICAgPGRpdiBjbGFzcz0ibW9kYWwtZGlhbG9nIG1vZGFsLWxnIj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1vZGFsLWNvbnRlbnQiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1vZGFsLWhlYWRlciI+DQogICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz0ibW9kYWwtdGl0bGUgbXQtMCIgaWQ9Im1vZGFsRGV0YWxoZXNUaXR1bG8iPjwvaDU+DQogICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iY2xvc2UiIGRhdGEtZGlzbWlzcz0ibW9kYWwiIGFyaWEtaGlkZGVuPSJ0cnVlIj7DlzwvYnV0dG9uPg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1vZGFsLWJvZHkiPg0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJtb2RhbERldGFsaGVzQ29udGV1ZG8iPjwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8IS0tIC8ubW9kYWwtY29udGVudCAtLT4NCiAgICAgICAgPC9kaXY+DQogICAgICAgIDwhLS0gLy5tb2RhbC1kaWFsb2cgLS0+DQogICAgPC9kaXY+DQoNCiAgICA8ZGl2IGNsYXNzPSJtb2RhbCBmYWRlIiBpZD0ibW9kYWxEZXRhbGhlc1hsIiByb2xlPSJkaWFsb2ciIGFyaWEtbGFiZWxsZWRieT0ibXlMYXJnZU1vZGFsTGFiZWwiIGFyaWEtaGlkZGVuPSJ0cnVlIiBkYXRhLWJhY2tkcm9wPSJzdGF0aWMiIGRhdGEta2V5Ym9hcmQ9ImZhbHNlIj4NCiAgICAgICAgPGRpdiBjbGFzcz0ibW9kYWwtZGlhbG9nIG1vZGFsLXhsIj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1vZGFsLWNvbnRlbnQiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1vZGFsLWhlYWRlciI+DQogICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz0ibW9kYWwtdGl0bGUgbXQtMCIgaWQ9Im1vZGFsRGV0YWxoZXNUaXR1bG9YbCI+PC9oNT4NCiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJjbG9zZSIgZGF0YS1kaXNtaXNzPSJtb2RhbCIgYXJpYS1oaWRkZW49InRydWUiPsOXPC9idXR0b24+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibW9kYWwtYm9keSIgc3R5bGU9ImhlaWdodDogNzAwcHg7IG92ZXJmbG93LXk6IGF1dG87Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0ibW9kYWxEZXRhbGhlc0NvbnRldWRvWGwiPjwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8IS0tIC8ubW9kYWwtY29udGVudCAtLT4NCiAgICAgICAgPC9kaXY+DQogICAgICAgIDwhLS0gLy5tb2RhbC1kaWFsb2cgLS0+DQogICAgPC9kaXY+DQoNCiAgICA8IS0tIGVuZCB3cmFwcGVyIC0tPg0KICAgIDwhLS0gRm9vdGVyIC0tPg0KICAgIDxmb290ZXIgY2xhc3M9ImZvb3RlciI+DQogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lci1mbHVpZCI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC0xMiI+wqkgMjAyMiBQQVJBRElTRSBDaXR5IFJKIC0gUmVnaXN0cmFkbyBKb25hcyBULjwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KICAgIDwvZm9vdGVyPg0KICAgIDwhLS0gRW5kIEZvb3RlciAtLT4NCg0KPD9waHAgcmVxdWlyZV9vbmNlKCdhc3NldHMvcGhwL25veEJvdHRvbS5waHAnKTsgPz4NCg0KDQogICAgPHNjcmlwdD4NCiAgICAkLmZuLm1vZGFsLkNvbnN0cnVjdG9yLnByb3RvdHlwZS5fZW5mb3JjZUZvY3VzID0gZnVuY3Rpb24oKSB7fTsNCg0KICAgICAgZnVuY3Rpb24gbWF4bGVuZ3RoKCl7DQogICAgICAgICFmdW5jdGlvbihhKXsidXNlIHN0cmljdCI7dmFyIG49ZnVuY3Rpb24oKXt9O24ucHJvdG90eXBlLmluaXQ9ZnVuY3Rpb24oKXthKCJpbnB1dC5sYWJlbE1heExlbmd0aCIpLm1heGxlbmd0aCh7YWx3YXlzU2hvdzohMCwvKnBsYWNlbWVudDoidG9wLWxlZnQiLCovd2FybmluZ0NsYXNzOiJiYWRnZSBiYWRnZS1pbmZvIixsaW1pdFJlYWNoZWRDbGFzczoiYmFkZ2UgYmFkZ2Utd2FybmluZyJ9KSxhKCJ0ZXh0YXJlYS5sYWJlbE1heExlbmd0aCIpLm1heGxlbmd0aCh7YWx3YXlzU2hvdzohMCx3YXJuaW5nQ2xhc3M6ImJhZGdlIGJhZGdlLWluZm8iLGxpbWl0UmVhY2hlZENsYXNzOiJiYWRnZSBiYWRnZS13YXJuaW5nIn0pfSxhLkFkdmFuY2VkRm9ybT1uZXcgbixhLkFkdmFuY2VkRm9ybS5Db25zdHJ1Y3Rvcj1ufSh3aW5kb3cualF1ZXJ5KSxmdW5jdGlvbihhKXsidXNlIHN0cmljdCI7d2luZG93LmpRdWVyeS5BZHZhbmNlZEZvcm0uaW5pdCgpfSgpOw0KICAgICAgfQ0KDQoNCiAgICAgIGZ1bmN0aW9uIG1heExlbmd0aENoZWNrKG9iamVjdCkgew0KICAgICAgICAgIGlmIChvYmplY3QudmFsdWUubGVuZ3RoID4gb2JqZWN0Lm1heExlbmd0aCkNCiAgICAgICAgICAgIG9iamVjdC52YWx1ZSA9IG9iamVjdC52YWx1ZS5zbGljZSgwLCBvYmplY3QubWF4TGVuZ3RoKQ0KICAgICAgICB9DQoNCiAgICAgIGZ1bmN0aW9uIHRpdHVsb0RldGFsaGVQYWdpbmEodGl0dWxvKXsNCiAgICAgICAgJCgnI2RldGFsaGVQYWdpbmEnKS5odG1sKHRpdHVsbyk7DQogICAgICB9DQoNCg0KDQogICAgICB2YXIgbG9hZDsNCiAgICAgIGZ1bmN0aW9uIG9wZW5QYWdlKGxpbmspew0KICAgICAgICBpZihsb2FkICE9IHVuZGVmaW5lZCl7DQogICAgICAgICAgbG9hZC5hYm9ydCgpOw0KICAgICAgICB9DQoNCiAgICAgICAgJCgnI2NvbnRldWRvUGFnaW5hJykuaHRtbCgnPGNlbnRlcj48aW1nIHNyYz0iYXNzZXRzL2ltYWdlcy9sb2FkaW5nQy5naWYiPjwvY2VudGVyPicpOw0KICAgICAgICAgbG9hZCA9ICQuYWpheCh7DQogICAgICAgICAgICB1cmw6IGxpbmssDQogICAgICAgICAgICBzdWNjZXNzOiBmdW5jdGlvbihkYXRhKSB7DQogICAgICAgICAgICAgICQoIiNjb250ZXVkb1BhZ2luYSIpLmh0bWwoZGF0YSk7DQogICAgICAgICAgICB9DQogICAgICAgICAgfSk7DQoNCiAgICAgIC8qICAkKCcjY29udGV1ZG9QYWdpbmEnKS5odG1sKCc8Y2VudGVyPjxpbWcgc3JjPSJhc3NldHMvaW1hZ2VzL2xvYWRpbmdDLmdpZiI+PC9jZW50ZXI+Jyk7DQogICAgICAgIGxvYWQgPSAkKCcjY29udGV1ZG9QYWdpbmEnKS5sb2FkKGxpbmspOyovDQogICAgICB9DQoNCg0KICAgICAgZnVuY3Rpb24gZmVjaGFyTW9kYWwoKXsNCiAgICAgICAgJCgnI21vZGFsRGV0YWxoZXMnKS5tb2RhbCgnaGlkZScpOw0KICAgICAgICAkKCcjbW9kYWxEZXRhbGhlc1hsJykubW9kYWwoJ2hpZGUnKTsNCiAgICAgIH0NCg0KDQoNCiAgICAgIGZ1bmN0aW9uIHBhZ2VTZW1BY2Vzc28oKXsNCiAgICAgICAgJCgnI21vZGFsRGV0YWxoZXMnKS5tb2RhbCgnaGlkZScpOw0KICAgICAgICAkKCcjbW9kYWxEZXRhbGhlc1hsJykubW9kYWwoJ2hpZGUnKTsNCiAgICAgICAgdGl0dWxvRGV0YWxoZVBhZ2luYSgnJyk7DQogICAgICAgIG9wZW5QYWdlKCdzZW1BY2Vzc28ucGhwJyk7DQogICAgICB9DQoNCg0KDQoNCg0KICAkKGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbiAoKSB7DQogICAgb3BlblBhZ2UoJ2Rhc2hCb2FyZC5waHAnKTsNCn0pOw0KDQp2YXIgeCx5LHRvcCxsZWZ0LGRvd247DQoNCiAgZnVuY3Rpb24gZGF0YVRhYmxlU2Nyb2xsKCl7DQogICAgJCgiLmRhdGFUYWJsZXNfc2Nyb2xsQm9keSIpLm1vdXNlZG93bihmdW5jdGlvbihlKXsNCiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOw0KICAgICAgICBkb3duPXRydWU7DQogICAgICAgIHg9ZS5wYWdlWDsNCiAgICAgICAgeT1lLnBhZ2VZOw0KICAgICAgICB0b3A9JCh0aGlzKS5zY3JvbGxUb3AoKTsNCiAgICAgICAgbGVmdD0kKHRoaXMpLnNjcm9sbExlZnQoKTsNCiAgICB9KTsNCg0KICAgICQoIi5kYXRhVGFibGVzX3Njcm9sbEJvZHkiKS5tb3VzZW1vdmUoZnVuY3Rpb24oZSl7DQogICAgICAgIGlmKGRvd24pew0KICAgICAgICAgICAgdmFyIG5ld1g9ZS5wYWdlWDsNCiAgICAgICAgICAgIHZhciBuZXdZPWUucGFnZVk7DQoNCiAgICAgICAgICAgIC8vY29uc29sZS5sb2coeSsiLCAiK25ld1krIiwgIit0b3ArIiwgIisodG9wKyhuZXdZLXkpKSk7DQogICAgICAgICAgICAkKCIuZGF0YVRhYmxlc19zY3JvbGxCb2R5Iikuc2Nyb2xsVG9wKHRvcC1uZXdZK3kpOw0KICAgICAgICAgICAgJCgiLmRhdGFUYWJsZXNfc2Nyb2xsQm9keSIpLnNjcm9sbExlZnQobGVmdC1uZXdYK3gpOw0KICAgICAgICB9DQogICAgfSk7DQoNCiAgICAkKCJib2R5IikubW91c2V1cChmdW5jdGlvbihlKXtkb3duPWZhbHNlO30pOw0KICB9DQoNCg0KDQoNCiAgZnVuY3Rpb24gb3BlblBvcnRhTWFsYShpZCwgdmVpY3Vsbyl7DQogICAgJCgiI21vZGFsRGV0YWxoZXNDb250ZXVkbyIpLmh0bWwoJzxjZW50ZXI+PGltZyBzcmM9ImFzc2V0cy9pbWFnZXMvbG9hZGluZ00uZ2lmIiB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIGFsdD0iIiAvPjwvY2VudGVyPicpOw0KICAgICQoIiNtb2RhbERldGFsaGVzVGl0dWxvIikuaHRtbCgnUG9ydGEgTWFsYXM6ICcrdmVpY3Vsbyk7DQogICAgLy8kKCcjbW9kYWxEZXRhbGhlcycpLm1vZGFsKCdzaG93Jyk7DQoNCiAgICAkLmFqYXgoew0KICAgICAgdHlwZTogIkdFVCIsDQogICAgICB1cmw6ICJ2ZWljdWxvUG9ydGFNYWxhcy5waHA/aWQ9IitpZCsiJnZlaWM9Iit2ZWljdWxvLA0KICAgICAgc3VjY2VzczogZnVuY3Rpb24oaHRtbCl7DQogICAgICAgICQoIiNtb2RhbERldGFsaGVzQ29udGV1ZG8iKS5odG1sKGh0bWwpOw0KICAgICAgfQ0KICAgIH0pOw0KICB9DQoNCg0KICBmdW5jdGlvbiBvcGVuQmF1Q2FzYShpZCl7DQogICAgJCgiI21vZGFsRGV0YWxoZXNDb250ZXVkbyIpLmh0bWwoJzxjZW50ZXI+PGltZyBzcmM9ImFzc2V0cy9pbWFnZXMvbG9hZGluZ00uZ2lmIiB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIGFsdD0iIiAvPjwvY2VudGVyPicpOw0KICAgICQoIiNtb2RhbERldGFsaGVzVGl0dWxvIikuaHRtbCgnQmF1IGRhIGNhc2E6ICcraWQpOw0KICAgIC8vJCgnI21vZGFsRGV0YWxoZXMnKS5tb2RhbCgnc2hvdycpOw0KDQogICAgJC5hamF4KHsNCiAgICAgIHR5cGU6ICJHRVQiLA0KICAgICAgdXJsOiAiY2FzYUJhdS5waHA/aWQ9IitpZCwNCiAgICAgIHN1Y2Nlc3M6IGZ1bmN0aW9uKGh0bWwpew0KICAgICAgICAkKCIjbW9kYWxEZXRhbGhlc0NvbnRldWRvIikuaHRtbChodG1sKTsNCiAgICAgIH0NCiAgICB9KTsNCiAgfQ0KDQoNCiAgZnVuY3Rpb24gb3BlbkVxdWlwYWRvKGlkKXsNCiAgICAkKCIjbW9kYWxEZXRhbGhlc0NvbnRldWRvIikuaHRtbCgnPGNlbnRlcj48aW1nIHNyYz0iYXNzZXRzL2ltYWdlcy9sb2FkaW5nTS5naWYiIHdpZHRoPSI1MCIgaGVpZ2h0PSI1MCIgYWx0PSIiIC8+PC9jZW50ZXI+Jyk7DQogICAgJCgiI21vZGFsRGV0YWxoZXNUaXR1bG8iKS5odG1sKCdFcXVpcGFkbzogJytpZCk7DQogICAgLy8kKCcjbW9kYWxEZXRhbGhlcycpLm1vZGFsKCdzaG93Jyk7DQoNCiAgICAkLmFqYXgoew0KICAgICAgdHlwZTogIkdFVCIsDQogICAgICB1cmw6ICJ1c3VhcmlvRXF1aXBhZG8ucGhwP2lkPSIraWQsDQogICAgICBzdWNjZXNzOiBmdW5jdGlvbihodG1sKXsNCiAgICAgICAgJCgiI21vZGFsRGV0YWxoZXNDb250ZXVkbyIpLmh0bWwoaHRtbCk7DQogICAgICB9DQogICAgfSk7DQogIH0NCg0KDQogIGZ1bmN0aW9uIG9wZW5Nb2NoaWxhKGlkKXsNCiAgICAkKCIjbW9kYWxEZXRhbGhlc0NvbnRldWRvIikuaHRtbCgnPGNlbnRlcj48aW1nIHNyYz0iYXNzZXRzL2ltYWdlcy9sb2FkaW5nTS5naWYiIHdpZHRoPSI1MCIgaGVpZ2h0PSI1MCIgYWx0PSIiIC8+PC9jZW50ZXI+Jyk7DQogICAgJCgiI21vZGFsRGV0YWxoZXNUaXR1bG8iKS5odG1sKCdNb2NoaWxhOiAnK2lkKTsNCiAgICAvLyQoJyNtb2RhbERldGFsaGVzJykubW9kYWwoJ3Nob3cnKTsNCg0KICAgICQuYWpheCh7DQogICAgICB0eXBlOiAiR0VUIiwNCiAgICAgIHVybDogInVzdWFyaW9Nb2NoaWxhLnBocD9pZD0iK2lkLA0KICAgICAgc3VjY2VzczogZnVuY3Rpb24oaHRtbCl7DQogICAgICAgICQoIiNtb2RhbERldGFsaGVzQ29udGV1ZG8iKS5odG1sKGh0bWwpOw0KICAgICAgfQ0KICAgIH0pOw0KICB9DQoNCg0KDQoNCiAgZnVuY3Rpb24gc2V0QmFuKGlkKXsNCiAgICAkKCIjbW9kYWxEZXRhbGhlc0NvbnRldWRvIikuaHRtbCgnPGNlbnRlcj48aW1nIHNyYz0iYXNzZXRzL2ltYWdlcy9sb2FkaW5nTS5naWYiIHdpZHRoPSI1MCIgaGVpZ2h0PSI1MCIgYWx0PSIiIC8+PC9jZW50ZXI+Jyk7DQogICAgJCgiI21vZGFsRGV0YWxoZXNUaXR1bG8iKS5odG1sKCdCYW4vVW5CYW4gJytpZCk7DQogICAgJCgnI21vZGFsRGV0YWxoZXMnKS5tb2RhbCgnc2hvdycpOw0KDQogICAgJC5hamF4KHsNCiAgICAgIHR5cGU6ICJHRVQiLA0KICAgICAgdXJsOiAidXN1YXJpb19iYW4ucGhwP2lkPSIraWQsDQogICAgICBzdWNjZXNzOiBmdW5jdGlvbihodG1sKXsNCiAgICAgICAgJCgiI21vZGFsRGV0YWxoZXNDb250ZXVkbyIpLmh0bWwoaHRtbCk7DQogICAgICB9DQogICAgfSk7DQogIH0NCg0KICBmdW5jdGlvbiBzZXRXbChpZCl7DQogICAgJCgiI21vZGFsRGV0YWxoZXNDb250ZXVkbyIpLmh0bWwoJzxjZW50ZXI+PGltZyBzcmM9ImFzc2V0cy9pbWFnZXMvbG9hZGluZ00uZ2lmIiB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIGFsdD0iIiAvPjwvY2VudGVyPicpOw0KICAgICQoIiNtb2RhbERldGFsaGVzVGl0dWxvIikuaHRtbCgnV2wvVW5XbCAnK2lkKTsNCiAgICAkKCcjbW9kYWxEZXRhbGhlcycpLm1vZGFsKCdzaG93Jyk7DQoNCiAgICAkLmFqYXgoew0KICAgICAgdHlwZTogIkdFVCIsDQogICAgICB1cmw6ICJ1c3VhcmlvX3dsLnBocD9pZD0iK2lkLA0KICAgICAgc3VjY2VzczogZnVuY3Rpb24oaHRtbCl7DQogICAgICAgICQoIiNtb2RhbERldGFsaGVzQ29udGV1ZG8iKS5odG1sKGh0bWwpOw0KICAgICAgfQ0KICAgIH0pOw0KICB9DQoNCg0KICBmdW5jdGlvbiB1c2VyRWRpdChpZCwgd2gpew0KICAgICQoIiNtb2RhbERldGFsaGVzQ29udGV1ZG8iKS5odG1sKCc8Y2VudGVyPjxpbWcgc3JjPSJhc3NldHMvaW1hZ2VzL2xvYWRpbmdNLmdpZiIgd2lkdGg9IjUwIiBoZWlnaHQ9IjUwIiBhbHQ9IiIgLz48L2NlbnRlcj4nKTsNCiAgICAkKCIjbW9kYWxEZXRhbGhlc1RpdHVsbyIpLmh0bWwoJ0VkaXRhciBVc3VhcmlvICcraWQpOw0KICAgICQoJyNtb2RhbERldGFsaGVzJykubW9kYWwoJ3Nob3cnKTsNCg0KICAgICQuYWpheCh7DQogICAgICB0eXBlOiAiR0VUIiwNCiAgICAgIHVybDogInVzdWFyaW9fZWRpdC5waHA/aWQ9IitpZCsiJndoPSIrd2gsDQogICAgICBzdWNjZXNzOiBmdW5jdGlvbihodG1sKXsNCiAgICAgICAgJCgiI21vZGFsRGV0YWxoZXNDb250ZXVkbyIpLmh0bWwoaHRtbCk7DQogICAgICB9DQogICAgfSk7DQogIH0NCg0KICAgIDwvc2NyaXB0Pg0KPC9ib2R5Pg0KDQo8L2h0bWw+DQo="));//Generated by Ampare PHP Encoder. For more security please use php protect before encode the php program

Function Calls

base64_decode 1

Variables

None

Stats

MD5 64c1e007b45cfe423b872cab3335cd1f
Eval Count 1
Decode Time 64 ms