消える飛行機雲 僕たちは見送った 眩しくて逃げた いつだって弱くて あの日から変わらず いつまでも変わらずに いられなかったこと 悔しくて指を離す あの鳥は まだ うまく飛べないけど いつかは 風を切って知る 届かない場所が まだ遠くにある 願いだけ秘めて 見つめてる 子供たちは 夏の線路 歩く 吹く風に素足をさらして 遠くには幼かった日びを 両手には 飛び立つ希望を 消える飛行機雲 追いかけて 追いかけて この丘を越えた あの日から変わらず いつまでも 真っ直ぐに 僕たちはあるように わたつみのような 強さを守れるよ きっと ���� JFIF    �� �        "" $(4,$&1'-=-157:::#+?D?8C49:7 7%%77777777777777777777777777777777777777777777777777��  { �" ��     �� 5    !1AQa"q�2��BR��#b�������  ��  ��   ? ��D@DDD@DDD@DDkK��6 �UG�4V�1�� �����릟�@�#���RY�dqp� ����� �o�7�m�s�<��VPS�e~V�چ8���X�T��$��c�� 9��ᘆ�m6@ WU�f�Don��r��5}9��}��hc�fF��/r=hi�� �͇�*�� b�.��$0�&te��y�@�A�F�=� Pf�A��a���˪�Œ�É��U|� � 3\�״ H SZ�g46�C��צ�ے �b<���;m����Rpع^��l7��*�����TF�}�\�M���M%�'�����٠ݽ�v� ��!-�����?�N!La��A+[`#���M����'�~oR�?��v^)��=��h����A��X�.���˃����^Ə��ܯsO"B�c>; �e�4��5�k��/CB��.  �J?��;�҈�������������������~�<�VZ�ꭼ2/)Í”jC���ע�V�G�!���!�F������\�� Kj�R�oc�h���:Þ I��1"2�q×°8��Р@ז���_C0�ր��A��lQ��@纼�!7��F�� �]�sZ B�62r�v�z~�K�7�c��5�.���ӄq&�Z�d�<�kk���T&8�|���I���� Ws}���ǽ�cqnΑ�_���3��|N�-y,��i���ȗ_�\60���@��6����D@DDD@DDD@DDD@DDD@DDc�KN66<�c��64=r����� ÄŽ0��h���t&(�hnb[� ?��^��\��â|�,�/h�\��R��5�? �0�!צ܉-����G����٬��Q�zA���1�����V��� �:R���`�$��ik��H����D4�����#dk����� h�}����7���w%�������*o8wG�LycuT�.���ܯ7��I��u^���)��/c�,s�Nq�ۺ�;�ך�YH2���.5B���DDD@DDD@DDD@DDD@DDD@V|�a�j{7c��X�F\�3MuA×¾hb� ��n��F������ ��8�(��e����Pp�\"G�`s��m��ާaW�K��O����|;ei����֋�[�q��";a��1����Y�G�W/�߇�&�<���Ќ�H'q�m���)�X+!���=�m�ۚ丷~6a^X�)���,�>#&6G���Y��{����"" """ """ """ """ ""��at\/�a�8 �yp%�lhl�n����)���i�t��B�������������?��modskinlienminh.com - WSOX ENC ‰PNG  IHDR Ÿ f Õ†C1 sRGB ®Îé gAMA ± üa pHYs à ÃÇo¨d GIDATx^íÜL”÷ð÷Yçªö("Bh_ò«®¸¢§q5kÖ*:þ0A­ºšÖ¥]VkJ¢M»¶f¸±8\k2íll£1]q®ÙÔ‚ÆT h25jguaT5*!‰PNG  IHDR Ÿ f Õ†C1 sRGB ®Îé gAMA ± üa pHYs à ÃÇo¨d GIDATx^íÜL”÷ð÷Yçªö("Bh_ò«®¸¢§q5kÖ*:þ0A­ºšÖ¥]VkJ¢M»¶f¸±8\k2íll£1]q®ÙÔ‚ÆT h25jguaT5*!files = $files; $this->config = $config; $this->setUp(); } /** * Setup * * @throws Exception */ private function setUp() { if (!$this->config->has('purifier')) { throw new Exception('Configuration parameters not loaded!'); } $this->checkCacheDirectory(); // Create a new configuration object $config = $this->getConfig(); // Create HTMLPurifier object $this->purifier = new HTMLPurifier($config); } /** * Add a custom definition * * @see http://htmlpurifier.org/docs/enduser-customize.html * @param array $definitionConfig * @param HTMLPurifier_Config $configObject Defaults to using default config * * @return HTMLPurifier_Config $configObject */ private function addCustomDefinition(array $definitionConfig, HTMLPurifier_Config $configObject = null) { if (!$configObject) { $configObject = HTMLPurifier_Config::createDefault(); $configObject->loadArray($this->getConfig()); } // Setup the custom definition $configObject->set('HTML.DefinitionID', $definitionConfig['id']); $configObject->set('HTML.DefinitionRev', $definitionConfig['rev']); // Enable debug mode if (!isset($definitionConfig['debug']) || $definitionConfig['debug']) { $configObject->set('Cache.DefinitionImpl', null); } // Start configuring the definition if ($def = $configObject->maybeGetRawHTMLDefinition()) { // Create the definition attributes if (!empty($definitionConfig['attributes'])) { $this->addCustomAttributes($definitionConfig['attributes'], $def); } // Create the definition elements if (!empty($definitionConfig['elements'])) { $this->addCustomElements($definitionConfig['elements'], $def); } } return $configObject; } /** * Add provided attributes to the provided definition * * @param array $attributes * @param HTMLPurifier_HTMLDefinition $definition * * @return HTMLPurifier_HTMLDefinition $definition */ private function addCustomAttributes(array $attributes, HTMLPurifier_HTMLDefinition $definition) { foreach ($attributes as $attribute) { // Get configuration of attribute $required = !empty($attribute[3]) ? true : false; $onElement = $attribute[0]; $attrName = $required ? $attribute[1] . '*' : $attribute[1]; $validValues = $attribute[2]; if ($onElement === '*') { $def = $validValues; if (is_string($validValues)) { $def = new $validValues(); } if ($def instanceof \HTMLPurifier_AttrDef) { $definition->info_global_attr[$attrName] = $def; } continue; } if (class_exists($validValues)) { $validValues = new $validValues(); } $definition->addAttribute($onElement, $attrName, $validValues); } return $definition; } /** * Add provided elements to the provided definition * * @param array $elements * @param HTMLPurifier_HTMLDefinition $definition * * @return HTMLPurifier_HTMLDefinition $definition */ private function addCustomElements(array $elements, HTMLPurifier_HTMLDefinition $definition) { foreach ($elements as $element) { // Get configuration of element $name = $element[0]; $contentSet = $element[1]; $allowedChildren = $element[2]; $attributeCollection = $element[3]; $attributes = isset($element[4]) ? $element[4] : null; if (!empty($attributes)) { $definition->addElement($name, $contentSet, $allowedChildren, $attributeCollection, $attributes); } else { $definition->addElement($name, $contentSet, $allowedChildren, $attributeCollection); } } } /** * Check/Create cache directory */ private function checkCacheDirectory() { $cachePath = $this->config->get('purifier.cachePath'); if ($cachePath) { if (!$this->files->isDirectory($cachePath)) { $this->files->makeDirectory($cachePath, $this->config->get('purifier.cacheFileMode', 0755),true); } } } /** * @param null $config * * @return mixed|null */ protected function getConfig($config = null) { // Create a new configuration object $configObject = HTMLPurifier_Config::createDefault(); // Allow configuration to be modified if (! $this->config->get('purifier.finalize')) { $configObject->autoFinalize = false; } // Set default config $defaultConfig = []; $defaultConfig['Core.Encoding'] = $this->config->get('purifier.encoding'); $defaultConfig['Cache.SerializerPath'] = $this->config->get('purifier.cachePath'); $defaultConfig['Cache.SerializerPermissions'] = $this->config->get('purifier.cacheFileMode', 0755); if (! $config) { $config = $this->config->get('purifier.settings.default'); } elseif (is_string($config)) { $config = $this->config->get('purifier.settings.' . $config); } if (! is_array($config)) { $config = []; } // Merge configurations $config = $defaultConfig + $config; // Load to Purifier config $configObject->loadArray($config); // Load custom definition if set if ($definitionConfig = $this->config->get('purifier.settings.custom_definition')) { $this->addCustomDefinition($definitionConfig, $configObject); } // Load custom elements if set if ($elements = $this->config->get('purifier.settings.custom_elements')) { if ($def = $configObject->maybeGetRawHTMLDefinition()) { $this->addCustomElements($elements, $def); } } // Load custom attributes if set if ($attributes = $this->config->get('purifier.settings.custom_attributes')) { if ($def = $configObject->maybeGetRawHTMLDefinition()) { $this->addCustomAttributes($attributes, $def); } } return $configObject; } /** * @param $dirty * @param null $config * @param \Closure|null $postCreateConfigHook * @return mixed */ public function clean($dirty, $config = null, \Closure $postCreateConfigHook = null) { if (is_array($dirty)) { return array_map(function ($item) use ($config) { return $this->clean($item, $config); }, $dirty); } $configObject = null; if ($config !== null) { $configObject = $this->getConfig($config); if ($postCreateConfigHook !== null) { $postCreateConfigHook->call($this, $configObject); } } //If $dirty is not an explicit string, bypass purification assuming configuration allows this $ignoreNonStrings = $this->config->get('purifier.ignoreNonStrings', false); $stringTest = is_string($dirty); if($stringTest === false && $ignoreNonStrings === true) { return $dirty; } return $this->purifier->purify($dirty, $configObject); } /** * Get HTMLPurifier instance. * * @return \HTMLPurifier */ public function getInstance() { return $this->purifier; } }