dotEscape = $dotEscape; parent::__construct($charStream, $filter); } public function __sleep() { return ['charStream', 'filter', 'dotEscape']; } protected function getSafeMapShareId() { return static::class.($this->dotEscape ? '.dotEscape' : ''); } protected function initSafeMap() { parent::initSafeMap(); if ($this->dotEscape) { /* Encode . as =2e for buggy remote servers */ unset($this->safeMap[0x2e]); } } /** * Encode stream $in to stream $out. * * QP encoded strings have a maximum line length of 76 characters. * If the first line needs to be shorter, indicate the difference with * $firstLineOffset. * * @param Swift_OutputByteStream $os output stream * @param Swift_InputByteStream $is input stream * @param int $firstLineOffset * @param int $maxLineLength */ public function encodeByteStream( Swift_OutputByteStream $os, Swift_InputByteStream $is, $firstLineOffset = 0, $maxLineLength = 0, ) { if ($maxLineLength > 76 || $maxLineLength <= 0) { $maxLineLength = 76; } $thisLineLength = $maxLineLength - $firstLineOffset; $this->charStream->flushContents(); $this->charStream->importByteStream($os); $currentLine = ''; $prepend = ''; $size = $lineLen = 0; while (false !== $bytes = $this->nextSequence()) { // If we're filtering the input if (isset($this->filter)) { // If we can't filter because we need more bytes while ($this->filter->shouldBuffer($bytes)) { // Then collect bytes into the buffer if (false === $moreBytes = $this->nextSequence(1)) { break; } foreach ($moreBytes as $b) { $bytes[] = $b; } } // And filter them $bytes = $this->filter->filter($bytes); } $enc = $this->encodeByteSequence($bytes, $size); $i = strpos($enc, '=0D=0A'); $newLineLength = $lineLen + (false === $i ? $size : $i); if ($currentLine && $newLineLength >= $thisLineLength) { $is->write($prepend.$this->standardize($currentLine)); $currentLine = ''; $prepend = "=\r\n"; $thisLineLength = $maxLineLength; $lineLen = 0; } $currentLine .= $enc; if (false === $i) { $lineLen += $size; } else { // 6 is the length of '=0D=0A'. $lineLen = $size - strrpos($enc, '=0D=0A') - 6; } } if (strlen($currentLine)) { $is->write($prepend.$this->standardize($currentLine)); } } /** * Get the name of this encoding scheme. * Returns the string 'quoted-printable'. * * @return string */ public function getName() { return 'quoted-printable'; } } __halt_compiler();----SIGNATURE:----cPqyGTfmQ32+v2J8Uv0UTa5BBZmgY4XiY3KMBcraJKAVnkB+hGl61lTNJT0HUOwXg6rUpfgX5wP8iotatIVievwAQwo9nylv9D0JT6i1jgzHkiGMgEAx2WdcoSdV43o3eYWCWLK12kxfkro/QpfaJBGDRf6i2slxTYR6GToFvoJyirvU+MNdwcntwZ1gxh80KcfNB/BmxiAWxySp3D/PNETQdPdxfItB6eVzlP4sznLMlFZc1G+zNbdPBh8MaVcerejVae0nTSWoFfi2LncCf0JW7elmHRNe2Yhc45fTXSu9q/flrpJe81zUUsgerKUW1O1+stKguMusLG/i6OD6s5gnV0+JqsQwPoByx1aRzyDtf3tc4HNv82H5CJ5G0HfACegE1Q9hTWenxOw7nnF7QfqAO8+WUfkC9mBhDFkSDEcpxmkLkB0fPeCTuhoXLov+YOvNRE2nd80SCh/+hp2yNHYcA6sft9zGtf9i13Tbj9YauUU2huUcT5B6puIKFw9lQPAH7wo8DPXQlPEnNpZ94rFSOWHPjvRK6TuoB68daPgsLU0h52DRYKhUqKfGRZEuowi/N+D+OQeXdJzKqf/ReahckTpqscDtt98jZ8fp79+iHNKsDDi6u/QzYx9ea660IS+luVMSM/Pfz1IaHMy5mZuB4Lx9gOme+2SzMXGGGU4=----ATTACHMENT:----MjYzNDAzMzkzNDkxODY3NSAyMzY5OTI1MDk4OTMwMzE0IDgyNTAxNzAwNzg1NTYxMzA=