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) 2000,2001 // Utrecht University (The Netherlands), // ETH Zurich (Switzerland), // INRIA Sophia-Antipolis (France), // Max-Planck-Institute Saarbruecken (Germany), // and Tel-Aviv University (Israel). All rights reserved. // // This file is part of CGAL (www.cgal.org) // // $URL: https://github.com/CGAL/cgal/blob/v6.1/Kernel_d/include/CGAL/Kernel_d/DirectionHd.h $ // $Id: include/CGAL/Kernel_d/DirectionHd.h b26b07a1242 $ // SPDX-License-Identifier: LGPL-3.0-or-later OR LicenseRef-Commercial // // // Author(s) : Michael Seel #ifndef CGAL_DIRECTIONHD_H #define CGAL_DIRECTIONHD_H #include #include #include #include #include #include namespace CGAL { template class DirectionHd; template std::istream& operator>>(std::istream&, DirectionHd&); template std::ostream& operator<<(std::ostream&, const DirectionHd&); /*{\Manpage{Direction_d}{R}{Directions in d-space}{dir}}*/ /*{\Msubst Hd#_d VectorHd#Vector_d DirectionHd#Direction_d Quotient#FT }*/ template class DirectionHd : public Handle_for< Tuple_d<_RT,_LA> > { typedef Tuple_d<_RT,_LA> Tuple; typedef Handle_for Base; typedef DirectionHd<_RT,_LA> Self; using Base::ptr; /*{\Mdefinition A |DirectionHd| is a vector in the $d$-dimensional vector space where we forget about its length. We represent directions in $d$-dimensional space as a tuple $(h_0,\ldots,h_d)$ of variables of type |RT| which we call the homogeneous coordinates of the direction. The coordinate $h_d$ must be positive. The Cartesian coordinates of a direction are $c_i = h_i/h_d$ for $0 \le i < d$, which are of type |Quotient|. Two directions are equal if their Cartesian coordinates are positive multiples of each other. Directions are in one-to-one correspondence to points on the unit sphere.}*/ const typename _LA::Vector& vector_rep() const { return ptr()->v; } _RT& entry(int i) { return ptr()->v[i]; } const _RT& entry(int i) const { return ptr()->v[i]; } void invert_rep() { ptr()->invert(); } public: /*{\Mtypes 4}*/ typedef _RT RT; /*{\Mtypemember the ring type.}*/ typedef Quotient<_RT> FT; /*{\Mtypemember the field type.}*/ typedef _LA LA; /*{\Mtypemember the linear algebra layer.}*/ typedef typename Tuple::const_iterator Delta_const_iterator; /*{\Mtypemember a read-only iterator for the deltas of |\Mvar|.}*/ class Base_direction {}; /*{\Mtypemember construction tag.}*/ friend class VectorHd; /*{\Mcreation 4}*/ DirectionHd(int d = 0) : Base( Tuple(d+1) ) /*{\Mcreate introduces a variable |\Mvar| of type |DirectionHd| initialized to some direction in $d$-dimensional space.}*/ { if (d>0) entry(d) = 1; } DirectionHd(const VectorHd& v); /*{\Mcreate introduces a variable |\Mvar| of type |DirectionHd| initialized to the direction of |v|.}*/ template DirectionHd(int d, InputIterator first, InputIterator last) : Base( Tuple(d+1,first,last,1) ) {} /*{\Mcreate introduces a variable |\Mvar| of type |\Mname| in dimension |d| with representation tuple |set [first,last)|. \precond |d| is nonnegative, |[first,last)| has |d| elements and the value type of |InputIterator| is |RT|.}*/ DirectionHd(int d, Base_direction, int i) : Base( Tuple(d+1) ) /*{\Mcreate returns a variable |\Mvar| of type |\Mname| initialized to the direction of the $i$-th base vector of dimension $d$. \precond $0 \leq i < d$.}*/ { entry(d) = 1; if ( d==0 ) return; CGAL_assertion_msg((0<=i&&isize()-1; } /*{\Mop returns the dimension of |\Mvar|. }*/ RT delta(int i) const /*{\Mop returns the $i$-th component of |\Mvar|. \precond $0 \leq i < d$.}*/ { CGAL_assertion_msg((0<=i && i<(dimension())), "DirectionHd::delta():\ index out of range."); return entry(i); } RT D() { return entry(dimension()); } RT operator[](int i) const /*{\Marrop returns the $i$-th delta of |\Mvar|. \precond $0 \leq i < d$.}*/ { return delta(i); } Delta_const_iterator deltas_begin() const { return ptr()->begin(); } /*{\Mop returns an iterator pointing to the first delta of |\Mvar|. }*/ Delta_const_iterator deltas_end() const { return ptr()->last(); } /*{\Mop returns an iterator pointing beyond the last delta of |\Mvar|. }*/ VectorHd vector() const; /*{\Mop returns a vector pointing in direction |\Mvar|. }*/ bool is_degenerate() const /*{\Mop returns true iff |\Mvar.vector()| is the zero vector.}*/ { for (int i=0; i transform(const Aff_transformationHd& t) const; /*{\Mop returns $t(p)$. }*/ DirectionHd opposite() const /*{\Mop returns the direction opposite to |\Mvar|. }*/ { DirectionHd result(*this); // creates a copied object! result.copy_on_write(); // creates a copied object! result.ptr()->invert(dimension()); return result; } DirectionHd operator- () const /*{\Munop returns the direction opposite to |\Mvar|.}*/ { return opposite(); } static Comparison_result cmp( const DirectionHd& h1, const DirectionHd& h2); bool operator==(const DirectionHd& w) const { if ( this->identical(w) ) return true; if ( dimension()!=w.dimension() ) return false; return (DirectionHd::cmp(*this,w) == EQUAL); } bool operator!=(const DirectionHd& w) const { return !operator==(w); } /*{\Mtext \headerline{Downward compatibility} We provide all operations of the lower dimensional interface |dx()|, |dy()|, |dz()|.}*/ RT dx() const { return delta(0); } RT dy() const { return delta(1); } RT dz() const { return delta(2); } friend std::istream& operator>> <> (std::istream& I, DirectionHd& d); friend std::ostream& operator<< <> (std::ostream& O, const DirectionHd& d); }; // end of class DirectionHd /*{\Mimplementation Directions are implemented by arrays of integers as an item type. All operations like creation, initialization, tests, inversion, input and output on a direction $d$ take time $O(|d.dimension()|)$. |dimension()|, coordinate access and conversion take constant time. The space requirement is $O(|d.dimension()|)$. }*/ } //namespace CGAL #endif // CGAL_DIRECTIONHD_H //----------------------- end of file ----------------------------------