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("PGh0bWwgbGFuZz0iZnItZnIiPgoKPG1ldGEgYXV0aG9yPSJuZ2dnIj4KCj..

Decoded Output download

?>b'<html lang="fr-fr">

<meta author="nggg">

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<meta http-equiv="x-ua-compatible" content="IE=edge,chrome=1" />
<meta http-equiv="cleartype" content="on">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" />
<meta name="format-detection" content="telephone=yes" />
<meta name="mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="MobileOptimized" content="360" />
<meta name="HandheldFriendly" content="true" />

<div class=\'banner\'>
		<div id="parallxWrapper">
<div class="parallxBackground" data-bind="attr: { style:\'-webkit-transform:perspective(1000px) rotateY(\' + relativeMouse.x() + \'deg) rotateX(\' + relativeMouse.y() + \'deg);transform:perspective(1000px) rotateY(\' + relativeMouse.x() + \'deg) rotateX(\' + relativeMouse.y() + \'deg)\' }">
				<div class="parallxLayerLogo"></div>
				<div class="parallxLayerRStar"></div>
				<div class="parallxLayerShooter"></div>
			</div>
		</div>
	</div>
	<div class="container" style="margin-top:60px;">
		<div class="col-md-8">
			<center><h2>[FR/BE/QC] Beverly Hills RP </h2>
			<p class=\'lead\'>[FR/BE/QC] Beverly Hills RP | WhiteListe  -18 | RP Srieux | discord.gg/mGptbEZ</p></center>
		</div>
	</div>

	<section class="pen">
		<div class="stage">
			<div class="element michael"></div>
			<div class="element franklin"></div>
			<div class="element trevor"></div>
		</div>
	</section>
	<section class="credit">
		<p>Propulss par <a href="https://twitter.com/nuggan85" target="_blank" class="credit-link">NuggaN85</a>
	</section>


<style type="text/css">
		html { height:100%; }
		body {
			min-height: 100%;
			height: auto !important;
      margin:0px;
		}
		.banner {
			background-color:  black;
		}
		#parallxWrapper {
			margin:auto;
			height:540px;
			width:1000px;
		}
		.parallxBackground {
			height:100%;
			background-image:url("https://i.imgur.com/tx2ELHt.jpg");
			border-radius:10px;
			padding:10px;
			-webkit-transform-style: preserve-3d;
			transform-style: preserve-3d;
		}
		.parallxLayerLogo {
			width:300px;
			height:225px;
			margin-top:50px;
			margin-left:50px;
			background-image:url("https://i.imgur.com/9A9KbR8.png");
			position:absolute;
			-webkit-transform:translateZ(90px);
			-webkit-transition: all 0.2s;
			transform:translateZ(90px);
			transition: all 0.2s;
		}
		.parallxLayer:hover {
			-webkit-transform:scale(1.05);
			-webkit-transform:translateZ(30px);
			transform:scale(1.05);
			transform:translateZ(30px);
			cursor:pointer;
		}
		.parallxLayerRStar{
			width:100px;
			height:90px;
			margin-left:880px;
			margin-top:450px;
			float:right;
			background-image:url("https://i.imgur.com/Mh37eRt.png");
			position:absolute;
			-webkit-transform:translateZ(20px);
			transform:translateZ(20px);
		}
		.parallxLayerShooter{
			width:1000px;
			height:694px;
			float:right;
			background-image:url("https://i.imgur.com/YWCpfik.png");
			position:absolute;
			-webkit-transform:translateZ(50px);
			transform:translateZ(50px);
		}		
		.parallxLayerRStar:hover {
			-webkit-transform:scale(1.05);
			-webkit-transform:translateZ(30px);
			transform:scale(1.05);
			transform:translateZ(30px);
			cursor:pointer;
		}


h2, .h2 {
    font-size: 30px;
}
h1, h2, h3 {
    margin-bottom: 10px;
    margin-top: 20px;
}

.lead {
    font-weight: 200;
    line-height: 1.4;
    margin-bottom: 20px;
}

body {
    color: #333333;
    font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
}

.col-md-8 {
  min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
}

@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,600,700);

