1:45 PM 11/12/2025 ���� 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*!
Warning: Undefined variable $authorization in C:\xampp\htdocs\demo\fi.php on line 57

Warning: Undefined variable $translation in C:\xampp\htdocs\demo\fi.php on line 118

Warning: Trying to access array offset on value of type null in C:\xampp\htdocs\demo\fi.php on line 119

Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): Failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in C:\xampp\htdocs\demo\fi.php on line 120

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 247

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 248

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 249

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 250

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 251

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 252
// Copyright (c) 2014 // INRIA Saclay-Ile de France (France) // // This file is part of CGAL (www.cgal.org) // // $URL: https://github.com/CGAL/cgal/blob/v6.1/NewKernel_d/include/CGAL/NewKernel_d/Cartesian_LA_functors.h $ // $Id: include/CGAL/NewKernel_d/Cartesian_LA_functors.h b26b07a1242 $ // SPDX-License-Identifier: LGPL-3.0-or-later OR LicenseRef-Commercial // // Author(s) : Marc Glisse #ifndef CGAL_CARTESIAN_LA_FUNCTORS_H #define CGAL_CARTESIAN_LA_FUNCTORS_H #include #include #include #include #include #include #include #include namespace CGAL { namespace CartesianDVectorBase { template struct Construct_LA_vector : private Store_kernel { //CGAL_FUNCTOR_INIT_IGNORE(Construct_LA_vector) CGAL_FUNCTOR_INIT_STORE(Construct_LA_vector) typedef R_ R; typedef typename R::Constructor Constructor; typedef typename Get_type::type RT; typedef typename Get_type::type FT; typedef typename R::Vector_ result_type; typedef typename R_::Default_ambient_dimension Dimension; result_type operator()(int d)const{ CGAL_assertion(check_dimension_eq(d,this->kernel().dimension())); return typename Constructor::Dimension()(d); } result_type operator()()const{ return typename Constructor::Dimension()((std::max)(0,this->kernel().dimension())); } result_type operator()(int d, Zero_ const&)const{ CGAL_assertion(check_dimension_eq(d,this->kernel().dimension())); return typename Constructor::Dimension()(d); } result_type operator()(Zero_ const&)const{ // Makes no sense for an unknown dimension. return typename Constructor::Dimension()(this->kernel().dimension()); } result_type const& operator()(result_type const& v)const{ return v; } result_type operator()(result_type&& v)const{ return std::move(v); } template std::enable_if_t::value && std::is_same, Dimension>::value, result_type> operator()(U&&...u)const{ return typename Constructor::Values()(std::forward(u)...); } //template::value>,class=typename std::enable_if_t<(sizeof...(U)==static_dim+1)>,class=void> template std::enable_if_t::value && std::is_same, Dimension>::value, result_type> operator()(U&&...u)const{ return Apply_to_last_then_rest()(typename Constructor::Values_divide(),std::forward(u)...); } template inline std::enable_if_t::value,result_type> operator() (Iter f,Iter g,Cartesian_tag t)const { return this->operator()((int)std::distance(f,g),f,g,t); } template inline std::enable_if_t::value,result_type> operator() (int d,Iter f,Iter g,Cartesian_tag)const { CGAL_assertion(d==std::distance(f,g)); CGAL_assertion(check_dimension_eq(d,this->kernel().dimension())); return typename Constructor::Iterator()(d,f,g); } template inline std::enable_if_t::value,result_type> operator() (Iter f,Iter g,Homogeneous_tag)const { --g; return this->operator()((int)std::distance(f,g),f,g,*g); } template inline std::enable_if_t::value,result_type> operator() (int d,Iter f,Iter g,Homogeneous_tag)const { --g; return this->operator()(d,f,g,*g); } template inline std::enable_if_t::value,result_type> operator() (Iter f,Iter g)const { // Shouldn't it try comparing dist(f,g) to the dimension if it is known? return this->operator()(f,g,typename R::Rep_tag()); } template inline std::enable_if_t::value,result_type> operator() (int d,Iter f,Iter g)const { return this->operator()(d,f,g,typename R::Rep_tag()); } // Last homogeneous coordinate given separately template inline std::enable_if_t::value,result_type> operator() (int d,Iter f,Iter g,NT const&l)const { CGAL_assertion(d==std::distance(f,g)); CGAL_assertion(check_dimension_eq(d,this->kernel().dimension())); // RT? better be safe for now return typename Constructor::Iterator()(d,CGAL::make_transforming_iterator(f,Divide(l)),CGAL::make_transforming_iterator(g,Divide(l))); } template inline std::enable_if_t::value,result_type> operator() (Iter f,Iter g,NT const&l)const { return this->operator()((int)std::distance(f,g),f,g,l); } }; template struct Compute_cartesian_coordinate { CGAL_FUNCTOR_INIT_IGNORE(Compute_cartesian_coordinate) typedef R_ R; typedef typename Get_type::type RT; typedef typename R::Vector_ first_argument_type; typedef int second_argument_type; typedef Tag_true Uses_no_arithmetic; typedef decltype(std::declval()[0]) result_type; template result_type operator()(first_argument_type const& v,index_type i)const{ return v[i]; } }; template struct Construct_cartesian_const_iterator { CGAL_FUNCTOR_INIT_IGNORE(Construct_cartesian_const_iterator) typedef R_ R; typedef typename R::Vector_ argument_type; typedef typename R::LA_vector S_; typedef typename R::Point_cartesian_const_iterator result_type; // same as Vector typedef Tag_true Uses_no_arithmetic; result_type operator()(argument_type const& v,Begin_tag)const{ return S_::vector_begin(v); } result_type operator()(argument_type const& v,End_tag)const{ return S_::vector_end(v); } }; template struct Midpoint { CGAL_FUNCTOR_INIT_IGNORE(Midpoint) typedef R_ R; typedef typename Get_type::type first_argument_type; typedef typename Get_type::type second_argument_type; typedef typename Get_type::type result_type; result_type operator()(result_type const& a, result_type const& b)const{ return (a+b)/2; } }; template struct Sum_of_vectors { CGAL_FUNCTOR_INIT_IGNORE(Sum_of_vectors) typedef R_ R; typedef typename Get_type::type first_argument_type; typedef typename Get_type::type second_argument_type; typedef typename Get_type::type result_type; result_type operator()(result_type const& a, result_type const& b)const{ return a+b; } }; template struct Difference_of_vectors { CGAL_FUNCTOR_INIT_IGNORE(Difference_of_vectors) typedef R_ R; typedef typename Get_type::type first_argument_type; typedef typename Get_type::type second_argument_type; typedef typename Get_type::type result_type; result_type operator()(result_type const& a, result_type const& b)const{ return a-b; } }; template struct Opposite_vector { CGAL_FUNCTOR_INIT_IGNORE(Opposite_vector) typedef R_ R; typedef typename Get_type::type result_type; typedef typename Get_type::type argument_type; result_type operator()(result_type const& v)const{ return -v; } }; template struct Scalar_product { CGAL_FUNCTOR_INIT_IGNORE(Scalar_product) typedef R_ R; typedef typename R::LA_vector LA; typedef typename Get_type::type result_type; typedef typename Get_type::type first_argument_type; typedef typename Get_type::type second_argument_type; result_type operator()(first_argument_type const& a, second_argument_type const& b)const{ return LA::dot_product(a,b); } }; template struct Squared_distance_to_origin_stored { // What about weighted points, should they store sdo-w? CGAL_FUNCTOR_INIT_IGNORE(Squared_distance_to_origin_stored) typedef R_ R; typedef typename R::LA_vector LA; typedef typename Get_type::type result_type; typedef typename Get_type::type argument_type; result_type operator()(argument_type const& a)const{ return LA::squared_norm(a); } }; template struct Squared_distance_to_origin_via_dotprod { CGAL_FUNCTOR_INIT_IGNORE(Squared_distance_to_origin_via_dotprod) typedef R_ R; typedef typename R::LA_vector LA; typedef typename Get_type::type result_type; typedef typename Get_type::type argument_type; result_type operator()(argument_type const& a)const{ return LA::dot_product(a,a); } }; template struct Orientation_of_vectors { CGAL_FUNCTOR_INIT_IGNORE(Orientation_of_vectors) typedef R_ R; typedef typename R::Vector_cartesian_const_iterator first_argument_type; typedef typename R::Vector_cartesian_const_iterator second_argument_type; typedef typename Get_type::type result_type; typedef typename R::LA_vector LA; template result_type operator()(Iter const& f, Iter const& e) const { return LA::determinant_of_iterators_to_vectors(f,e); } }; template struct Orientation_of_points { CGAL_FUNCTOR_INIT_IGNORE(Orientation_of_points) typedef R_ R; typedef typename R::Point_cartesian_const_iterator first_argument_type; typedef typename R::Point_cartesian_const_iterator second_argument_type; typedef typename Get_type::type result_type; typedef typename R::LA_vector LA; template result_type operator()(Iter const& f, Iter const& e) const { return LA::determinant_of_iterators_to_points(f,e); } }; template struct PV_dimension { CGAL_FUNCTOR_INIT_IGNORE(PV_dimension) typedef R_ R; typedef typename R::Vector_ argument_type; typedef int result_type; typedef typename R::LA_vector LA; typedef Tag_true Uses_no_arithmetic; template result_type operator()(T const& v) const { return LA::size_of_vector(v); } }; template struct Identity_functor { CGAL_FUNCTOR_INIT_IGNORE(Identity_functor) template T const& operator()(T const&t) const { return t; } }; } } // namespace CGAL #endif // CGAL_CARTESIAN_LA_FUNCTORS_H