JFIF     ( %"1!%)+...383,7(-.+  -+++--++++---+-+-----+---------------+---+-++7-----  "       H    !1AQaq" 2B #R Tbr 3cs DS $C    %  !1AQa"23   ? p  Y  \?  p  Y  \?  0  [  i~T bq 8O p O O ` R i  < Ft I  8 Df  }  6  F y j h / : c "Y l> te:q \o e 󲍷 HT4& 6   7 i j|  >b  S?*  *h r U S炟[A a [   & j? +EzP We rJFt B  χ%#tE z O۫!1 ͏ % ] ( :@<  t + % Á h O J tM  >  w3Y 牋4Ǎ  T > = why ,  a ѪQ|%6  A %: j<>ɗ _ Cb  ݃|R c f溪 t.С T *Ŀ -{  czů _ ^X  miB[X d 1,  zE & 9g f 9 '.; i}! q ٤ё A   e"A$˝ s # x (l 3  5m! rt` 0~'j2 (]S kv, l JA J3E8 i :cɞ eZ \ k (79 : X & * . ( 2 Hi TF  [ R 䢍mg .  < S0  U f#V ;Ֆ P@3 o< - .L|k f 6@ eu | a Ɵ  >  ?cK 6 T Ɣ  sĤ ;H2 Rچ \ַ n' # I  % 7 qT 3I  5I7 ! O  $Tc [ ֳ ';A g A 2Z"i vd  .i ) ] & {V i .  ?h Mt  [ V( }=ibԡ b L􁥇piη_Z< z )i wi 2h 3 = d 8 1 c 7 7 \ ) } f pA L% c2  Qz ;T8s  q )QFM X ±N aF 8 !U  Z R PV in -G  ˊ z } F }Uw # 5B { } < D  &  Db M ."  * 'V | gll klz[ A b E dѻXx9 ܣ T/` vI ݵ ˂ G *  r|*}<  @ mĒM  . Y |6 U j qO kD 5 ;   G k \  = =S  S  p Qű ? 1ѕ Z ?h L l{Y*K ٛzc + - k % E A'} >< I bp /q voX w,\ 6Z[Xd @֗ $ J # >' <)4 ry٣| A n5 y  M 2{"}  l WX\l g O / B f [.P Zs * T܈ QN V ( *eՓ 5T F D [8'ҥa ڶk7a * 'ҷ\8 \@\  q+D r m΅_ 滊Ӝ R 9M D l lffc+ ,  Ǥ=Œ 7 /  + ,u M bm: P { Gz[ KH ` ؊  P8Aq.C  k pj k N q , N - {Z 44 s V R m" 6? D9 T  ꋇ`4 orqК Z x4 u f [P ,Q aX `P Z Y g A x 6L x  * Q  ϒ h = ,6 #r < , ꕀ a s '% " B H 3߰ $ Xn ֒ 2 Te x K { t Ϋ j Z[ 7L 4V CE ]m y 4-dz   x.*  b h: s`BT R g⻩ j sF J Fl ȕXᓁ ~*j +( 6- G y <ǒ . F H w(+) z T Fߘ ;DmV 3 u@m  X 3B   <· z, @ ŷd2] 8s I ޯ^ 9 u ~ A  4 M? K]  Pl@s_ p: ZR JC[CS.h ˜ ]  wR k7X k   =  ') 71 c ` .{ p j\ {1h{o  = U G֌ -B m+AZX H Jm ; 䡟   i g $ Mk5 L v ,=f "  5 x6{ɏ ID0e v mi'  9$ *£ 9 Tԅ >JV } }$p[bԮ*[jzS*8 T ͖ U wo$ =LT ~  $榍q + kFm) i qފ ( #5  ﯅ X *F#TXJ u JV &=i s1 3 'f  5 <=[ ޭ P ;  _~ģ 8r w; hDT > G 8 z  q ZcqJ - [ܘbň b 31 n i ;1 X , q $>  Z Z 1{  + յ T$ K] * tMI Zb iҘ}b 0 5 [5 ^ݜW h OWun 5 a2Z.G2 YL]j t   ӑ%" <  s UZv i M . V #k i ̖ ) T[)B xB B T . ~ @VĶr# * ZND H; i ], p ( T.uC 4@ G ) Cx 0 #: F bR\(  f 4މF HX , E ] v ?tL vBY 6 u5 AQ 1 x H Ї ^ KwJ ֎5 C  vܫ/B0$ k = b ( )w A 11 = Q 626 /`G <} - 7KEH  Ȥmݱ  Snm = 䫚mݱ ~ U J  B|E L y jD $G 7 R8 ҅Ǜ WVe# p Fx~ ݤF 0 K S<6 WШ; ʐ \ u  ݖVN k 7o X F  g M~ =p,X ŋ j . q Q ZE =6 ]  s >v ^ \wq9r \ kUR $ * Nq?Þ *!s :TU_u T+ X , BTs $؛4m椴z K] P @ # `  =I fiV  nRm+ FPOh 0B  + 5c v :P' y V~ ӆ u kDoh$ \* %Ю= aȼ .- V 'ly 1 3 # E S gV m = \ " WU Ǽ n G  N D õN ;H y ȩP {:?R Ԩ F  b JS | R iv 賴Iئ T! ت @q wn CW @JU m6] : x' + XvӦ m= 7 $ B ~ p%՟U N@  ~w 5  ' e 5 // ~ T  7 # p $ e * ӊE WE s g v SsLp W EW  H; !CY Z f #1W. \uW \,\ f j <qTb n [vxx  ' 1  M P H)  A7s,| F  k 9  * ; ! $Ei   S $ N z 5r D ! &@m ^ d q5Ln N;.6 N|# "1N x <3('& t ~ u 1Tb㫨9ꖛ b d$ߣ=#  mU e $EF 5ýY   Ǘ ssM] 0 JRӪ i +O58  x" \  i i M+M 9 A Q K~ Ñg ִ~ [3GU ҽ# k ԮҔ dWV IP 8u E  qLj  CB {A^ ; ` ˼ t  .tƐm*n y4o& x n aup j8 m !o ; 0y^ ^Eѿ jz )v nÄL ^  3k h ]i *  C j j zn  #b'F v ' 'T H %M & nj 1 i s R-  k  7: 0 /a٬ #  aiVc . 㵔 Yg f 7 h᷸ }&D9 s C bFC| ( -% 'a ̿)  n ގX 4 H^ Α @ Eh L8 j V R 5u V4lZ  = x    __yM1t ?u Ik g @ [ X J j :nkŢu } Gz /I 芬 48q F R = { R icS ۠ Nt £,w4r 쮻~x( U  # & դ>  9  {9eV [ j u] 2 qњ J 0 sÄ|  0튔b > { _F`ة :  ,v fc1 " n1#= v~H A  ܀Ӛ] ; I  Qi  9yw KG zQY Z07 X h; M)i CH- T |A0{  LږT  kܒd  rmm جPF cbE T x  K Ӯ7 (\4 øUu@j yĵ; ! b.W =m  K k K^ #p* 14qkZ 5  5 % <   ԥ C մ $ ֓ ]٬q [4 ! ϗ b쳐X A ~` r 8   < > ?xs / ;   {"@ z [ ߂ U_<ǟ 4 N 61 q u F J_  ~ A ݄ϗr D;xT `ɫ su O`? L # c5 o ؂y ZR <&J + i! 0 Ao L -2 W. t^ (K mH V@x  y  ^: 3w 7 ⹮:', M n + b Lȑ nR  % Q: f "P t  c l & ژ kv + v ,= v 6 Xy* t < : a ϲ= 6rO]XI zڭ 6 w\d ~v k ^m< \) ; l E cѾ@vnM ,  Bx  z %3 "}ٕ > B ; ]V+P F_ > ؚe| OmF  q $/x x z` 9 "  ij !7.\Td 9M i 50ގn 4 O * ^ Q 8=  s ' ٫ %P [O P V s . ,kc A9n X -ޚN[" QՉ M  XJ aLj m ڠu Q  / Ux: ܒ Đ 3V n 6 * K c U hs j j#, m R lb UT 8 0 r` Ї " 6 f oܱԷ-< ) a 'ڻ TXq Y Hy 9 IW Y uMF ϒAq 4 / 'i$ = | K 4 0 | 6p 0 )o ct H+CA- x | X l8  3 :  KX U /* Copyright (C) 1991-2018 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, see . */ /* * POSIX Standard: 6.5 File Control Operations */ #ifndef _FCNTL_H #define _FCNTL_H 1 #include /* This must be early so can define types winningly. */ __BEGIN_DECLS /* Get __mode_t, __dev_t and __off_t .*/ #include /* Get the definitions of O_*, F_*, FD_*: all the numbers and flag bits for `open', `fcntl', et al. */ #include /* Detect if open needs mode as a third argument (or for openat as a fourth argument). */ #ifdef __O_TMPFILE # define __OPEN_NEEDS_MODE(oflag) \ (((oflag) & O_CREAT) != 0 || ((oflag) & __O_TMPFILE) == __O_TMPFILE) #else # define __OPEN_NEEDS_MODE(oflag) (((oflag) & O_CREAT) != 0) #endif /* POSIX.1-2001 specifies that these types are defined by . Earlier POSIX standards permitted any type ending in `_t' to be defined by any POSIX header, so we don't conditionalize the definitions here. */ #ifndef __mode_t_defined typedef __mode_t mode_t; # define __mode_t_defined #endif #ifndef __off_t_defined # ifndef __USE_FILE_OFFSET64 typedef __off_t off_t; # else typedef __off64_t off_t; # endif # define __off_t_defined #endif #if defined __USE_LARGEFILE64 && !defined __off64_t_defined typedef __off64_t off64_t; # define __off64_t_defined #endif #ifndef __pid_t_defined typedef __pid_t pid_t; # define __pid_t_defined #endif /* For XPG all symbols from should also be available. */ #ifdef __USE_XOPEN2K8 # include #endif #if defined __USE_XOPEN || defined __USE_XOPEN2K8 # include # define S_IFMT __S_IFMT # define S_IFDIR __S_IFDIR # define S_IFCHR __S_IFCHR # define S_IFBLK __S_IFBLK # define S_IFREG __S_IFREG # ifdef __S_IFIFO # define S_IFIFO __S_IFIFO # endif # ifdef __S_IFLNK # define S_IFLNK __S_IFLNK # endif # if (defined __USE_UNIX98 || defined __USE_XOPEN2K8) && defined __S_IFSOCK # define S_IFSOCK __S_IFSOCK # endif /* Protection bits. */ # define S_ISUID __S_ISUID /* Set user ID on execution. */ # define S_ISGID __S_ISGID /* Set group ID on execution. */ # if defined __USE_MISC || defined __USE_XOPEN /* Save swapped text after use (sticky bit). This is pretty well obsolete. */ # define S_ISVTX __S_ISVTX # endif # define S_IRUSR __S_IREAD /* Read by owner. */ # define S_IWUSR __S_IWRITE /* Write by owner. */ # define S_IXUSR __S_IEXEC /* Execute by owner. */ /* Read, write, and execute by owner. */ # define S_IRWXU (__S_IREAD|__S_IWRITE|__S_IEXEC) # define S_IRGRP (S_IRUSR >> 3) /* Read by group. */ # define S_IWGRP (S_IWUSR >> 3) /* Write by group. */ # define S_IXGRP (S_IXUSR >> 3) /* Execute by group. */ /* Read, write, and execute by group. */ # define S_IRWXG (S_IRWXU >> 3) # define S_IROTH (S_IRGRP >> 3) /* Read by others. */ # define S_IWOTH (S_IWGRP >> 3) /* Write by others. */ # define S_IXOTH (S_IXGRP >> 3) /* Execute by others. */ /* Read, write, and execute by others. */ # define S_IRWXO (S_IRWXG >> 3) #endif #ifdef __USE_MISC # ifndef R_OK /* Verbatim from . Ugh. */ /* Values for the second argument to access. These may be OR'd together. */ # define R_OK 4 /* Test for read permission. */ # define W_OK 2 /* Test for write permission. */ # define X_OK 1 /* Test for execute permission. */ # define F_OK 0 /* Test for existence. */ # endif #endif /* Use misc. */ /* XPG wants the following symbols. has the same definitions. */ #if defined __USE_XOPEN || defined __USE_XOPEN2K8 # define SEEK_SET 0 /* Seek from beginning of file. */ # define SEEK_CUR 1 /* Seek from current position. */ # define SEEK_END 2 /* Seek from end of file. */ #endif /* XPG */ /* The constants AT_REMOVEDIR and AT_EACCESS have the same value. AT_EACCESS is meaningful only to faccessat, while AT_REMOVEDIR is meaningful only to unlinkat. The two functions do completely different things and therefore, the flags can be allowed to overlap. For example, passing AT_REMOVEDIR to faccessat would be undefined behavior and thus treating it equivalent to AT_EACCESS is valid undefined behavior. */ #ifdef __USE_ATFILE # define AT_FDCWD -100 /* Special value used to indicate the *at functions should use the current working directory. */ # define AT_SYMLINK_NOFOLLOW 0x100 /* Do not follow symbolic links. */ # define AT_REMOVEDIR 0x200 /* Remove directory instead of unlinking file. */ # define AT_SYMLINK_FOLLOW 0x400 /* Follow symbolic links. */ # ifdef __USE_GNU # define AT_NO_AUTOMOUNT 0x800 /* Suppress terminal automount traversal. */ # define AT_EMPTY_PATH 0x1000 /* Allow empty relative pathname. */ # define AT_STATX_SYNC_TYPE 0x6000 # define AT_STATX_SYNC_AS_STAT 0x0000 # define AT_STATX_FORCE_SYNC 0x2000 # define AT_STATX_DONT_SYNC 0x4000 # endif # define AT_EACCESS 0x200 /* Test access permitted for effective IDs, not real IDs. */ #endif /* Do the file control operation described by CMD on FD. The remaining arguments are interpreted depending on CMD. This function is a cancellation point and therefore not marked with __THROW. */ #ifndef __USE_FILE_OFFSET64 extern int fcntl (int __fd, int __cmd, ...); #else # ifdef __REDIRECT extern int __REDIRECT (fcntl, (int __fd, int __cmd, ...), fcntl64); # else # define fcntl fcntl64 # endif #endif #ifdef __USE_LARGEFILE64 extern int fcntl64 (int __fd, int __cmd, ...); #endif /* Open FILE and return a new file descriptor for it, or -1 on error. OFLAG determines the type of access used. If O_CREAT or O_TMPFILE is set in OFLAG, the third argument is taken as a `mode_t', the mode of the created file. This function is a cancellation point and therefore not marked with __THROW. */ #ifndef __USE_FILE_OFFSET64 extern int open (const char *__file, int __oflag, ...) __nonnull ((1)); #else # ifdef __REDIRECT extern int __REDIRECT (open, (const char *__file, int __oflag, ...), open64) __nonnull ((1)); # else # define open open64 # endif #endif #ifdef __USE_LARGEFILE64 extern int open64 (const char *__file, int __oflag, ...) __nonnull ((1)); #endif #ifdef __USE_ATFILE /* Similar to `open' but a relative path name is interpreted relative to the directory for which FD is a descriptor. NOTE: some other `openat' implementation support additional functionality through this interface, especially using the O_XATTR flag. This is not yet supported here. This function is a cancellation point and therefore not marked with __THROW. */ # ifndef __USE_FILE_OFFSET64 extern int openat (int __fd, const char *__file, int __oflag, ...) __nonnull ((2)); # else # ifdef __REDIRECT extern int __REDIRECT (openat, (int __fd, const char *__file, int __oflag, ...), openat64) __nonnull ((2)); # else # define openat openat64 # endif # endif # ifdef __USE_LARGEFILE64 extern int openat64 (int __fd, const char *__file, int __oflag, ...) __nonnull ((2)); # endif #endif /* Create and open FILE, with mode MODE. This takes an `int' MODE argument because that is what `mode_t' will be widened to. This function is a cancellation point and therefore not marked with __THROW. */ #ifndef __USE_FILE_OFFSET64 extern int creat (const char *__file, mode_t __mode) __nonnull ((1)); #else # ifdef __REDIRECT extern int __REDIRECT (creat, (const char *__file, mode_t __mode), creat64) __nonnull ((1)); # else # define creat creat64 # endif #endif #ifdef __USE_LARGEFILE64 extern int creat64 (const char *__file, mode_t __mode) __nonnull ((1)); #endif #if !defined F_LOCK && (defined __USE_MISC || (defined __USE_XOPEN_EXTENDED \ && !defined __USE_POSIX)) /* NOTE: These declarations also appear in ; be sure to keep both files consistent. Some systems have them there and some here, and some software depends on the macros being defined without including both. */ /* `lockf' is a simpler interface to the locking facilities of `fcntl'. LEN is always relative to the current file position. The CMD argument is one of the following. */ # define F_ULOCK 0 /* Unlock a previously locked region. */ # define F_LOCK 1 /* Lock a region for exclusive use. */ # define F_TLOCK 2 /* Test and lock a region for exclusive use. */ # define F_TEST 3 /* Test a region for other processes locks. */ # ifndef __USE_FILE_OFFSET64 extern int lockf (int __fd, int __cmd, off_t __len); # else # ifdef __REDIRECT extern int __REDIRECT (lockf, (int __fd, int __cmd, __off64_t __len), lockf64); # else # define lockf lockf64 # endif # endif # ifdef __USE_LARGEFILE64 extern int lockf64 (int __fd, int __cmd, off64_t __len); # endif #endif #ifdef __USE_XOPEN2K /* Advice the system about the expected behaviour of the application with respect to the file associated with FD. */ # ifndef __USE_FILE_OFFSET64 extern int posix_fadvise (int __fd, off_t __offset, off_t __len, int __advise) __THROW; # else # ifdef __REDIRECT_NTH extern int __REDIRECT_NTH (posix_fadvise, (int __fd, __off64_t __offset, __off64_t __len, int __advise), posix_fadvise64); # else # define posix_fadvise posix_fadvise64 # endif # endif # ifdef __USE_LARGEFILE64 extern int posix_fadvise64 (int __fd, off64_t __offset, off64_t __len, int __advise) __THROW; # endif /* Reserve storage for the data of the file associated with FD. This function is a possible cancellation point and therefore not marked with __THROW. */ # ifndef __USE_FILE_OFFSET64 extern int posix_fallocate (int __fd, off_t __offset, off_t __len); # else # ifdef __REDIRECT extern int __REDIRECT (posix_fallocate, (int __fd, __off64_t __offset, __off64_t __len), posix_fallocate64); # else # define posix_fallocate posix_fallocate64 # endif # endif # ifdef __USE_LARGEFILE64 extern int posix_fallocate64 (int __fd, off64_t __offset, off64_t __len); # endif #endif /* Define some inlines helping to catch common problems. */ #if __USE_FORTIFY_LEVEL > 0 && defined __fortify_function \ && defined __va_arg_pack_len # include #endif __END_DECLS #endif /* fcntl.h */