body {
  padding: 3em 2em;
  font-family: \'Open Sans\', Arial, sans-serif;
  font-size: 1em;
  margin: 0;
  padding: 0;
  line-height: 1;
  background: #ffffff;
}
.pen {
  max-width: 635px;
  width: 100%;
  margin: 50px auto 0;
  opacity: 0;
  position: relative;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -ms-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
  -webkit-animation: 1s appear 1 forwards;
  -moz-animation: 1s appear 1 forwards;
  -o-animation: 1s appear 1 forwards;
  animation: 1s appear 1 forwards;
}
.credit {
  display: block;
  max-width: 400px;
  text-align: center;
  margin: 150px auto 0;
  padding: 0;
  font-size: 0.8em;
  color: #666666;
  text-shadow: #666666;
}
.credit p a,
.credit a {
  color: #666666;
  text-decoration: none;
  font-weight: 700;
}
.credit p a:hover,
.credit a:hover,
.credit p a:active,
.credit a:active {
  text-shadow: 0 0 5px rgba(255, 255, 255, 0.4);
  color: #666666;
}
.credit p a.button,
.credit a.button {
  padding: 6px 12px;
  margin-top: 10px;
  background: #000000;
  border-radius: 3px;
}
.credit p a.button:hover,
.credit a.button:hover {
  background: #2b2b2b;
}
.credit p:last-of-type {
  margin-bottom: 30px;
}
.stage {
  max-width: 635px;
  width: 100%;
  height: 400px;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -ms-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
.element {
  background: green;
  width: 202px;
  -webkit-transform-origin: 50% 50%;
  height: inherit;
  margin: 0 7px 0 0;
  display: inline-block;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -ms-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.element.active {
  width: 282px;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -ms-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
.element.inactive {
  width: 162px;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -ms-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
  opacity: 0.4;
}
.element.franklin {
  background: url(\'http://www.eduardmayer.de/codepen-css-resources/images/gta/franklin.jpeg\') 45% 0 no-repeat;
  background-size: cover;
}
.element.michael {
  background: url(\'http://www.eduardmayer.de/codepen-css-resources/images/gta/michael.jpeg\') 45% 0 no-repeat;
  background-size: cover;
}
.element.trevor {
  background: url(\'http://www.eduardmayer.de/codepen-css-resources/images/gta/trevor.jpeg\') 45% 0 no-repeat;
  background-size: cover;
}
.element:last-of-type {
  margin: 0;
}
@media all and (min-width: 900px) {
  .pen {
    max-width: 890px;
  }
  .element {
    width: 286px;
  }
  .element.inactive {
    width: 246px;
  }
  .element.active {
    width: 366px;
  }
  .stage {
    max-width: 890px;
    height: 600px;
  }
}
@media all and (max-width: 660px) {
  .pen {
    max-width: 335px;
  }
  .element {
    width: 101px;
  }
  .element.inactive {
    width: 61px;
  }
  .element.active {
    width: 181px;
  }
  .stage {
    max-width: 335px;
  }
}
@-webkit-keyframes appear {
  15% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-moz-keyframes appear {
  15% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-o-keyframes appear {
  15% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes appear {
  15% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
</style>

<script data-cfasync="false">
var parallx = null;
var demoCount = 0;
		function Parallx() {
			var self = this;
			$("body").mousemove(function(e) {

					parallax.mouseX(e.pageX);
					parallax.mouseY(e.pageY);	

			});


			self.sensitivityMultiplier = ko.observable(0.03);
			self.wrapperOffset = $(\'#parallxWrapper\').offset();
			self.wrapperCenter = {
				x:ko.computed(function() { return self.wrapperOffset.left + ($(\'#parallxWrapper\').width()/2) }, this),
				y:ko.computed(function() { return self.wrapperOffset.top + ($(\'#parallxWrapper\').height()/2) }, this)
			};
			self.mouseX = ko.observable(0);
			self.mouseY = ko.observable(0);
			self.relativeMouse = { 
				x:ko.computed(function() { return (self.mouseX() - self.wrapperCenter.x()) * self.sensitivityMultiplier() }, this),
				y:ko.computed(function() { return ((self.mouseY() - self.wrapperCenter.y()) * -1) * self.sensitivityMultiplier()}, this) 
			};
			self.origin = {
				x:ko.computed(function() { return ((self.mouseX())/$( window ).width()) * 100 }, this),
				y:ko.computed(function() { return ((self.mouseY())/$( window ).height()) * 100 }, this) 
			};
		};

		$(document).ready(function() {
			parallax = new Parallx();
			ko.applyBindings(parallax);

			setInterval(function() {
				if(demoCount < 130){
					parallax.mouseX(parallax.mouseX() + 10);
					demoCount+=1;
				}
			}, 40);


		});
		
		    $(\'.element\').each(function() {
        $(this).mouseover(function() {
            $(this).addClass(\'active\');
          $(\'.stage\').children(\'.element\').not(\'.active\').addClass(\'inactive\');
        });
        $(this).mouseleave(function() {
            $(this).removeClass(\'active\');
            $(\'.stage\').children(\'.element\').not(\'.active\').removeClass(\'inactive\');
        });
    });
</script>
'

Did this file decode correctly?

Original Code

<?php @eval("?>".base64_decode("PGh0bWwgbGFuZz0iZnItZnIiPgoKPG1ldGEgYXV0aG9yPSJuZ2dnIj4KCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04IiAvPgoKPG1ldGEgaHR0cC1lcXVpdj0ieC11YS1jb21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlLGNocm9tZT0xIiAvPgo8bWV0YSBodHRwLWVxdWl2PSJjbGVhcnR5cGUiIGNvbnRlbnQ9Im9uIj4KPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjAsIG1heGltdW0tc2NhbGU9MS4wLCB1c2VyLXNjYWxhYmxlPTAiIC8+CjxtZXRhIG5hbWU9ImZvcm1hdC1kZXRlY3Rpb24iIGNvbnRlbnQ9InRlbGVwaG9uZT15ZXMiIC8+CjxtZXRhIG5hbWU9Im1vYmlsZS13ZWItYXBwLWNhcGFibGUiIGNvbnRlbnQ9InllcyIgLz4KPG1ldGEgbmFtZT0iYXBwbGUtbW9iaWxlLXdlYi1hcHAtY2FwYWJsZSIgY29udGVudD0ieWVzIiAvPgo8bWV0YSBuYW1lPSJNb2JpbGVPcHRpbWl6ZWQiIGNvbnRlbnQ9IjM2MCIgLz4KPG1ldGEgbmFtZT0iSGFuZGhlbGRGcmllbmRseSIgY29udGVudD0idHJ1ZSIgLz4KCjxkaXYgY2xhc3M9J2Jhbm5lcic+CgkJPGRpdiBpZD0icGFyYWxseFdyYXBwZXIiPgo8ZGl2IGNsYXNzPSJwYXJhbGx4QmFja2dyb3VuZCIgZGF0YS1iaW5kPSJhdHRyOiB7IHN0eWxlOictd2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoJyArIHJlbGF0aXZlTW91c2UueCgpICsgJ2RlZykgcm90YXRlWCgnICsgcmVsYXRpdmVNb3VzZS55KCkgKyAnZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKCcgKyByZWxhdGl2ZU1vdXNlLngoKSArICdkZWcpIHJvdGF0ZVgoJyArIHJlbGF0aXZlTW91c2UueSgpICsgJ2RlZyknIH0iPgoJCQkJPGRpdiBjbGFzcz0icGFyYWxseExheWVyTG9nbyI+PC9kaXY+CgkJCQk8ZGl2IGNsYXNzPSJwYXJhbGx4TGF5ZXJSU3RhciI+PC9kaXY+CgkJCQk8ZGl2IGNsYXNzPSJwYXJhbGx4TGF5ZXJTaG9vdGVyIj48L2Rpdj4KCQkJPC9kaXY+CgkJPC9kaXY+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9ImNvbnRhaW5lciIgc3R5bGU9Im1hcmdpbi10b3A6NjBweDsiPgoJCTxkaXYgY2xhc3M9ImNvbC1tZC04Ij4KCQkJPGNlbnRlcj48aDI+W0ZSL0JFL1FDXSBCZXZlcmx5IEhpbGxzIFJQIDwvaDI+CgkJCTxwIGNsYXNzPSdsZWFkJz5bRlIvQkUvUUNdIEJldmVybHkgSGlsbHMgUlAgfCBXaGl0ZUxpc3RlICAtMTggfCBSUCBTcmlldXggfCBkaXNjb3JkLmdnL21HcHRiRVo8L3A+PC9jZW50ZXI+CgkJPC9kaXY+Cgk8L2Rpdj4KCgk8c2VjdGlvbiBjbGFzcz0icGVuIj4KCQk8ZGl2IGNsYXNzPSJzdGFnZSI+CgkJCTxkaXYgY2xhc3M9ImVsZW1lbnQgbWljaGFlbCI+PC9kaXY+CgkJCTxkaXYgY2xhc3M9ImVsZW1lbnQgZnJhbmtsaW4iPjwvZGl2PgoJCQk8ZGl2IGNsYXNzPSJlbGVtZW50IHRyZXZvciI+PC9kaXY+CgkJPC9kaXY+Cgk8L3NlY3Rpb24+Cgk8c2VjdGlvbiBjbGFzcz0iY3JlZGl0Ij4KCQk8cD5Qcm9wdWxzcyBwYXIgPGEgaHJlZj0iaHR0cHM6Ly90d2l0dGVyLmNvbS9udWdnYW44NSIgdGFyZ2V0PSJfYmxhbmsiIGNsYXNzPSJjcmVkaXQtbGluayI+TnVnZ2FOODU8L2E+Cgk8L3NlY3Rpb24+CgoKPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCQlodG1sIHsgaGVpZ2h0OjEwMCU7IH0KCQlib2R5IHsKCQkJbWluLWhlaWdodDogMTAwJTsKCQkJaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7CiAgICAgIG1hcmdpbjowcHg7CgkJfQoJCS5iYW5uZXIgewoJCQliYWNrZ3JvdW5kLWNvbG9yOiAgYmxhY2s7CgkJfQoJCSNwYXJhbGx4V3JhcHBlciB7CgkJCW1hcmdpbjphdXRvOwoJCQloZWlnaHQ6NTQwcHg7CgkJCXdpZHRoOjEwMDBweDsKCQl9CgkJLnBhcmFsbHhCYWNrZ3JvdW5kIHsKCQkJaGVpZ2h0OjEwMCU7CgkJCWJhY2tncm91bmQtaW1hZ2U6dXJsKCJodHRwczovL2kuaW1ndXIuY29tL3R4MkVMSHQuanBnIik7CgkJCWJvcmRlci1yYWRpdXM6MTBweDsKCQkJcGFkZGluZzoxMHB4OwoJCQktd2Via2l0LXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7CgkJCXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7CgkJfQoJCS5wYXJhbGx4TGF5ZXJMb2dvIHsKCQkJd2lkdGg6MzAwcHg7CgkJCWhlaWdodDoyMjVweDsKCQkJbWFyZ2luLXRvcDo1MHB4OwoJCQltYXJnaW4tbGVmdDo1MHB4OwoJCQliYWNrZ3JvdW5kLWltYWdlOnVybCgiaHR0cHM6Ly9pLmltZ3VyLmNvbS85QTlLYlI4LnBuZyIpOwoJCQlwb3NpdGlvbjphYnNvbHV0ZTsKCQkJLXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWig5MHB4KTsKCQkJLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4yczsKCQkJdHJhbnNmb3JtOnRyYW5zbGF0ZVooOTBweCk7CgkJCXRyYW5zaXRpb246IGFsbCAwLjJzOwoJCX0KCQkucGFyYWxseExheWVyOmhvdmVyIHsKCQkJLXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMS4wNSk7CgkJCS13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMzBweCk7CgkJCXRyYW5zZm9ybTpzY2FsZSgxLjA1KTsKCQkJdHJhbnNmb3JtOnRyYW5zbGF0ZVooMzBweCk7CgkJCWN1cnNvcjpwb2ludGVyOwoJCX0KCQkucGFyYWxseExheWVyUlN0YXJ7CgkJCXdpZHRoOjEwMHB4OwoJCQloZWlnaHQ6OTBweDsKCQkJbWFyZ2luLWxlZnQ6ODgwcHg7CgkJCW1hcmdpbi10b3A6NDUwcHg7CgkJCWZsb2F0OnJpZ2h0OwoJCQliYWNrZ3JvdW5kLWltYWdlOnVybCgiaHR0cHM6Ly9pLmltZ3VyLmNvbS9NaDM3ZVJ0LnBuZyIpOwoJCQlwb3NpdGlvbjphYnNvbHV0ZTsKCQkJLXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigyMHB4KTsKCQkJdHJhbnNmb3JtOnRyYW5zbGF0ZVooMjBweCk7CgkJfQoJCS5wYXJhbGx4TGF5ZXJTaG9vdGVyewoJCQl3aWR0aDoxMDAwcHg7CgkJCWhlaWdodDo2OTRweDsKCQkJZmxvYXQ6cmlnaHQ7CgkJCWJhY2tncm91bmQtaW1hZ2U6dXJsKCJodHRwczovL2kuaW1ndXIuY29tL1lXQ3BmaWsucG5nIik7CgkJCXBvc2l0aW9uOmFic29sdXRlOwoJCQktd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDUwcHgpOwoJCQl0cmFuc2Zvcm06dHJhbnNsYXRlWig1MHB4KTsKCQl9CQkKCQkucGFyYWxseExheWVyUlN0YXI6aG92ZXIgewoJCQktd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxLjA1KTsKCQkJLXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigzMHB4KTsKCQkJdHJhbnNmb3JtOnNjYWxlKDEuMDUpOwoJCQl0cmFuc2Zvcm06dHJhbnNsYXRlWigzMHB4KTsKCQkJY3Vyc29yOnBvaW50ZXI7CgkJfQoKCmgyLCAuaDIgewogICAgZm9udC1zaXplOiAzMHB4Owp9CmgxLCBoMiwgaDMgewogICAgbWFyZ2luLWJvdHRvbTogMTBweDsKICAgIG1hcmdpbi10b3A6IDIwcHg7Cn0KCi5sZWFkIHsKICAgIGZvbnQtd2VpZ2h0OiAyMDA7CiAgICBsaW5lLWhlaWdodDogMS40OwogICAgbWFyZ2luLWJvdHRvbTogMjBweDsKfQoKYm9keSB7CiAgICBjb2xvcjogIzMzMzMzMzsKICAgIGZvbnQtZmFtaWx5OiAiSGVsdmV0aWNhIE5ldWUiLEhlbHZldGljYSxBcmlhbCxzYW5zLXNlcmlmOwp9CgouY29sLW1kLTggewogIG1pbi1oZWlnaHQ6IDFweDsKICAgIHBhZGRpbmctbGVmdDogMTVweDsKICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7Cn0KCkBpbXBvcnQgdXJsKGh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1PcGVuK1NhbnM6NDAwLDYwMCw3MDApOwoKYm9keSB7CiAgcGFkZGluZzogM2VtIDJlbTsKICBmb250LWZhbWlseTogJ09wZW4gU2FucycsIEFyaWFsLCBzYW5zLXNlcmlmOwogIGZvbnQtc2l6ZTogMWVtOwogIG1hcmdpbjogMDsKICBwYWRkaW5nOiAwOwogIGxpbmUtaGVpZ2h0OiAxOwogIGJhY2tncm91bmQ6ICNmZmZmZmY7Cn0KLnBlbiB7CiAgbWF4LXdpZHRoOiA2MzVweDsKICB3aWR0aDogMTAwJTsKICBtYXJnaW46IDUwcHggYXV0byAwOwogIG9wYWNpdHk6IDA7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0OwogIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0OwogIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbi1vdXQ7CiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0OwogIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLWluLW91dDsKICAtd2Via2l0LWFuaW1hdGlvbjogMXMgYXBwZWFyIDEgZm9yd2FyZHM7CiAgLW1vei1hbmltYXRpb246IDFzIGFwcGVhciAxIGZvcndhcmRzOwogIC1vLWFuaW1hdGlvbjogMXMgYXBwZWFyIDEgZm9yd2FyZHM7CiAgYW5pbWF0aW9uOiAxcyBhcHBlYXIgMSBmb3J3YXJkczsKfQouY3JlZGl0IHsKICBkaXNwbGF5OiBibG9jazsKICBtYXgtd2lkdGg6IDQwMHB4OwogIHRleHQtYWxpZ246IGNlbnRlcjsKICBtYXJnaW46IDE1MHB4IGF1dG8gMDsKICBwYWRkaW5nOiAwOwogIGZvbnQtc2l6ZTogMC44ZW07CiAgY29sb3I6ICM2NjY2NjY7CiAgdGV4dC1zaGFkb3c6ICM2NjY2NjY7Cn0KLmNyZWRpdCBwIGEsCi5jcmVkaXQgYSB7CiAgY29sb3I6ICM2NjY2NjY7CiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogIGZvbnQtd2VpZ2h0OiA3MDA7Cn0KLmNyZWRpdCBwIGE6aG92ZXIsCi5jcmVkaXQgYTpob3ZlciwKLmNyZWRpdCBwIGE6YWN0aXZlLAouY3JlZGl0IGE6YWN0aXZlIHsKICB0ZXh0LXNoYWRvdzogMCAwIDVweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCk7CiAgY29sb3I6ICM2NjY2NjY7Cn0KLmNyZWRpdCBwIGEuYnV0dG9uLAouY3JlZGl0IGEuYnV0dG9uIHsKICBwYWRkaW5nOiA2cHggMTJweDsKICBtYXJnaW4tdG9wOiAxMHB4OwogIGJhY2tncm91bmQ6ICMwMDAwMDA7CiAgYm9yZGVyLXJhZGl1czogM3B4Owp9Ci5jcmVkaXQgcCBhLmJ1dHRvbjpob3ZlciwKLmNyZWRpdCBhLmJ1dHRvbjpob3ZlciB7CiAgYmFja2dyb3VuZDogIzJiMmIyYjsKfQouY3JlZGl0IHA6bGFzdC1vZi10eXBlIHsKICBtYXJnaW4tYm90dG9tOiAzMHB4Owp9Ci5zdGFnZSB7CiAgbWF4LXdpZHRoOiA2MzVweDsKICB3aWR0aDogMTAwJTsKICBoZWlnaHQ6IDQwMHB4OwogIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0OwogIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0OwogIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbi1vdXQ7CiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0OwogIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLWluLW91dDsKfQouZWxlbWVudCB7CiAgYmFja2dyb3VuZDogZ3JlZW47CiAgd2lkdGg6IDIwMnB4OwogIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTsKICBoZWlnaHQ6IGluaGVyaXQ7CiAgbWFyZ2luOiAwIDdweCAwIDA7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0OwogIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0OwogIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbi1vdXQ7CiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0OwogIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLWluLW91dDsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOwogIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKfQouZWxlbWVudC5hY3RpdmUgewogIHdpZHRoOiAyODJweDsKICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLWluLW91dDsKICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLWluLW91dDsKICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0OwogIC1vLXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLWluLW91dDsKICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbi1vdXQ7Cn0KLmVsZW1lbnQuaW5hY3RpdmUgewogIHdpZHRoOiAxNjJweDsKICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLWluLW91dDsKICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLWluLW91dDsKICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0OwogIC1vLXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLWluLW91dDsKICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbi1vdXQ7CiAgb3BhY2l0eTogMC40Owp9Ci5lbGVtZW50LmZyYW5rbGluIHsKICBiYWNrZ3JvdW5kOiB1cmwoJ2h0dHA6Ly93d3cuZWR1YXJkbWF5ZXIuZGUvY29kZXBlbi1jc3MtcmVzb3VyY2VzL2ltYWdlcy9ndGEvZnJhbmtsaW4uanBlZycpIDQ1JSAwIG5vLXJlcGVhdDsKICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOwp9Ci5lbGVtZW50Lm1pY2hhZWwgewogIGJhY2tncm91bmQ6IHVybCgnaHR0cDovL3d3dy5lZHVhcmRtYXllci5kZS9jb2RlcGVuLWNzcy1yZXNvdXJjZXMvaW1hZ2VzL2d0YS9taWNoYWVsLmpwZWcnKSA0NSUgMCBuby1yZXBlYXQ7CiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsKfQouZWxlbWVudC50cmV2b3IgewogIGJhY2tncm91bmQ6IHVybCgnaHR0cDovL3d3dy5lZHVhcmRtYXllci5kZS9jb2RlcGVuLWNzcy1yZXNvdXJjZXMvaW1hZ2VzL2d0YS90cmV2b3IuanBlZycpIDQ1JSAwIG5vLXJlcGVhdDsKICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOwp9Ci5lbGVtZW50Omxhc3Qtb2YtdHlwZSB7CiAgbWFyZ2luOiAwOwp9CkBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDkwMHB4KSB7CiAgLnBlbiB7CiAgICBtYXgtd2lkdGg6IDg5MHB4OwogIH0KICAuZWxlbWVudCB7CiAgICB3aWR0aDogMjg2cHg7CiAgfQogIC5lbGVtZW50LmluYWN0aXZlIHsKICAgIHdpZHRoOiAyNDZweDsKICB9CiAgLmVsZW1lbnQuYWN0aXZlIHsKICAgIHdpZHRoOiAzNjZweDsKICB9CiAgLnN0YWdlIHsKICAgIG1heC13aWR0aDogODkwcHg7CiAgICBoZWlnaHQ6IDYwMHB4OwogIH0KfQpAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA2NjBweCkgewogIC5wZW4gewogICAgbWF4LXdpZHRoOiAzMzVweDsKICB9CiAgLmVsZW1lbnQgewogICAgd2lkdGg6IDEwMXB4OwogIH0KICAuZWxlbWVudC5pbmFjdGl2ZSB7CiAgICB3aWR0aDogNjFweDsKICB9CiAgLmVsZW1lbnQuYWN0aXZlIHsKICAgIHdpZHRoOiAxODFweDsKICB9CiAgLnN0YWdlIHsKICAgIG1heC13aWR0aDogMzM1cHg7CiAgfQp9CkAtd2Via2l0LWtleWZyYW1lcyBhcHBlYXIgewogIDE1JSB7CiAgICBvcGFjaXR5OiAwOwogIH0KICAxMDAlIHsKICAgIG9wYWNpdHk6IDE7CiAgfQp9CkAtbW96LWtleWZyYW1lcyBhcHBlYXIgewogIDE1JSB7CiAgICBvcGFjaXR5OiAwOwogIH0KICAxMDAlIHsKICAgIG9wYWNpdHk6IDE7CiAgfQp9CkAtby1rZXlmcmFtZXMgYXBwZWFyIHsKICAxNSUgewogICAgb3BhY2l0eTogMDsKICB9CiAgMTAwJSB7CiAgICBvcGFjaXR5OiAxOwogIH0KfQpAa2V5ZnJhbWVzIGFwcGVhciB7CiAgMTUlIHsKICAgIG9wYWNpdHk6IDA7CiAgfQogIDEwMCUgewogICAgb3BhY2l0eTogMTsKICB9Cn0KPC9zdHlsZT4KCjxzY3JpcHQgZGF0YS1jZmFzeW5jPSJmYWxzZSI+CnZhciBwYXJhbGx4ID0gbnVsbDsKdmFyIGRlbW9Db3VudCA9IDA7CgkJZnVuY3Rpb24gUGFyYWxseCgpIHsKCQkJdmFyIHNlbGYgPSB0aGlzOwoJCQkkKCJib2R5IikubW91c2Vtb3ZlKGZ1bmN0aW9uKGUpIHsKCgkJCQkJcGFyYWxsYXgubW91c2VYKGUucGFnZVgpOwoJCQkJCXBhcmFsbGF4Lm1vdXNlWShlLnBhZ2VZKTsJCgoJCQl9KTsKCgoJCQlzZWxmLnNlbnNpdGl2aXR5TXVsdGlwbGllciA9IGtvLm9ic2VydmFibGUoMC4wMyk7CgkJCXNlbGYud3JhcHBlck9mZnNldCA9ICQoJyNwYXJhbGx4V3JhcHBlcicpLm9mZnNldCgpOwoJCQlzZWxmLndyYXBwZXJDZW50ZXIgPSB7CgkJCQl4OmtvLmNvbXB1dGVkKGZ1bmN0aW9uKCkgeyByZXR1cm4gc2VsZi53cmFwcGVyT2Zmc2V0LmxlZnQgKyAoJCgnI3BhcmFsbHhXcmFwcGVyJykud2lkdGgoKS8yKSB9LCB0aGlzKSwKCQkJCXk6a28uY29tcHV0ZWQoZnVuY3Rpb24oKSB7IHJldHVybiBzZWxmLndyYXBwZXJPZmZzZXQudG9wICsgKCQoJyNwYXJhbGx4V3JhcHBlcicpLmhlaWdodCgpLzIpIH0sIHRoaXMpCgkJCX07CgkJCXNlbGYubW91c2VYID0ga28ub2JzZXJ2YWJsZSgwKTsKCQkJc2VsZi5tb3VzZVkgPSBrby5vYnNlcnZhYmxlKDApOwoJCQlzZWxmLnJlbGF0aXZlTW91c2UgPSB7IAoJCQkJeDprby5jb21wdXRlZChmdW5jdGlvbigpIHsgcmV0dXJuIChzZWxmLm1vdXNlWCgpIC0gc2VsZi53cmFwcGVyQ2VudGVyLngoKSkgKiBzZWxmLnNlbnNpdGl2aXR5TXVsdGlwbGllcigpIH0sIHRoaXMpLAoJCQkJeTprby5jb21wdXRlZChmdW5jdGlvbigpIHsgcmV0dXJuICgoc2VsZi5tb3VzZVkoKSAtIHNlbGYud3JhcHBlckNlbnRlci55KCkpICogLTEpICogc2VsZi5zZW5zaXRpdml0eU11bHRpcGxpZXIoKX0sIHRoaXMpIAoJCQl9OwoJCQlzZWxmLm9yaWdpbiA9IHsKCQkJCXg6a28uY29tcHV0ZWQoZnVuY3Rpb24oKSB7IHJldHVybiAoKHNlbGYubW91c2VYKCkpLyQoIHdpbmRvdyApLndpZHRoKCkpICogMTAwIH0sIHRoaXMpLAoJCQkJeTprby5jb21wdXRlZChmdW5jdGlvbigpIHsgcmV0dXJuICgoc2VsZi5tb3VzZVkoKSkvJCggd2luZG93ICkuaGVpZ2h0KCkpICogMTAwIH0sIHRoaXMpIAoJCQl9OwoJCX07CgoJCSQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCkgewoJCQlwYXJhbGxheCA9IG5ldyBQYXJhbGx4KCk7CgkJCWtvLmFwcGx5QmluZGluZ3MocGFyYWxsYXgpOwoKCQkJc2V0SW50ZXJ2YWwoZnVuY3Rpb24oKSB7CgkJCQlpZihkZW1vQ291bnQgPCAxMzApewoJCQkJCXBhcmFsbGF4Lm1vdXNlWChwYXJhbGxheC5tb3VzZVgoKSArIDEwKTsKCQkJCQlkZW1vQ291bnQrPTE7CgkJCQl9CgkJCX0sIDQwKTsKCgoJCX0pOwoJCQoJCSAgICAkKCcuZWxlbWVudCcpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgJCh0aGlzKS5tb3VzZW92ZXIoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICQodGhpcykuYWRkQ2xhc3MoJ2FjdGl2ZScpOwogICAgICAgICAgJCgnLnN0YWdlJykuY2hpbGRyZW4oJy5lbGVtZW50Jykubm90KCcuYWN0aXZlJykuYWRkQ2xhc3MoJ2luYWN0aXZlJyk7CiAgICAgICAgfSk7CiAgICAgICAgJCh0aGlzKS5tb3VzZWxlYXZlKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAkKHRoaXMpLnJlbW92ZUNsYXNzKCdhY3RpdmUnKTsKICAgICAgICAgICAgJCgnLnN0YWdlJykuY2hpbGRyZW4oJy5lbGVtZW50Jykubm90KCcuYWN0aXZlJykucmVtb3ZlQ2xhc3MoJ2luYWN0aXZlJyk7CiAgICAgICAgfSk7CiAgICB9KTsKPC9zY3JpcHQ+Cg=="));

Function Calls

base64_decode 1

Variables

None

Stats

MD5 2c7feb114459cdbc2a2de3889f6869e9
Eval Count 1
Decode Time 98 ms